Webアプリケーションの品質向上に寄与する「AppScan」の脆弱性調査ソリューションとは

株式会社日立情報システムズでは、ソフトウェアやWebサイトの脆弱性を突いた攻撃への対策として「Webアプリケーション診断サービス」を提供している。米国Watchfireが開発したWebアプリケーション脆弱性診断ツール「AppScan」を用いて脆弱性を調査し、考えられる対策はどのようなものかを報告してくれるサービスだ。同社ネットワークサービス事業部 セキュリティソリューション部 技師 佐々木慎一氏に、Webアプリケーション診断サービスの特徴を伺った。

» 2006年06月26日 00時00分 公開
[PR/ITmedia]
PR

脆弱性のあるWebサイトは今なお多い

photo 株式会社日立情報システムズ
ネットワークサービス事業部
セキュリティソリューション部
技師 佐々木慎一氏

ITmedia 毎日のように、Web関連の新たな脆弱性が発見されたというニュースがありますが、その対策の実態はどのようなものでしょうか。

佐々木 ある調査によると、Webアプリケーションの2/3には脆弱性があるとされています。また、企業のWebセキュリティ予算の90%がネットワークやサーバのセキュリティに使われているのに対し、実際に行われている攻撃件数の75%がWebアプリケーションだと言われています。しかし、SQLインジェクション攻撃でもバッファオーバーフロー攻撃でも、80番ポートに対する正規のHTTPリクエストという形をとっているため、ファイアウォールやIDSも役に立ちません。ですから、Webアプリケーションに対する企業のセキュリティは手薄だと言わざるを得ません。

ITmedia 実際のWebサイトでは、どのくらいの脆弱性がそのまま残っているものなのでしょうか。

佐々木 数年前に構築されて以来、基本はそのままで何度も機能追加を繰り返しているというサイトも少なくありません。こうしたサイトでは、構築当時としては安全だったとしても、今の基準で考えたら多数の脆弱性が想定されます。実際、商用ソフトでも、バッファオーバーフローの脆弱性などがしばしば見つかっておりますし、今なお、検索ポータルやオークションなどの大手サイトでもクロスサイトスクリプティングの脆弱性が見つかることがあります。最近でも、SQLインジェクションによって何万件もの個人情報が流出したりする事件が生じています。

ITmedia 脆弱性対策は開発段階から行うことも可能だと思いますが、それだけでは不十分なのでしょうか。

佐々木 きちんと勉強して、脆弱性に対策を施している開発者も、いることはいます。そういう人の作ったサイトは、実際に調べてみてもほとんど脆弱性が出ていないことが多いですね。ですが、やはりそれでも、抜けはあるものです。例えば、hiddenフィールドの処理があります。普通のユーザーはブラウザを使うので、hiddenフィールドの値は想定通りに送られてきますが、攻撃はブラウザによって行われるわけではありません。攻撃者が意図的にhiddenフィールドを改変してサーバに送りつけてくる可能性があるのです。そこまで想定した処理が組み込まれていなければ、脆弱性となってしまうのです。また、開発段階では知られていなかった脆弱性が、後になって発覚するケースもあるでしょう。

ITmedia 今あるサイトに対し、脆弱性の診断を行うことが重要なのですね。

佐々木 そう言えるでしょう。しかし現状では、Webサイトの脆弱性診断を本格的に実施している企業は多くありません。非常に先進的なユーザー、あるいは過去に被害を受けたことのあるユーザーがほとんどです。

専用ツールと専門家の診断でWebの脆弱性を判定

ITmedia 貴社のWebアプリケーション診断サービスには、どのような特徴があるのですか?

佐々木 このサービスは2002年から提供していますが、膨大な脆弱性を網羅できるよう、当時から高度に自動化されたツールを併用したサービスとなっています。米国Watchfireの「AppScan」というツールです。

ITmedia AppScanの特徴を教えてください。

佐々木 まず、診断できる項目が多く、網羅的に脆弱性診断が可能です。また、診断のパフォーマンスが高く、大規模サイトにも対応可能です。それから、商用製品ならではの特徴と言えるでしょうけど、きちんとしたレポートを出力できる点も大きいですね。もちろん日本語化されていますし、日本の法令にも対応しています。例えば個人情報保護法対応が目的で診断を行うのなら、個人情報保護の観点に特化したレポートを作ることもできます。さらに、診断サービスを提供する我々にとって便利なのは、レポートの編集がやりやすいことですね。コンサルタントが独自の判断を加筆し、迅速にレポートを仕上げることができます。

ITmedia Webアプリケーション診断サービスは、どのような流れで行われるのでしょうか。

佐々木 まず、お客様から問診票や同意書をいただき、システムの概要をヒアリングするところから着手します。その上で、AppScanによる分析を実施します。AppScanは、「Explore」(構造解析)、「Test」(擬似攻撃)そして「Report」(評価/分析)という3つのフェーズで動作します。

 最初に行うのは、サイトの構造を調べ、考えられる脆弱性のリストを作って擬似攻撃実施のための情報を整理する構造解析フェーズです。診断するサイトのトップページを指定すると、そこからのリンクやボタンを押した先などを調べ自動的に巡回、サイトマップを構築していきます。名前やID、パスワードなどの入力が必要なところは、あらかじめパラメーターを指定しておくことで自動的に入力して調査を進めてくれます。

 そして次に、診断対象サイトに潜んでいる可能性がある脆弱性のリストを作ります。最近では既知の脆弱性の数が非常に多くなっていますから、そのリストは少なくとも1000件程度、多ければ20万、30万件にもなります。とても人手で調査できる数ではないですよね。なお、この脆弱性リストの元になるナレッジデータベースは、Watchfireからパッチが提供されているため、常に最新の情報を利用することができます。

