TOP設計・移行・活用> はじめに
脆弱なWebアプリケーション
脆弱なWebアプリケーション

第6回:各種の問題
著者:セントラル・コンピュータ・サービス  長谷川 武
2005/6/2
1   2  3  4  次のページ
はじめに

   本連載ではこれまでにWebアプリケーションの脆弱性の4つのカテゴリーについて見てきた。今回はこれらの4つのどれにも分類されない問題を集めた、最後のカテゴリー「各種の問題」を解説する。
※注意: この記事にはWebアプリケーションの脆弱性を解説する必要上、攻撃手口に関する情報が含まれています。これらの手口を他者が運営するWebサイトに向けて仕掛けると、最悪の場合刑事罰および損害賠償請求の対象となります。脆弱性の調査・検証は、必ずご自身の管理下のコンピュータシステムおよびローカルエリアネットワークで行ってください。この記事を参考にした行為により問題が生じても、筆者およびThinkIT編集局は一切責任を負いません。


各種の問題

   第5のカテゴリー「各種の問題」は、これまで解説してきた4つのカテゴリーのどれにも当てはまらないものを収容する枠であり、実のところ「その他ボックス」に近い。このカテゴリーには形の異なるいくつかの脆弱性が含まれるが、「見た目」の問題にかかわるものが比較的多い。代表的なものとして偽ページ問題迷惑メール問題がある。


偽ページ問題

   別のWebサーバを立ててそこに本物そっくりの偽ページを用意するというのはフィッシング詐欺の手口だが、それ以外にも、正規のWebサーバに干渉してあたかもそのコンテンツが存在するかのような偽ページをユーザに見せる手口が存在する。これもやはりWebアプリケーションの脆弱性が悪用され、仕掛けられる攻撃のひとつだ。

   偽ページを見せる手口には、HTTPレスポンス分割攻撃、セカンドオーダー攻撃、クロスサイトスクリプティング攻撃などがある。ここではHTTPレスポンス分割攻撃を中心に見ていこう。


HTTPレスポンス分割攻撃

   プロキシサーバを騙して多くの人々に偽ページを見せてしまうのがHTTPレスポンス分割攻撃である。

   Webアプリケーションは通常HTTPレスポンスのボディ部だけを書き出し、ヘッダ部はWebサーバソフトやアプリケーションエンジンが生成する。ところが、ときどきだがWebプログラムからこのHTTPヘッダ部への書き出しを行う必要が生じることがある。Webプログラムから明示的に書き出されることが多いHTTPレスポンスヘッダは次の2つだ。

Set-Cookie:ヘッダ ブラウザに対してHTTP Cookieを発行する
Location:ヘッダ ブラウザにリダイレクト先のURLを知らせる

   Set-Cookie:ヘッダはセッションIDの搬送やユーザのプリファレンス(好みのオプション)の保持などのためにCookieを発行するヘッダである。

   もうひとつのLocation:ヘッダは、Webサーバからブラウザにリダイレクト先を知らせるものである。リダイレクトとは、ブラウザが要求したURLに該当するコンテンツを送り出すのではなく、「代わりにこちらをご覧ください」という主旨で別のURLをサーバ側から通知するものだ。リダイレクトレスポンスを受け取ったブラウザは、ユーザに制御を戻すことなくただちに示されたURLにアクセスする。

リダイレクトとLocation:ヘッダ
図1:リダイレクトとLocation:ヘッダ

1   2  3  4  次のページ


セントラル・コンピュータ・サービス株式会社
著者プロフィール
セントラル・コンピュータ・サービス株式会社  長谷川 武
シニア・セキュリティ・スペシャリスト、IPA 非常勤研究員。2002年にはIPA ISEC『セキュア・プログラミング講座』の制作ディレクターをつとめた。これを契機に、現在は勤務先とそのパートナー企業を通じてセキュアプログラミングセミナー/実習/スキル評価テストといった教育サービスを「TRUSNET(R)アカデミー」として提供している。問い合わせE-mail:info@trusnet.com


INDEX
第6回:各種の問題
はじめに
  Location:ヘッダの組み立て
  JavaScriptによる偽ページ
  その他の話題