巧妙化するネット地雷原の避け方スパム時代のサニタイズ開発手法(2/2 ページ)

» 2005年12月22日 08時10分 公開
[平田豊,ITmedia]
前のページへ 1|2       

Cookieの漏えいは見破りにくい

 XSSによる脆弱性があるWebサイトにアクセスすると、ユーザーのCookie情報が第三者に送りつけられてしまう場合がある。

 JavaScriptでは、「document.cookie」と呼ぶコードでCookieを読み出すことが可能だ。CookieはWebサイトごとにブラウザにより管理されるため、もし、個人情報を入力したことがあるWebサイトに脆弱性があると、そのWebサーバ(Webサイト)に関連するCookie情報が盗まれる危険性があるのだ。

 ここで注意しなければならないのは、Webサイトに脆弱性があることが核心ではあるが、ブラウザ側のクライアントPCではCookie通信を容認していれば表面上何も分からずに盗まれてしまうという点だ。この問題に対しては、なるべくCookieには情報を残さないようにすることが防衛策となる。Cookieの仕組みそのものが悪ではないが、標的とされやすいのが現状だ(関連記事)

サーバの情報を盗用する手口

 Webサイトに脆弱性があると、その脆弱性を突くことによって、第三者にサーバ内部の情報が漏れることがある。サーバに顧客の個人情報が保存されている場合、大量の顧客情報が流出してしまうことにもつながる。これはいわゆるセキュリティホールであるが、サーバ管理に不備があるだけで、会社そのものが倒産してしまう危機に直面するのだ。

 Webサイトのセキュリティホールが突かれると、Webアプリケーションに開発者の想定外な動作をさせてサーバそのものがクラッシュする事態も考えられる。また、Webアプリケーションの権限を乗っ取ることで、Webサーバのroot権限を取得できてしまうこともあるのだ(現在のディストリビューションパッケージでは、ほとんどが対処済み)。UNIX系のコンピュータにおけるroot権限は、Windowsのadministrator権限と同じであり、OSを自由に操ることができる最高権限である。この権限さえあれば、ホームページの改ざんやサーバ内部データの改ざん、最終的にはサーバ自体のリソース破壊なども簡単にできてしまう。また、サーバを踏み台として、別のサーバへ被害を与えるという事例もあるほどだ。軽視することはできない。

悪意のあるサイトへ強制ジャンプしてしまう

 Webサイトのセキュリティホールと聞くと、たいていはサーバ側での被害が報告されることが多い。しかし、ブラウザを使用しているユーザー側に被害が及ぶこともある。画像掲示板といったimgタグのみを許可することにより、貼り付けが可能な掲示板を見掛けたことがあるだろう。例えば、このimgタグではCGIスクリプトを起動することができてしまう。このため、CGIスクリプト内では悪意のあるサイトで強制ジャンプさせる仕掛けがあると、画像掲示板を参照しただけで、悪意あるサイトへとアクセスすることになってしまう。このとき、Internet Exlorerのブラウザセキュリティ設定が「低」であれば、サイトを表示するだけで自らのPCに対して何をされるか分からない脅威がある。

 このようにWebアプリケーションを通して、ユーザーがタグを使えるようにしてしまうと、セキュリティホールになってしまう危険性があることが分かっただろう。セキュリティホールをなくすためには、タグ利用を無効化させるのが早道でもある。次回は、機能性を無駄にせず、XSSによる脆弱性対策を行うテクニックについて解説する。

前のページへ 1|2       

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