今週のSecurity Check(第190回)

問題■次の二つの画面を見て,このWebアプリケーションにどのような問題があるかをお答えください。



[画像のクリックで拡大表示]


[画像のクリックで拡大表示]

 典型的な例であるためご存知の方も多いかもしれない。この例では,表示するエラー・メッセージに問題がある。エラー・メッセージの内容から,ユーザーが存在するか否かを判別できる。このため,認証の安全性が低下してしまう。対策の一つは,「ログインに失敗しました」のみを表示するなど,メッセージに含まれる情報を必要最小限にすることである。

 当社はWebアプリケーションのぜい弱性診断サービスを提供しているが,その現場では,こうした問題点によく出くわす。今回は,そのぜい弱性診断の経験から,ユーザーが見落としがちなぜい弱性について取り上げてみたい。

 Webアプリケーションに存在するぜい弱性と聞かれたら,ITproセキュリティの読者の多くは,まず,SQLインジェクションやクロスサイト・スクリプティング(XSS)を挙げるのではないだろうか。確かにこれらのぜい弱性は広く認知され,対策も浸透しつつある。数年前は,まったくセキュリティが考慮されていない危険な状態のWebアプリケーションが数多く見受けられたが,最近は対策すべき個所の見落としによってぜい弱性が少数残存しているケースの方が多い。開発者の努力はもとより,セキュリティを意識した開発ノウハウの蓄積,ぜい弱性対策用ライブラリの充実などがWebアプリケーションのセキュリティ向上に寄与しているものと思われる。システムを発注する方の危機感が高まったこともある。

 ただ,Webアプリケーションにはほかにも数々のぜい弱性が潜んでいる可能性があり,SQLインジェクションやXSSとは全くタイプの異なるぜい弱性もよく見付ける。当社がWebアプリケーションのぜい弱性診断サービスを提供しているなかで,顧客が「それは思いもよらなかった」と驚くようなぜい弱性は少なからず存在する。その一例が,冒頭に提示した質問である。

 このような,設計やシステムの機能に深く関係するぜい弱性は見落とされることが多い。また,多くの場合,Webアプリ診断用のツールでは発見できない。近年世間を賑わしているぜい弱性に比べて地味ではあるが,依然としてよく見られる問題である。

 続いて,次の画面はどうだろうか。



[画像のクリックで拡大表示]


[画像のクリックで拡大表示]

 これらの問題点を抱えるWebサイトでは,メッセージからサイト利用者のニック・ネームとメール・アドレスのリストを簡単に集めることができるため、最近急増している標的型(スピア型)攻撃に悪用される可能性がある。サイト運営者を騙るメールに自身のニック・ネームが書いてあれば多くのサイト利用者が信じてしまうのではないだろうか。

 対策としては,送信エラー画面は一切表示せずに,

  • ご指定のメールアドレス xxxxxx@xxx.xxx.comに新規パスワードを送信しました
  • パスワードが届かない場合はメールアドレスが間違っている可能性がありますので再度再発行を行ってください

のように必要最小限の送信完了メッセージを表示する。あるいは,登録されているメール・アドレスについてのみ送信処理を行い,未登録のメール・アドレスの処理は破棄する方法もある。

 見落としがちなぜい弱性の例を示したが,これらはごく一部に過ぎない。システムやその機能ごとに全くタイプの異なるぜい弱性が存在する可能性がある。こうしたぜい弱性を発見するためには,攻撃者の視点でシステムや機能,画面やそれらから得られる情報を扱う必要がある。前述の事例では,メッセージを直接悪用できないか,どのようなメッセージのセットが得られれば攻撃に利用できるかという攻撃者の視点で見てみると問題点に気付きやすい。


中山 明
インターネットセキュリティシステムズ
プロフェッショナルサービス本部コンサルティング部
第一コンサルティング課アシスタントマネージャー

 ITpro Securityが提供する「今週のSecurity Check」は,セキュリティに関する技術コラムです。セキュリティ・ベンダーである「インターネット セキュリティ システムズ株式会社」のスタッフの方々を執筆陣に迎え,同社のセキュリティ・オペレーション・センター(SOC)で観測した攻撃の傾向や,セキュリティ・コンサルタントが現場で得たエッセンスなどを織り交ぜながら,セキュリティに関する技術や最新動向などを分かりやすく解説していただきます。(編集部より)