SCAN DISPATCH :ブラウザ・ヒストリのCSRF対策用トークンを発見する方法、研究者が発表 | ScanNetSecurity[国内最大級のサイバーセキュリティ専門ポータルサイト]
2017.12.17(日)

SCAN DISPATCH :ブラウザ・ヒストリのCSRF対策用トークンを発見する方法、研究者が発表

国際 海外情報

 SCAN DISPATCH は、アメリカのセキュリティ業界及ハッカーコミュニティから届いたニュースを、狭く絞り込み、深く掘り下げて掲載します。

──

 クロスサイトリクエストフォージェリ(Cross site request forgeries,CSRF)は、攻撃者が、あらかじめWebページを用意し、そこに訪れたユーザのブラウザを使用し、ユーザが少し前に訪れたWebメールやWebショップのアカウントを操作する攻撃。この攻撃は、ユーザが気がつかない間に行われること、正規のWebページであっても、セキュリティが万全でない場合に何者かによって攻撃コードを埋め込まれる可能性があることに加え、ユーザにとっては被害が膨大になる可能性がある攻撃だ。

 CSRFを防止する方法として使用されているのが、トークンの使用だ。その実装方法は開発者によって異なっているが、ポピュラーなものにURLの一部にランダムに生成されたトークンをアペンドする方法がある。

 この方法は、トークンのブルートフォースがほとんど不可能であることから、安全と考えられている。その理由は、例えばBase16で5文字のトークンの場合、組み合わせは393,216にもなり、これだけの数のリクエストをサーバに試みれば必ず検知されてしまうこと、通常、間違ったトークンを使用して30回以上のリクエストが行われた場合には、セッションを無効とするようにアプリケーションはプログラムされているからだ。

 ところが、SecureThougts.comというWebページのInfernoというセキュリティ研究者が、URLにアペンドされた5文字程度のトークンならば、クライアント側でこのトークンを探し出してCSRF攻撃が行えると発表した。『ウェブアプリケーション セキュリティ』などの著書で知られている金床 氏こと、株式会社ビットフォレスト 取締役CTO、株式会社セキュアスカイ・テクノロジー 技術顧問の佐藤匡氏は、この攻撃について「面白いテクニックですね。私が知る限りでは新しい発見(攻撃手法)です」とコメントしている。

 この攻撃方法について、Inferno氏とのメールインタビューを交えて紹介したい。

 この攻撃、「Hacking CSRF Tokens using CSS History Hack」とタイトルがついており、Jeremiah Grossman氏が3年前に発見したCSSヒストリーハックをベースとしている。攻撃は、(1)同一セッション内ではトークンが同じ、あるいは、(2)同一セッション内ならば、古いフォームに使われたトークンも有効、というどちらかの条件があれば可能だ。大手IT企業のセキュリティ部をリードするInferno氏は「調査をしたところ、大手企業のWebショップなどでこの脆弱性を多数発見した」と述べており、実際、アメリカの大手家電販売社、BestBuy.comでこの脆弱性が確認されている。また、サーバにリクエストをかける必要が無いため、サーバ側では阻止できないだけでなく、悪意のあるWebページ側では、JavaScriptを使わずにCSSだけで攻撃が行えることもわかっており、ユーザーがJavaScriptを無効にしても攻撃が可能となるため、日本の開発者も至急対策を講じる必要があろう。

 そもそも、CSRF対策の方法自体がきちんと理解されていないことも事実だ。東京支社でアプリケーション・セキュリティを担当している、Stach & Liu社のシニア・セキュリティ・アソシエイツ、ジャスティン・ヘイズ氏によれば、「現在のWebアプリケーションは、CSRF攻撃に概して無防備である。いくつかの対策方法が存在するものの、開発者にきちんと理解されておらず、アプリケーションやユーザを保護することができない、いいかげんな実装が行われる結果となっている」そうだ。また、佐藤匡氏も「(日本でも)ここ1〜2年間、新しく開発されるアプリケーションではCSRF対策が考慮されるケースが少しずつ増えているようです。ただ、実際の割合などの統計的なデータは存在していないだろうと思います」と述べている。

 さて、JavaScriptとCSSを使ったこの攻撃のコンセプト実証がInferno氏のWebページにある。まず、

http://securethoughts.com/?param1=val1&csrftoken=b59fe

を訪れてb59feを英字から始まる5文字のbase16のストリング(つまり、>a0000)に変更してから、

http://www.securethoughts.com/security/csrfcsshistory/csrfscan.html

を訪れると、Webページでアクティブなトークンを表示する。

 Inferno氏はサーバ開発者側の対策として…

【執筆:米国 笠原利香】

【関連リンク】
Inferno氏のブログ
http://securethoughts.com/2009/07/hacking-csrf-tokens-using-css-history-hack/
──
※ この記事は Scan購読会員向け記事をダイジェスト掲載しました
購読会員登録案内 http://www.ns-research.jp/cgi-bin/ct/p.cgi?w02_ssw
《ScanNetSecurity》

Scan PREMIUM 会員限定記事

もっと見る

Scan PREMIUM 会員限定記事特集をもっと見る

Scan BASIC 会員限定記事

もっと見る

Scan BASIC 会員限定記事特集をもっと見る

[Web小説] サイバー探偵 工藤伸治の事件簿サーガ (シーズン 1~6 第1話)

もっと見る

[Web小説] サイバー探偵 工藤伸治の事件簿サーガ (シーズン 1~6 第1話)特集をもっと見る

カテゴリ別新着記事

国際 カテゴリの人気記事 MONTHLY ランキング

  1. 死亡した男性のメールアカウントを巡るヤフーと裁判所の争い(The Register)

    死亡した男性のメールアカウントを巡るヤフーと裁判所の争い(The Register)

  2. どこかへ跳んでいけ、出来の悪いラビット(The Register)

    どこかへ跳んでいけ、出来の悪いラビット(The Register)

  3. 米軍のSNSに対する膨大なスパイアーカイブ、AWS で数十テラ閲覧可(The Register)

    米軍のSNSに対する膨大なスパイアーカイブ、AWS で数十テラ閲覧可(The Register)

  4. ロシアが中印らと独自インターネット構築か、グローバルDNS分裂の危機を追う(The Register)

  5. 捜査中だった米大統領選に使用されたサーバのデータが消失(The Register)

  6. 「Tor 禁止令」を解く Facebook、暗号化の onion アクセスポイントを宣伝~これからは暗号化通信も完全に OK(The Register)

  7. Anonymousが幼児虐待の秘密の拠点を閉鎖~Tor小児愛者を攻撃し氏名を暴露(The Register)

  8. インドのレジストリで情報漏えい、インドのネットを壊滅させるデータのビットコイン価格とは(The Register)

  9. Mac OS X のシングルユーザモードの root アクセス(2)

  10. WPA2の新たな脆弱性への攻撃KRACK、暗号化技術の根底にある欠陥(The Register)

全カテゴリランキング

★★Scan PREMIUM 会員限定コンテンツにフルアクセスが可能となります★★
<b>★★Scan PREMIUM 会員限定コンテンツにフルアクセスが可能となります★★</b>

経営課題としてサイバーセキュリティに取り組む情報システム部門や、研究・開発・経営企画に携わる方へ向けた、創刊19年のセキュリティ情報サービス Scan PREMIUM を、貴社の事業リスク低減のためにご活用ください。

×