HOME >> 情報セキュリティ >> 脆弱性対策 >> 知っていますか?脆弱性 (ぜいじゃくせい) >> 7. HTTP ヘッダ・インジェクション

7. HTTP ヘッダ・インジェクション

2007年7月12日 掲載

イントロダクション

このコンテンツを閲覧する際には、クロスサイト・スクリプティングのコンテンツを先にご覧いただくことをおすすめいたします。

X社のS氏は、ミニコミ誌を発刊している出版社のウェブサイト担当者。
ミニコミ誌の反響を調べるために冊子にアンケートページのアドレスを記載し、ウェブサイトにアンケート回答のウェブアプリケーションを設置しました。
前回、アンケート回答のウェブアプリケーションに見つかったクロスサイト・スクリプティングの脆弱性は修正されています。

“脆弱性”=ソフトウェア等におけるセキュリティ上の弱点

S氏 「クロスサイト・スクリプティングの脆弱性は修正されたバージョンだし、これなら安心だよね。」

攻撃者 「X社のアンケートページに、また脆弱性を発見したぞ…。」
「今度もX社へ誘導する罠を、Bさんの掲示板に仕掛けよう。

A子さん 「今日もBさんの掲示板をチェックしようっと。」
「またアンケート?」
「今度は大丈夫だよね。」

Bさんの掲示板のイメージ

数日後 ─

A子さん 「またアンケートのプレゼントは届かないし、勧誘の電話が急に多くなったし、
なんなのかしら…。」

S氏 「またアンケートのプレゼントが届かないとかクレームが来てしまった…。」
「困ったな。研究所の博士に聞いてみよう。」
「博士、またクレームが来てしまったんだけど、どうして?」

博士 「うーむ、このリンクは巧妙に細工されておるな。」
「今回は、HTTPヘッダ・インジェクションのようじゃな。」

“HTTP (Hyper Text Transfer Protocol)”=ブラウザとウェブサーバの間で通信する上での手順を取り決めたもの

S氏HTTPヘッダ・インジェクション?」

“HTTPヘッダ”=データのサイズや種類、更新時刻などを含むHTTPで取り交わす情報の一部


HTTP ヘッダ・インジェクションとは?

博士
「ウェブサーバがブラウザに対して送信する「HTTPヘッダ」という情報があるのじゃ。」
「ウェブアプリケーションの中には、このHTTPヘッダを、ブラウザから送信される情報を基に作成するものがあるのじゃ。」
「そのようなウェブアプリケーションに問題があると、悪意を持って細工された情報をHTTPヘッダに埋め込まれ(インジェクション)、埋め込まれた情報を基にした偽ページを表示させられてしまう場合があるのじゃ。」
「このような問題をHTTPヘッダ・インジェクションと呼ぶのじゃ。」

HTTP ヘッダ・インジェクションの具体的な攻撃例

博士 「今回も、クロスサイト・スクリプティングの問題と同様に、偽のアンケートページを表示させられ、フィッシング詐欺に悪用されてしまったのじゃ。」

攻撃のイメージ

図中の攻撃例の詳細

  1. 攻撃者がBさんの掲示板に罠を仕掛ける
  2. A子さんがBさんの掲示板を見る
  3. A子さんが罠のリンクが入ったページを表示し、リンクをクリックする
  4. Bさんの掲示板からX社のウェブサイトに移って(クロス)、悪意を持って細工された情報を送ってしまう
  5. 悪意を持って細工された情報が埋め込まれているHTTPヘッダが送られ、偽ページが表示されてしまう
  6. 偽ページにユーザがだまされて、個人情報などを攻撃者に送ってしまう

博士HTTPヘッダ・インジェクションクロスサイト・スクリプティングは、細工された情報を埋め込まれる場所は異なるのじゃが、同様の脅威があるのじゃ。」

S氏 「偽のページが表示できてしまうと、自社にはどのくらいの被害があるんですか?」

博士 「あなたの会社が間接的に加害者となり、お客様に迷惑をかけてしまうと、社会的信用をなくし、企業としての大きな損害となる可能性があるんじゃな。」

博士 「対策は、IPAのウェブサイトの脆弱性ごとの対策ページを参照するのじゃ。」