photo AppScanによるWebアプリケーション脆弱性診断の概要

ITmedia なるほど。自動化により網羅的に調査できるというメリットがありますね。続いての手順はどのようなものですか。

佐々木 続いては、脆弱性診断の中心ともいえる擬似攻撃フェーズとなります。構造解析フェーズで作ったリストに従って擬似攻撃を行い、サイトの反応を調べていきます。これは、診断対象サイトにとってはトラフィックの増加につながりますから、本番サイトの代わりにテスト用サイトを診断することも多いですね。もちろん、本番サイトで、かつサービスを停止せずに診断をせねばならない場合は、サーバに負荷をかける擬似攻撃を行わない、といったオプションを設定することも可能です。

 この擬似攻撃も、基本的に自動で行われます。複数スレッドで並行して行われるので高速です。診断対象サイトの規模やレスポンスにもよりますが、お客様のサイトを使った調査そのものは、おおむね1日で完了するようにしています。大規模なサイトでは2〜3日に分けて実施することもあります。

ITmedia その後の分析はどのように行うのでしょう。

佐々木 AppScanは、擬似攻撃の診断結果をセッションファイルとして保存しておき、持ち帰ってオフラインで分析できます。ですから、評価/分析フェーズは、基本的に弊社での作業となります。分析画面では、個々の脆弱性に対する診断結果が4段階の危険度で表示され、ダブルクリックするとその詳細を確認できるようになっています。

 そして、ここからが人手での作業となります。AppScanによる調査は、どこに、どのような脆弱性があるかを調べるものであり、その結果どのような被害が想定されるかというのは、人間の判断になるのです。日立情報システムズにはWeb脆弱性診断専門チームがおり、ずっとノウハウを蓄積してきています。事前のヒアリング内容も踏まえ、例えば発見された脆弱性から個人情報を抜き出すことができるかどうか、といった点まで調べていきます。

 さらに、その脆弱性にどのような対策を施すべきか、という方針も示すことができます。これらの診断結果を、AppScanのレポートに書き加え、報告書としてお客様に提出します。標準的なスケジュールとしては、事前の準備と事後の報告書作成に、それぞれ約3週間かかります。

photo AppScanによるレポートのサンプル
(クリックすると画像が拡大します)

ITmedia 貴社のノウハウとAppScanの特徴の両方を生かしたサービスなのですね。

佐々木 AppScanは、商用のWebアプリケーション診断ソフトとしては世界で最初に登場した製品です。大手リサーチ会社の調査によれば、Watchfire は、アプリケーションセキュリティ脆弱性検査のカテゴリにおいて、世界の市場占有率で30%以上を占め首位であり、第2位の競合他社に比べて2倍以上の市場占有率です。実際、ユーザーが多いのでフィードバックも多く、よく練られたツールになっています。AppScan のように詳細なレポートを作れるツールは他にはありません。


安全なサイト構築のために開発段階からチェックを

ITmedia Webアプリケーション脆弱性診断は、貴社のような第三者に委託して行うだけでなく、自社で行うことも可能ですよね。

佐々木 もちろんです。むしろ、本来なら開発段階からチェックしていくべきだと考えています。システムが設計通りに動くかどうかのテストだけでなく、セキュリティホールがないかどうかというテストも必要になってきています。AppScanには、「AppScan Audit Edition」と「AppScan QA Edition」の2種類のエディションが用意されています。機能的にはほぼ同じですが、診断できる対象範囲が違っており、Audit Editionは第三者として診断するためのライセンス、QA Editionは自社サイトを診断するためのライセンスとなっています。

ITmedia 第三者による診断と自社での診断は、目的も違ってきそうですね。

佐々木 我々がお客様に提供する診断サービスでは、第三者としての分析・診断を行いますから、対外的なアピールにもお使いいただけるでしょう。一方、自社で診断される場合は、Webアプリケーションの品質をセキュリティ面から高めるために役立ちます。こうした必要性が少しずつ認識されてきたのか、QA Editionによる自己診断を毎月行い、さらに年に1回の外部監査を依頼するというお客様も、徐々に増えてきました。このように、弊社の提供するソリューションをそれぞれ使い分けていただくのが、セキュアな環境を作るうえで最も適切だと考えています。

ホワイトペーパー「アプリケーション レベルでの一般的な12種類のハッカー攻撃」

ダウンロードはこちらから!

※ダウンロードにはTechTargetジャパンの会員登録が必要です


Copyright © ITmedia, Inc. All Rights Reserved.


提供:株式会社日立情報システムズ
制作:ITmedia エンタープライズ編集部/掲載内容有効期限:2006年7月25日