2016年11月、セキュリティ研究者のSamy KamkarはPoisonTapを公開した。5ドルのRaspberry Pi Zero上で動く無償ソフトウェアで、ロックされたMacやPCに約30秒接続するだけで、そのマシンのWebトラフィックと認証Cookieを傍受し、さらにデバイスが取り外された後もブラウザとローカルネットワークを遠隔操作し続けられるバックドアを仕込む。「主な動機は、WPA2 Wi-Fiで動作するパスワード保護されたコンピュータであっても、システムとネットワークが迅速かつ容易に攻撃され得ることを示すことです」と彼はArsに語った。

この連鎖は標準的な便利機能だけを利用する。Piはイーサネットカードを装い、DHCPでアドレスを配布することでゲートウェイになる。ローカルネットワークをIPv4空間全体と定義することで、すべてのインターネットトラフィックのゲートウェイにもなる。バックグラウンドのブラウザを見つけ、Alexaの上位100万サイトを指す隠しiframeを注入し、各サイトのHTTPサーバーを装って返ってくるCookieを収集する。キャッシュに植え付けたコードはスティックを抜いた後も持続的なWebSocketを維持し、DNSリバインディング攻撃により接続されたルーターへの管理アクセスを可能にする。

この記事が挙げる防御策は行動ではなく構造に関するものだ。HSTSと適切に保護されたCookieはCookieの収集を防ぐ——だからこそGoogleやFacebookのページはトリガーできなかった——一方、多要素認証はほとんど役に立たない。Cookieベースのログインでは再トリガーされないからだ。エンドユーザーはロック前にブラウザを閉じ、FileVault2を有効にしてMacをスリープさせ、あるいはキャッシュを消去できる。最も安全な習慣は、単にマシンを持ち歩くことだ。

PoisonTapはKamkarの安価で公開されたハックの系譜に連なる。キーストロークを収集する10ドルのUSB充電器、電子的にロックされた車やガレージを開ける30ドルのデバイス、Google Street View上に構築したDIYストーカーアプリなどだ。彼はソースコードとデモ動画を公開し、Ars Technicaはこのパターンを、ますますコンピュータ化する世界のセキュリティ上のトレードオフに関する常設の警告として位置づけた。

ロック画面が守るのはログインプロンプトであってネットワークスタックではない。USBイーサネットゲートウェイを装い、IPv4インターネット全体を「ローカル」と呼べば、Cookieは向こうからやってくる。

ゼロデイは不要だ。USBネットワーキング、DHCP、寛容な「ローカル」範囲、キャッシュの永続化はいずれも普通の便利機能であり、正しい順序で連鎖させただけだ。

信頼境界を移し替えた。ログインプロンプトは決して本当の攻撃面ではなく、ネットワークスタックとバックグラウンドのブラウザこそが攻撃面だった。

5ドルという価格で、国家アクターの空想と見なされていた攻撃を民主化し、防御の議論をユーザーの習慣からプロトコルレベルの保証へと移した。

ハードウェアに一度触れられれば、パスワードの強度は無関係だ。保証はプロトコル層に置くべきだ——HSTS、Secure Cookie——なぜなら「画面をロックせよ」といった行動ルールは5ドルのデバイスには通用しないからだ。

Kamkarは完全なソースコードとデモ動画を公開し、5ドルのボードを持つ誰もがこの連鎖を再現できるようにした。記事は、このエクスプロイトがHSTSとSecure Cookieを適切に運用するサイト——GoogleやFacebookを含む——に対してはすでに失敗していたことを指摘し、業界がHTTPS-everywhereのデフォルトへ移行する途上のスナップショットを示した。その実践的助言は、真に偏執的な選択肢で締めくくられた。ノートPCを持ち歩くか、マシンの電源を完全に切るかだ。

出典をたどる

出典

  1. Meet PoisonTap, the $5 tool that ransacks password-protected computers Ars Technica · arstechnica.com ·