「Webアプリケーションのセキュリテイ・ホールにより個人情報漏えいなどの危険があるサイトが多数存在する」---ラック コンピュータセキュリティ研究所所長 常務取締役の三輪信雄氏は2001年8月29日,日本ネットワークセキュリティ協会が主催したセミナーにおける講演で,このように警告した。この日行われたのは「Webアプリケーションに潜むセキュリティ・ホール」というテーマの講演。三輪氏は大手人材派遣会社のサイトなどで,ユーザー認証が不十分などの理由で他人の氏名住所といった登録情報が閲覧できてしまうというセキュリティ・ホールが存在したと語った。これらのサイトには同氏が警告し,すでに対策が取られているが「Webアプリケーションのセキュリティ・ホールはファイアウオールやSSLによる暗号化では防げない。短時間探索しただけでセキュリティ・ホールが存在するWebアプリケーションがすぐに発見できた。ほかにも多くのサイトに欠陥が存在することが危惧される」と述べた。

 三輪氏が発見したあるサイトの問題は,正規のユーザーであるかどうかをCookie情報にユーザーIDが含まれている,いないだけで判断していたために,Cookieを偽造することで他のユーザーの個人情報を閲覧できてしまうというもの。「Cookie情報は,簡単なスクリプトを書くなどすれば容易に偽造できる」(同氏)。しかも,ユーザーIDは連続する数値として振られていたために,あるユーザーIDの値を「-1」するなどで実際に使用されている有効なユーザーIDを簡単に作成できる。「ユーザーIDを1ずつ変えてアクセスすれば,大量の個人情報を取り出すことができた可能性がある」(同氏)。

 ほかのサイトのWebアプリケーションではCookieにセッションID(セッションごとに異なる乱数)が含まれていたが,実際にはユーザーIDと誕生日の情報だけがCookieに含まれていれば個人情報が表示されてしまった。Webアプリケーションはログイン時にセッションIDを発行はするが,実際には各画面ではセッションIDをチェックしていなかったためだ。

 このほか,三輪氏は多数のWebアプリケーションのセキュリテイ・ホールの例を示し「短時間探索するだけで,すぐに欠陥のあるサイトが見つかった。多くのサイトに存在する可能性がある」と警告。多くのせキュリティ・ホールが作られてしまう要因として「開発の期間や予算が厳しく,とりあえず動くことが第一で,例外処理まで手が回らない。開発者に検査できるスキルがないか,たとえ検査しても,発注側はセキュリティ・ホールの有無を品質として評価しない」などを挙げた。

 Webアプリケーションにセキュリティ・ホールを作らないための対策として同氏は,「セキュリティ・ホールが見つかってから改修するのでは,多大なコストがかかる場合がある。セキュリティの専門家を開発に参加させるなどして,設計段階から配慮することが望ましい」と述べた。あるサイトでは,アプリケーションを開発した会社に改修させようとしたところ「提示された仕様通りに開発した」と突っぱねられ,開発費の半分近い改修費用を負担することになったという。インテグレータはもとより,ユーザー側も十分に注意を払う必要がある。

(高橋 信頼=日経オープンシステム)