“All your layer are belong to us” 君達の「階層」は全て我々が戴いた ローグ 802.11 AP、DHCP/DNSサーバ、偽装サービスの罠
議題 Windows XP ワイヤレス 自動構成(WZCSVC) ワイヤレス・クライアント攻撃ツール 完全なSSIDネットワークを構築する (L1) バーチャルネットワークを構築する(L2+) クライアント側アプリケーション の脆弱性を悪用する(L5) 実演 君達の「階層」は全て我々が戴いた
ワイヤレス 自動構成アルゴリズム 始めに、クライアントは利用可能なネットワークの一覧を作成する ワイヤレス 自動構成アルゴリズム 始めに、クライアントは利用可能なネットワークの一覧を作成する ブロードキャスト・プローブリクエストを各チャンネルに送信する
ワイヤレス 自動構成アルゴリズム 無線範囲内のアクセスポイントはプローブ応答を返す
ワイヤレス 自動構成アルゴリズム 「優先ネットワーク」一覧上のネットワークに対するプローブ応答を受信した場合: ワイヤレス 自動構成アルゴリズム 「優先ネットワーク」一覧上のネットワークに対するプローブ応答を受信した場合: 優先ネットワーク一覧順に接続する 優先ネットワークと一致するネットワークが検出されない時: ネットワークが「隠れている」場合のために、特定のプローブリクエストをそれぞれの優先ネットワークに送信する
ワイヤレス 自動構成アルゴリズム それでも関連付けができない場合は、優先ネットワーク一覧にアドホックネットワークがあれば、ネットワークを構成し、最初のノードとなる 自己割り当てIP アドレス(169.X.Y.Z)を使用する
ワイヤレス 自動構成アルゴリズム 最後に、「優先でないネットワークに自動的に接続」のチェックボックスがオンの場合(デフォルトではオフ)、検出された順にネットワークに接続する その他の場合は、ユーザがネットワークを選択するのを待つ ネットワークのスキャンを続ける
ワイヤレス 自動構成機能に対する攻撃 攻撃者は偽造した接続解除フレームをターゲットに送る ワイヤレス 自動構成機能に対する攻撃 攻撃者は偽造した接続解除フレームをターゲットに送る クライアントはブロードキャストリクエストと特定のプローブリクエストを再送信する 攻撃者は優先ネットワーク一覧の各ネットワークを検知する(linksys, MegaCorp, t-mobile等)
ワイヤレス 自動構成機能に対する攻撃 攻撃者はホストAPドライバで、 「 MegaCorp 」ネットワークを作成する
ワイヤレス 自動構成機能に対する攻撃 ターゲットは攻撃者の偽装ネットワークと関連付けられる 攻撃者は DHCP、DNSサーバなどを提供できる ワイヤレス 自動構成機能に対する攻撃 ターゲットは攻撃者の偽装ネットワークと関連付けられる 優先ネットワークが WEP (XP SP 0)であるとしても 攻撃者は DHCP、DNSサーバなどを提供できる
ワイヤレス 自動構成機能に対する攻撃 攻撃者は、作成されたアドホックネットワークに参加できる さらなる優先ネットワークの作成 ワイヤレス 自動構成機能に対する攻撃 攻撃者は、作成されたアドホックネットワークに参加できる ネットワークを傍受して自己割り当てIP (169.X.Y.Z) を探り出し、攻撃する さらなる優先ネットワークの作成 接続解除フレームを偽造してクライアントにスキャンプロセスを再開させる プローブリクエストを傍受して優先ネットワークを探り出す プローブリクエストから得たSSIDでネットワークを作成する 現在関連付けられているネットワークのためにより強力なシグナルを作成する ネットワークに関連付けられている間、クライアントはより強力なシグナルを探すために同じネットワークにプローブリクエストを送信する 飛行機内でDVD鑑賞中に占拠されるおそれあり!
ワイヤレスクライアント用スニファ“Kismet” 攻撃を自動的に行なうツール MACアドレスによりクライアントを追跡 状態の確認: スキャン/関連付け プローブリクエストを捕らえて優先ネットワークを記録 クライアントからのパケットのシグナル強度を表示 特定のクライアントに狙いを定め、そのクライアントが自動的に関連付けを行うネットワークを作成 クライアントを不正に促して元のネットワークに再接続させる インターネットを介して攻撃者に再接続させる 企業ネットワーク内にワームを送り込む その他 ワイヤレスクライアント用スニファ“Kismet”
L1: 完全SSIDネットワークの作成 複数のクライアントを一度に攻撃できるのか? PrismIIのホストAPモードはプローブリクエストをファームウェアで処理し、ドライバには送らない どんなSSIDの関連付けも受け入れるようにドライバを修正できる 第2のカードを使ってプローブリクエストを傍受し、プローブ応答を偽造できる ファームウェアを改造できればさらに良い
L2: FishNetを作成する 「金魚鉢」のような環境のもとでクライアントを監視できるネットワークが必要 ターゲットはワイヤレスネットワークに関連付けられる際にDHCPアドレスを取得する こちら側で独自のDHCPサーバを実行する DNS サーバやルータにもなる
FishNetサービス ワイヤレスリンクがアクティブになると、ユーザが何もしなくてもクライアントソフトウェアが作動し接続、再接続などを試みる 特別にカスタマイズしたDNSサーバが各クエリにこちら側のIPアドレスで応答する 「トラップ用」ウェブ、メール、チャットサービスを提供する フィンガープリント技法でクライアントソフトのバージョンを明らかにする 証明書を盗む クライアント側アプリケーションの脆弱性を悪用する
FishNetクライアントのフィンガープリンティング 自動DNSクエリ wpad.domain -> Windows _isatap -> Windows XP SP 0 isatap.domain -> Windows XP SP 1 teredo.ipv6.microsoft.com -> XP SP 2 自動HTTPリクエスト windowsupdate.comなど ユーザエージェント文字列 によってOSのバージョンを特定 受動的なOS フィンガープリント法(p0f)
L5: FishNetクライアントを悪用する 偽装サービスにより証明書を盗む メールやチャットのプロトコル (IMAP, POP3, AIM, YIM, MSN) 非クリアテキスト(暗号化)コマンドを使用した認証を拒否する 多くのクライアントは非クリアテキストがサポートされていない場合に最後の手段として自動的にクリアテキストを使用する VPNクライアントを攻撃する…
クライアント側アプリケーションの脆弱性 エクスプロイトはフィンガープリンティングによって得た情報を悪用する 最近のクライアント側アプリケーションの脆弱性 Microsoft JPG 処理(GDI+) Mozilla POPヒープ・オバーフロー GDK Pixbuf XPM脆弱性 … エクスプロイトはフィンガープリンティングによって得た情報を悪用する
実演