セッションハイジャックツールFiresheepと対抗アドオンBlacksheepを検証してみた
半月~ひと月ほど前でしょうか、FiresheepというHTTPセッションハイジャックを行うFirefoxアドオンが話題になりました。
同じような攻撃は以前から可能でしたが、ブラウザのアドオンとして手軽に行えるツールは初めてではないでしょうか。
作者のEric Butler氏は、人々にセッションハイジャックのリスクを理解させるために”One-click session hijacking”ツールを公開したと述べています。
ということでFiresheepの検証、それに対抗するアドオンとして公開されたBlackSheepなどを試してみました。
また、Blacksheepに検知されない方法も考えてみました。
実験
- Firesheepの検証
- BlackSheepの検証
- Blacksheep対策
- FireShepherdの検証
おまけ(Firesheep拡張)
- mixi
- youtube
- ニコニコ動画
- ameblo
- はてな
検証環境
Alice.
WindowsXP & Firefox
192.168.1.108
主としてTwitterにログイン。
Eve.
WindowsXP & Firefox + Firesheep
192.168.1.107
※環境が整わなかったため有線で行っていますが、無線でも大きな違いは無いと思います。
-
Firesheepの検証
1.AliceとEveが検証ネットワークに接続し、EveがFireSheepを起動します。
※Wiresharkは関係ありません。
2.Aliceがtwitterにログイン。(ログインページはhttpsになっています)
3.Eveがセッションハイジャックを成功させます。
- Firesheepは恐らくこのような仕組みで動いているのではないでしょうか?
少し触った経験からの推測なんで、間違ってたら指摘下さい。
-
- NICをpromiscuous modeに変更する(?)
- パケットキャプチャリングを行う
- Tcp80のHTTP通信を探して、ドメインをチェック
- 条件に合ったHTTP通信からCookieを奪取
- そのCookieを利用してプロフィールページなどにアクセスし、レスポンスをパースしてユーザ名やユーザアイコンを取得。(一部Webサービスのみ)
- サイドバーに表示される
- サイドバーの表示をダブルクリックすると、あらかじめ指定されたURLを開く
-
Blacksheepの検証
次はFiresheepに対抗するアドオンとして発表されたBlacksheepを試してみます。
0.今度はAliceにBlacksheepをインストールしておきます。
https://www.zscaler.com/blacksheep.html
1.EveがFiresheepをキャプチャを開始してしばらくすると、なにやら偽の情報が表示されます。
2.Aliceの方では画面上に“Somebody is using FireSheep on this network. IP: 192.168.1.107″と検知した旨の警告が表示されました。
3.しかし、その状態でAliceがTwitterにログインすると・・・
やっぱりセッションハイジャックは可能なようです。
つまりFiresheepの検知は出来ますが、Blacksheepを入れたからといってこの問題が解決するわけではありません。
検知した後、ログアウト処理を行うなどの対策は取れるかもしれませんが。
一部ニュースサイト等では、Blacksheepを利用すれば「Firesheepからの脅威を未然に防ぐ」などと述べられていたりしますが、それが間違いである事がわかります。
引用:
後日談ではあるが、「Firesheep」に対抗した「BlackSheep」なるものが米zscalerから提供されている。双方を同時にインストールすることはできないが、「Firesheep」からの脅威を未然に防ぐのだから問題はないだろう。
【レポート】誰でも熟練ハッカーと成りえてしまうFirefoxアドオン「Firesheep」など -エフセキュアブログ | パソコン | マイコミジャーナル
- Blacksheepは以下のような仕組みで動作しているようです。
- まずBlacksheepが偽のセッション情報を流します。
- Firesheepはそのセッション情報を利用して、(プロフィールなどにアクセス、レスポンスをパースし)ユーザーIDやアイコンを取得しようとします。
- Blacksheepは、この通信を見つけてFiresheepを検知します。
-
BlackSheep対策
先に述べたとおり、BlacksheepはFiresheepが自動で偽のセッション情報を使い、ユーザー名やアイコンを取得しようとする動作を検知します。ですので自動で取りに行く動作を排除すれば、FireSheepユーザーがそれを選択し無い限り検知されないのでは?と考え、Firesheepの改造を試みてみました。
FIresheepのxpiを展開しFiresheepWorker.jsの169行目をコメントアウトしておきます。
FiresheepWorker.js(169): handler.identifyUser.apply(result);
↓
try {
// handler.identifyUser.apply(result);
throw null;
} catch (e) {
result.error = e;
}
もう一度xpiに戻して、Firefoxにインストールします。
これだけで勝手にユーザー名などを取りに行くことはなくなり、偽の情報をクリックしない限りBlacksheepに検知されなくなりました。
※使ったxpiはここに置いておきました
ここから分かることは、Blacksheepはこの問題を全て解決してくれる物ではなく、且つ簡単に回避されるということです。
一部サイトでは「これを入れたら安心」というような流れになっていたりしますが、実際はそうではないようです。
-
FireShepherdの検証
これもFiresheep対策ツールらしいので試してみました。
1.ダウンロードし、実行してみます。
2.するとFiresheepで”Start Capturing”を押しても、「SyntaxError: JSON.parse」というエラーが表示され、すぐにキャプチャリングが停止してしまいます。
いまいちピンと来ないんですが、公式サイトにて”The program kills the current version of FireSheep running nearby,”と書かれているため、これが正しい挙動なんだと思います。
つまりバグを突っついて落としてるだけ・・・?
もしかすると私の環境の問題かもしれないんで、違ってたら指摘下さい。
3.ちなみに”Start Capturing”を連打すれば、やっぱりハイジャックできます。
つまりこちらのツールもFiresheepの妨害をするだけで、問題を解決してくれる訳ではないようです。
ユーザー側で出来る対策は
・信頼できない無線LANアクセスポイントに接続しない。
・信頼できないネットワークに接続しない。
・VPNなどを利用し、盗聴を防ぐ。
・各種アドオンを利用する。
→これに関しては既に多くの場所で述べられているため、リンクを貼るに留めます。
- firesheep 対策 -blacksheep アドオン – Google 検索
- FiresheepからWiFiでログイン情報を守る方法
- Mozilla Japan ブログ – Firesheep に関する Mozilla セキュリティチームからのコメント(最下部)
・最新の(機能を持った)ブラウザを使う
・Webサービス提供者側に対処を求めていく。
でしょうか。
おまけ
拡張機能がとても簡単に作れるようになっていたので、適当にPRが高そうな日本のサイト向けを書いてみました。
即席仕様なのでユーザー名やユーザーアイコンは取得しません(unknownになります。)
また、mixiはアカウントを持ってない&登録に携帯電話が必要だったので動作するかは未検証です。
適当に保存して、設定→importからどうぞ。
中身:
・youtube
youtube.js
register({
name: ‘youtube’,
url: ‘http://www.youtube.com/account’,
domains: [ 'youtube.com' ],
sessionCookieNames: [ 'LOGIN_INFO' ],
identifyUser: function () {
this.userName = “unknown”
}
});
・ニコニコ動画
nicovideo.js
・ameblo
ameba.js
・はてな
hatena.js
・mixi(未検証)
mixi.js
BS対策Firesheepと日本のサイト向け拡張ファイル置き場
更新するかもしれないので、ファイル置き場だけ分離しておきます。
詳細は→[あとで書く]
基本的に数行コメントアウトしただけです。
修正内容:上記詳細から。
DL:http://m1n0x.hp2.jp/file/firesheep-0.1-1_BSfix_add.xpi
拡張
中身:
- Ameba
- youtube
- ニコニコ動画
- はてな
- mixi(未検証)
選択基準はページランク高い所、且つ標準で入ってない奴から適当に。
ユーザー名やアイコンは取得しません。
DL:http://m1n0x.hp2.jp/file/firesheep_addon.zip
使い方
- 設定→Website→import
作り方
- セッション管理に使ってるcookieを特定。
- 他の拡張を参考に。
Security.GSで記事を書く事になりました+近況など
まずは近況など。
twitterの方で書きましたがキャンプ終了直後辺りからリアルの方が忙しく、暫くネット絶ちしてました。
色々書くつもりだった(あるいは下書きとして書いた)んですが、まだ投稿出来てません><
後ほど上げると思います(多分
また、来年春から東京周辺で大学生をやることになりました。
勉強会etcに積極的に参加するつもりなので、もし会ったら宜しくお願いします。
さて、10月7日こんなDMが届きました。
はじめまして!最近忙しいようですが、
もしよかったらSecurity.GSに参加しませんか!?お返事お待ちしております><
Oct 07, 2:04 AMにisidai (@isidai)からあなた (@M1n0x)へダイレクトメッセージが送信されました。
セキュリティキャンプ2010、書類選考通過しました@Webセキュ組
セキュリティ&プログラミングキャンプ2010のWebセキュリティ組に応募していたのですが、先ほど通過した旨のメールを頂きました。
周りが凄い人ばかりなので、不安で一杯ですw
事前基礎知識のうちHTTPとHTMLは問題ないと思うんで、
「できれば」になってるjavascriptをこれから勉強したいと思います。
(きちんと勉強したこと無いので。
あとはGAE辺りで色々作って遊ぼうかなと考えてたり。
>同じ参加者の方
よろしくお願いします。
付いていけるよう頑張りますw 現地で会いましょう!
未投稿の記事とか下書きの記事とか、最近じゃFonとかで遊んだことetc…を放置して、
久々の更新が日記的な何かでア レですね。
次あたりでWebセキュチェックに使えるFxアドオンの件でもいい加減上げるかな。
映画「ブラックサイト」を考察してみた。
元はだいぶ前に書いたメモです。
先日スターチャンネルで放送していたので流し見してたんですが、その際一部を書き加えたんでついでに此処にも置いておきます。
※例のように拙いメモレベル文章だらけなんで注意。
※※久しぶりの更新が、書きかけの記事を多数放置してこれかよとか言われそうですが。
概要
ある日、殺人生中継サイト”killwithme.com”が開設される。
そのサイトはアクセス数が増えるほど死が早まる仕掛けがあり、
FBIのサイバー犯罪課に所属した主人公の女性がそれを食い止めようとする。
Wikipedia曰く、テーマの一つとして「”他人の不幸は蜜の味”についての問いかけ」だそうで。
たぶんサイバー犯罪課のモデルはこれ?
完全に主観ですが、ストーリ的な部分は兎も角、技術的な部分はそれなりに良く出来ている(よく説明されている)映画だと思います。
ただ、レビューサイト等では「こんなの絶対無理だ」「サイト閉鎖できるだろ」と言われていたりします。
そういった意見に疑問を持ったのも、この文章をわざわざ整形して挙げた理由の一つです。
面白そうなところ
- このサイトの仕組み。
- 潰せない理由
- 各種スピア型の攻撃+ソーシャルエンジニアリング。
- 自動車に対するクラッキング。
映画に関するセキュリティワードetc。
- ソーシャルエンジニアリング
- SNS等における不必要な情報の公開
- ボット
- 踏み台
- スピア型(標的型)攻撃
- 無線LAN侵入
- Fastflux
- DNSラウンドロビン
- フリーキング(?)。飛ばし携帯。
- マルウェア配布サイト
- 出会い系
- 組み込み系機器への攻撃
- トロイの木馬(ゲーム)
- 動画投稿サイトの善悪
- 電波妨害
この犯人はソーシャルエンジニアリングが得意orお好きなようです。
以下一部ネタバレを含んでます。
ネタバレ部は出来るだけ白反転してありますので、随時反転させて読んでください。
→反転例:てすとてすと←
・マルウェア配布サイト
主人公の職場で話題になっていたのは、とあるマルウェア配布サイト。
「無料で音楽が聴けるよ!」と人を誘導し、マルウェアに感染させる。
そのマルウェアはクレジットカード番号(?)などを取得し、犯人へ渡すような仕組みに。
主人公たちは偽のカード番号を流し、犯人を誘導。
アクセスしてきた輩のIPアドレスは一般的なISPからの模様。
しかしIPアドレスから契約者情報の開示を求めてみると、コンピューター犯罪とは程遠そうな人。
どうやら無線LANに侵入され、タダ乗りされているらしい。
周辺に住む怪しい人を探し、犯人逮捕へ繋げる。
購入したものから主人公が予想したとおり、犯人は子供でした。
情報が省かれてて良く分かりませんが、偽のカード番号のカード会社とFBIは協力関係にあるって事でしょうか?
それでIPアドレスを提供してもらったという事ですかね。
・「killwithme.com」が開設される。
この段階ではトップページだけ。
ちなみにこのサイト、実在します。
もちろん映画の広告サイトですが、映画内に登場するのと同じような画面になっています。
リンク:http://www.killwithme.com/
・主人公のマウスパッド。
大きく「愛」と漢字で書かれています。
それだけですが。
・killwithme.comで猫の虐待中継が始まる。
画面右にコメント欄のような物があり、視聴者が書き込めるようになっています。
USTのソーシャルストリームのような見た目。
この段階で主人公たちが調査を試みています。
主人公曰く、
「TTLが短く設定され(ry」「サーバーを潰しても、すぐに切り替わり復活。」
「ドメイン管理団体がロシアで管轄外なため、ドメイン閉鎖は出来ない。」「踏み台が沢山」
だそうです。
これらの台詞、特に「短いTTL」という発言から推測するに、
犯人はFastFluxのような方法を用いて、間接的に動画配信を行っているようです。
踏み台は各種サーバーやボット群でしょうか?
確かに、ドメインの差し押さえが不可能なら、この方法は成立するように思います。
killwithme.comの「管理団体がロシア」(ryというのは、
gTLDを扱っているロシアのレジストラによって登録されたということでしょう。
ただ、FBIからレジストリやレジストラに対して、
正式に停止要求を出したら止めてもらえそうに思うんですが、無理なんですかね?
/*まあ現実では無理な事も多いという記事をどこかで見た記憶があります。
残念ながらURLは忘れてしまいました。どこだったかな・・・?*/
というか、こういう場合の停止権限はどこが持ってるんでしょうか?
一番近そうなのは、契約してるレジストラ?
レジストリは登録内容に対して触る権利は持ってるんでしょうか?
私の知識不足ではいまいちわかりません。
まあそれ以前に、仮にドメインを停止されたとしても、
ボットネットのC&C鯖に使われているような無限生成ドメイン(正式名称わかりません)のような手法などを用いるなり、
その生成パターンを意図的に予測可能にすることでネットユーザーに探させる等の方法を用いれば回避可能だと思いますが。
物凄く単純化して説明すれば、例えば
killwithme1.com
が停止されたら、次は
killwithme2.com
ではないかと一般ユーザーでも推測することができます。
・killwithme8.net
・killwithme14.to
・killwithme21.tv
などなど・・・。
このように世界中のレジストラやリセラを使って登録すれば、ドメインが停止されてもサービスその物はいくらでも復活可能ですね。
もちろん現実ではもっと複雑にすべきですが。
最初の数回をネットで宣伝すれば、後は物好きのネットユーザーが勝手に探してくれるでしょう。
映画では使われていませんが、こういう手法も併用して使えば完璧(最悪?)ですね。
ついでにもう一つ挙げるなら、映画内のような高画質&高フレームレートの映像配信は、踏み台を経由している以上厳しいと思います。
まあ、これは映画としての演出なんでしょうけど。
・殺人中継1
アクセス数に応じて薬が投与される仕組み。
ヘパリンという抗凝固薬が使われています。
血が止まらなくなり、皮膚に付けられた切り傷から出血し続けます。
・「DNSstuff.com」
画面に映るDNSstuff.com
実在します。
・国内限定
「ミラーサイトのログ見た?(ry」「国内限定にしてる(ry」
ミラーサイトとは恐らく、踏み台にされたサーバーの一つでしょう。
そのログによると、国内からしかアクセスできないようにされているようです。
理由を推測すると、このレベルの事件ならあっという間に世界中で話題になり、
アクセス数が踏み台鯖だけでは許容できない範囲まで膨れ上がり、サービスが停止してしまうからでしょう。
・容疑者
細かい流れをあんまり覚えていないんですが、ここで容疑者が出てきます。
ブルースカイというISPのIPアドレス。
契約者情報開示を要求してみたら、無関係そうな人が。
踏み台にされたんでしょうか?
ここら辺で覚えてない細かい流れがあり・・・、
再度容疑者が浮かび上がる。
FBIが突入。自宅にあった違法コピー映画を発見され取りあえず逮捕。
その後この容疑者のPCをフォレンジック。
しかし、事件に関係してそうな情報は出てこない。
事件の時間帯には友人とメッセンジャーでエロ談義をしていたことが判明。
容疑が晴れる。
・トロイの木馬
主人公の娘が「友達からもらった」という「面白くない」らしいゲームで遊んでいます。
後々分かることですが、これトロイの木馬のようです。
恐らく適当なフリーゲームにくっつけて作成し、
メールアドレス偽装等を利用し、友人の振りをして実行を促したといったところでしょう。
大人でも引っかかる人は沢山存在するんで、子供なら尚更でしょう。
・殺人中継2
テレビ局のリポーターの人がターゲット。
ホームページで(?)、趣味等を公開していたため、犯人にそこを狙われる。
趣味の鉄道模型を売りたいという旨のメールを出し、ターゲットを誘導する犯人。
誘導した後はスタンガンで気絶させる。
今回の中継は熱による殺人。
アクセス数の増加にしたがって、熱い電球が点灯する仕組み。
この段階でFBIが記者会見で、当該サイトへアクセスしないよう呼びかける。
実際問題として、呼びかけたらアクセス数が増えるだけでは・・・?
ターゲットが口パクで誘導された住所を話す。
しかし行ってみてもPCが放置されているだけで、誰も居ない。
・台詞
「多くは好奇心で、ニュースや株価や他人の性行為を見るように、他人を処刑している。」
「いつからこんな事になってしまった?」
「とっくの昔から。」
ネットが出来るよりもずっとずっと前からこんなもんだと思います。
Curiosity killed the cat…
・犯人視点
犯人が主人公の自宅PCを遠隔操作し、写真を見ている様子が映ります。
上のほうで書いた、主人公の娘が実行してしまったトロイに含まれていたバックドア(VNC)から侵入したのだと思います。
・自宅中継
自宅テレビの映像が乱れていて上手く映りません。
電波妨害でしょうか?
その後、自宅PCの画面に遠隔操作によって「killwithme.com」が開かれます。
中継されているのは主人公の自宅を写す映像。
自宅前に停まっていた謎の車から配信されていたようです。
警告を意味しているんでしょう。
・殺人中継3
次のターゲットは主人公の同僚のメガネさん。
このメガネさんは出会い系やメッセンジャー(?)が趣味。
犯人はメガネさんのPCに侵入し、この弱点を知ったようです。
この人もメッセや電話によるソーシャルエンジニアリングで誘導されます。
会話はボイスチェンジャーを利用している模様。
電話は”スプーフカード”というものを使って掛けたようです。
調べたところ、これは他人に成りすまして電話を掛けることができるプリペイドカードらしいです。
他に色々ごまかして電話をかける方法といったら、飛ばし携帯やVoIPサービスの利用とかですかね。
今回はアクセス数に応じて硫酸の濃度が高まる水槽による殺人。
硫酸はある大学から盗まれたもの。内部犯?
メガネさんは目の瞬きを使ったモールス信号で犯人につながるワードを知らせる。
・”スパコン”?
主人公が以前に国家安全保障局に対して求めていた”スパコン”の利用が拒否されました。
拒否の理由は「注目を集めてしまうから」。
この流れで”スパコン”を利用する必要性がわかりません。
もしかしたら”スパコン”というのは合言葉的な何かで、ゴニョゴニョするための機械の事を指しているのかもしれません。
しかし、今回の事例で通用しそうなゴニョゴニョは、
(私の知識の範囲では)国内ISPなどと協力し正引き要求パケットを落としてやるくらいじゃないですかね?
FastFluxのような方法によって鯖のIPアドレスは次々と変わるため、各種ハイジャックやパケット落としは通用しないような気がしますし・・・。
それとも犯罪的な方法でネームサーバー等を乗っ取るとか?
イマイチどういう機器なのかわかりません。
・犯人
メガネさんのヒントにより、本当の犯人が判明します。
ネタバレ防止のために細かいことは書きませんが、犯人は一応理由と目的を持ってネットで殺人中継をしていました。
なかなか皮肉な話ですね。
ただ、どうしてFBI捜査官も狙ったのかはよくわかりません。
ネットに関する規制の甘さからくる恨みのような物なんでしょうか?
・最後の殺人中継
主人公の自動車がクラックされ、乗っ取られます。
そのため、橋の上でいきなり車が停止してしまいました。
犯人がGPSサービスのスピーカーを使って話しかけてきます。
一見荒唐無稽に思えるかもしれませんが、実際に現実世界で似たような事件は起こっています(特殊な事例ですが)。
また、自動車に対するセキュリティ上の問題点や脆弱性を指摘する声は他にも色々あって、
- 車載システムへの攻撃で自動車が制御不能に、研究者がセキュリティ問題を指摘 – ITmedia エンタープライズ
- 情報処理推進機構:情報セキュリティ:自動車と情報家電の組込みシステムのセキュリティに関する調査報告書
など。
他にもブックマークしてない範囲で見たことあったような気がしますが、失念してしまいました。
現時点では超レアケースですが、このままセキュリティの事をあまり考えずに自動車が進化を続けたら、「絶対にありえない」事ではないように思えます。
その後、主人公が車のガラスを簡単に粉砕していますが、これは中々難しいのでは?
車のガラスを道具なしに割るには相当な怪力が必要な気がします。
もしかしたら私が道具を見落としただけかもしれませんが。
まとめ。
上記の考察の一部は、ブラマン考察同様に拡大解釈を含んでいるかもしれません。
ですが、そこらの意味不明な映像でごまかす作品よりはずっとリアルな作りになっているように思います。
以上。
「知識の目次」を作ってみた。

photo credit: torisan3500
自分の知識に対して、自分自身が後々再アクセスしやすくするためという理由で「知識の目次」を作ってみました。
※2010/05/26記
はっきり言って現状はただ並べただけなんで、異常に読みにくいです。
こうなってる理由は元々「Evernote」向けに書き、検索して使う文書だったからです。
いつかは整形し、しっかり内容も書いて、Wikiのようなページを作ろうかと思ってます。
以上。















Comments