一方で、効果的なツールを使って診断を自動化したり、社内で内製化したいというニーズは社会的に高まっている。AppScanは、どの程度この需要に応えることができるだろうか。今回筆者は、日本IBM社の協力を得て、そんな筆者の疑問を検証する機会を得たので、詳しくレポートすることにする。長文ご容赦願いたい。
●レポート出力機能はPCIDSS等にも対応
AppScanは、PDFやMicrosoft Wordなど豊富なレポート機能を持つが、筆者は、デモテストの結果をもとに、重要度「高」の問題だけをピックアップして、レポートを出力してみた。レポートタイトルの変更や、自社のロゴをつけたりすること等ができる。
また、特定の業界標準のレポートや、PCIDSSのようなコンプライアンスレポートの出力もできる。PCIDSSフォーマットでは、PCIDSSの12要件の各項目毎にマッピングを行ったレポートが提出できる。
Microsoft Wordのレポート機能は、AppScanを使って診断を提供するような診断会社向けだと言えるだろう。
●まとめ:手動診断との棲み分けをどう図るか
手動の診断と、自動ツールとをどのように使い分けるかは、診断技術者にとって悩ましいポイントである。取材協力の日本IBM社によれば、AppScanにおいては、手作業のルーチンワークで検出できるような脆弱性ならば、ほぼAppScanでも検出できるため、手動診断の前に行う下診断として利用することを提案しているようだ。ツールを使うことで網羅的に診断することができるので、診断漏れの発生確率を大きく下げることができるため、安心を得ることもできるという。
手動診断と自動診断の比較として、例えばセッションIDの規則性など、人間でないとわからなさそうな脆弱性について日本IBM社に質問してみたが、パターンを見て脆弱なセッションIDを指摘する機能も含まれているそうだ。また、よくセッション周りが弱いと言われるということだが、実はセッション周りは相当検証が行われているそうである。
しかし、通常画面で入力した値が、何画面も遷移した後の管理画面でしか見ることができない場合などの予想が困難なケースは、AppScanは検知することができない。ツールには一長一短があり、要はどう組み合わせるか、ということになるのだろう。
筆者が考えた組み合わせは、先ほども挙げた「診断会社が手動テストの前に下診断として使用する」の他に「開発会社が、自社が持つ技量をカバーし、診断時間を短縮し、一定以上のセキュリティを担保する」などがありそうだ。
カギとなるのは、社内の、AppScanを運用できるスタッフの有無になるだろう。完全にアウトソースしている会社は難しい。しかし、運用をカバーできる体制があるなら、1〜2回程度の脆弱性診断を外注する金額で、AppScanのライセンスを購入することができるから、検討に値すると言えるだろう。(おわり)
●追記:他にも書き加えておきたい、AppScanの機能について
マルウェアテスト:IBM ISSの技術とノウハウを利用し、マルウェアのパターン検索、導かれる不正なサイトのリストを診断してくれる機能がAppScanには実装されている。開発中のアプリではなく、すでに外向けに公開されているWebアプリケーションがマルウェアなどに感染していないかどうかの診断に役に立つだろう
エクステンション:AppScanには、アドオンを作ったり、フリーで利用できる機能がある。アドオンのサイトがあり、フリーでインタフェースを公開している。PythonのスクリプトからAppScanを使える「Pyscan」などが有名
![]() |
トレーニング:AppScanユーザー企業向けに、座学とハンズオンの1日程度のトレーニングが行われる他、最初の一回目の診断を日本IBM社のエンジニアがつきそいで実施してくれるサービスなどがある
Rational AppScan
(取材協力:日本アイ・ビー・エム株式会社/執筆:上野 宣)