この記事の要点
- Webアプリケーション脆弱性診断は、ECサイトや会員ポータル、業務システム、APIなどに、攻撃に悪用される弱点がないかを検査するものです。
- 主な検査項目は、SQLインジェクションやXSSなどの入力値の処理、認証・認可とセッション管理、仕様を悪用されるビジネスロジックの欠陥、APIの仕様不備です。
- 自動スキャンだけでは、ログイン後の権限の扱いや業務フロー固有の欠陥は見つけにくく、エンジニアによる手動の確認が重要です。
- 依頼前に、対象のURL、ログイン機能とユーザー権限の種類、実施環境を整理しておくと、見積もりと診断がスムーズに進みます。
相次ぐ情報流出の多くは、インターネットに公開されたWebサイトやアプリの弱点が入口になっています。自社のWebシステムを公開している企業にとって、Webアプリケーションの脆弱性診断は、被害を未然に防ぐための基本的な対策のひとつです。
この記事では、Webアプリケーション脆弱性診断で何を調べるのか、どんな流れで進むのか、報告書をどう読めばよいのかを、診断サービスを提供するサイバーセキュリティ総研(CSRI)の視点から解説します。
Webアプリケーション脆弱性診断とは
Webアプリケーション脆弱性診断は、業務システム、ECサイト、顧客ポータル、管理画面、APIサーバーなどのWebアプリケーションに対して、攻撃者と同じ視点で疑似的な攻撃を行い、悪用される弱点がないかを確認するものです。見つかった弱点は、危険度と修正方法とともに報告書にまとめられます。
診断の基準としては、Webアプリケーションの重要なリスクをまとめたOWASP Top 10や、テスト手順の国際的な標準であるOWASP Testing Guideが広く使われています。
主な検査項目
| 分類 | 主な検査項目 | 悪用されると |
|---|---|---|
| 入力値の処理 | SQLインジェクション、クロスサイトスクリプティング(XSS) | データベースの情報を抜き取られる、利用者の画面で不正なスクリプトが動く |
| 認証・認可 | 認証・認可やセッション管理の不備、URLパラメータ操作による他ユーザーデータへの不正アクセス(IDOR)、ブルートフォース対策の回避 | 他人のアカウントに入られる、他の会員の情報を閲覧される |
| 業務ロジック | 仕様を悪用した不正注文や権限外操作 | 不正な値引きや注文、本来できない操作をされる |
| API | REST API・GraphQLなどの仕様不備を突く攻撃 | アプリの画面を経由せずに、裏側から情報を取得される |
このうち、認証・認可や業務ロジックの欠陥は、システムごとの仕様に依存するため、自動スキャンツールだけでは見つけにくい部分です。エンジニアが実際に操作して確認する手動診断の有無は、診断を選ぶときの大きなポイントになります。
診断の流れ
| ステップ | 内容 |
|---|---|
| 1. ヒアリング・範囲の決定 | 対象システムと診断範囲を確認し、業務への影響を考慮して実施日時を決める |
| 2. 診断の計画 | 攻撃者の視点で公開情報を収集し、検査の観点を整理する |
| 3. 診断の実施 | システムの挙動を監視しながら、段階的に検査する |
| 4. 報告書の作成 | リスクレベルと事業への影響を評価し、対策案とともに報告書にまとめる |
| 5. 報告会・対策相談 | 経営層・技術者向けに結果を説明し、改修計画の立案を支援する |
| 6. フォローアップ | 対策実装時の技術的な助言と、修正後の再診断 |
サイバーセキュリティ総研では、重大な脆弱性(Critical/High)を発見した場合は、報告書の完成を待たずに速やかにお知らせしています。
報告書の見方
- エグゼクティブサマリー:経営層向けに、全体のリスクと優先して取り組むべきことをまとめた部分。まずここで全体像をつかみます。
- リスク評価:CRITICAL/HIGH/MEDIUM/LOWなどの段階で危険度を示します。CRITICALとHIGHから優先的に修正計画を立てます。
- 証跡と再現手順:スクリーンショットやログ、再現手順が示されます。開発者が問題を確認・修正するための情報です。
- 影響範囲・根本原因・対策案:個別の修正だけでなく、同じ原因の問題がほかにないかを確認する手がかりになります。
依頼前に準備しておくとよいこと
- 対象の種類(業務システム、ECサイト、会員ポータル、APIなど)と、URL・ドメインの数
- ログイン機能の有無と、ユーザー権限の種類の数(一般ユーザー、管理者など)
- 実施する環境(本番/ステージング)と希望の時期
- 診断中に問題が起きたときの社内の連絡先と、開発会社・保守会社との連絡体制
サイバーセキュリティ総研のWeb系診断メニュー
| メニュー | こんな方に | 診断範囲 |
|---|---|---|
| Web脆弱性診断 | ペネトレーションテストまでは不要なWebプラットフォーム | 認証あり/なしのWebアプリケーション1つ |
| Webアプリ ペネトレーションテスト | SaaSの初期プロダクト、小規模ポータル、社内ツール | 1つのWebアプリケーション、最大3ユーザーロール |
| ベーシックWeb脆弱性診断 | Webサイト・ポータル・公開IPを持つ企業 | 最大3ドメインまたは外部IP |
| WordPress診断 | WordPressを運用している企業 | 1 WordPressサイト |
オプションとして、API診断と、修正後に問題が解消されたかを確認する再診断もご用意しています。費用・期間は対象の規模と範囲によりお見積りします。
よくある質問
Q. 小規模なWebサイトでも依頼できますか?
はい。数画面程度の小規模なWebアプリケーションや、1ドメインのWebサイト、WordPressサイトからご相談いただけます。ご予算と規模に応じて範囲を設計します。
Q. 開発会社に任せているシステムでも診断できますか?
可能です。ただし、診断の実施日時や、問題が見つかった場合の修正の進め方は、開発会社・保守会社と事前に共有しておくとスムーズです。
Q. 診断中にサイトが止まることはありますか?
事前の計画と安全対策で、業務への影響を最小限に抑えます。高負荷のテストは基本的に除外し、ご要望に応じてステージング環境で実施することもできます。
まとめ:公開しているWebシステムは「攻撃者より先に」点検を
Webアプリケーションの弱点は、外部から誰でも試すことができます。だからこそ、攻撃者より先に自社で点検し、修正しておくことが重要です。特に、ログイン機能や決済、管理画面を持つシステムは、手動診断を含めた定期的な点検をおすすめします。
あわせて読みたい
Webアプリケーション脆弱性診断は、サイバーセキュリティ総研にご相談ください
業務システム、ECサイト、会員ポータル、APIなどを、OWASPにもとづくエンジニアの手動診断で検査し、報告後の修正・再診断まで伴走します。
- 小規模なWebサイト、WordPressサイトから、社内ネットワーク・クラウドまで対応
- OWASP Testing Guide、OWASP Top 10、NIST SP 800-115、MITRE ATT&CKにもとづく診断
- 重大な脆弱性は報告書の完成を待たずにご報告
- 修正手順の提示から対策実装、修正後の再診断まで伴走
参照:サイバーセキュリティ総研 セキュリティ診断/OWASP Top 10/OWASP Web Security Testing Guide