サポートされるテクノロジー
サイトで使用しているテクノロジーのうち、どれが AppScan のサイト・スキャン機能に影響する可能性があり、どれがスキャンにまったく影響しないかを理解することが重要です。
- AppScan は、「ブラック・ボックス」(DAST) ツールであり、ブラウザーと同じメカニズムを使用してサイトをスキャンします。そのため、一般に、ブラウザーに対して透過的なサーバー・サイド・テクノロジーは、AppScan に対しても透過的であり、スキャンに影響しません。
- JavaScript などのクライアント・サイド・テクノロジーや HTTP プロトコル自体は AppScan に影響します。ブラウザーとは異なり、AppScan は、自動クローリング、セッション・メンテナンス、およびテストを実行できるレベルでこれらのテクノロジーを認識している必要があります。そのような場合は、正確にスキャンするように AppScan を構成する必要があります。
AppScan スキャンは、探査およびテストの、探査とテストという 2 つの別個のフェーズがあります。各ステージでスキャンに影響する可能性があるサーバー・サイド・テクノロジーとクライアント・サイド・テクノロジー、および構成が必要になる状況を理解するためのガイドラインを表に示しています。
サーバー・サイド・テクノロジー | クライアント・サイド・テクノロジー | |
---|---|---|
探査ステージ |
クライアントに影響しないサーバー・サイド・テクノロジー (使用されている特定のデータベースなど) は、スキャンにまったく影響しません。 クライアントに影響する 多くのメカニズム (セッション管理など) は、AppScan が正しく構成されている場合は、スキャンを制限することはありません。例えば、Web サーバーおよびアプリケーション・サーバーはセッション ID の管理方法に影響を与え、AppScan はこれらの ID を追跡できる必要があります。この一般的なセッション ID は、事前定義されているか、AppScan が自動的に検出でき、追加の構成を必要としません。ただし、一部のカスタム・メカニズムには追加の構成が必要になる場合があります。 AppScan は、WebSphere Portal カスタム URL を明確にサポートしています。WebSphere Portal は、表示されたときに追跡が困難になる方法で URL をエンコードします。AppScan は URL をデコードするため、認識して調整することが可能になります。 Glass box スキャンは、Java および .NET でのみサポートされています。 |
今日使用されている 2 つの主なクライアント・サイド・テクノロジーは HTML5 および JavaScript です。いずれもスキャンの探査ステージに影響します。 AppScan は、探査ステージで HTML をサポートします。つまり、リンクを抽出でき、フォームを理解して入力することができます。 AppScan は、プレーン JavaScript をサポート (実行) します。JQuery、AngularJS、および PrototypeJS など、一部の主要フレームワークがサポートされています。その他の多くの JS フレームワークは明確にはサポートされていませんが、スキャンにまったく影響しません。 特定のテクノロジーが原因で自動探査ステージでページが欠落する場合、自動探査ステージの後で、テスト・ステージの前に手動でサイトを探査することにより、ページをスキャンに追加できます。 |
テスト・ステージ | AppScan は、サポートするテクノロジーではなく、アプリケーションをテストするよう設計されています。それらのテクノロジーはテストに影響しません。データベースについて再び検討すると、AppScan の SQL インジェクション・テスト・スイートは、使用されているデータベースから独立しています。サード・パーティーによるテスト (共通脆弱性テスト) に固有のテストも提供しています。 | クライアント・サイド・テストは、JavaScript コードのみに対して実行されます。現時点では、プレーン JS の脆弱性のみが検出されます。 JS フレームワークはサポートされていません。フレームワークを使用する JS コードは適切に分析されない可能性があります。 HTML5 は完全にサポートされています。 |