ウェブ脆弱性診断👮
国家が求める基準に対応した脆弱性の評価が必要ですか?
ISO9001国際基準品質
当社では品質管理における国際認証である ISO9001を取得し国際基準に基づいたWebアプリケーション脆弱性診断のサービス品質管理を実施しております。
適応プロセス
脆弱性診断サービスは、システムやネットワークの潜在的なセキュリティリスクを特定し、悪用される前に対策を講じるための重要なプロセスです。Gftd Japan株式会社では、以下のプロセスを通じてWebアプリケーション脆弱性診断を提供します。
- リーダーシップ
サービス品質方針の定義、責任権限一覧 - 計画
目標管理 - 支援
リソース管理、スキルマネージメント、契約 - 運用
見積書、提案書、監査レポート、検収 - パフォーマンス
マネジメントレビュー、内部監査 - 改善
是正処置
No | 大分類 | 中分類 | 小分類 | 診断を実施すべき機能 | 診断方法 |
1 | Webアプリケーションの脆弱性 | インジェクション | SQLインジェクション | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 |
2 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
3 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
4 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
5 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
6 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
7 | コマンドインジェクション | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | ||
8 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
9 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
10 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
11 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
12 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
13 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
14 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
15 | CRLFインジェクション | ヘッダに値を出力している箇所 | パラメータの値に検出パターンを挿入し、リクエストを送信 | ||
16 | ヘッダに値を出力している箇所 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
17 | メールメッセージのヘッダに値を出力している箇所 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
18 | クロスサイトスクリプティング(XSS) | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | ||
25 | CSSインジェクション | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | ||
26 | Relative Path Overwrite | すべて | パスに検出パターンを挿入し、リクエストを送信 | ||
27 | サーバサイドテンプレートインジェクション(SSTI) | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | ||
28 | すべて | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
29 | パストラバーサル | ファイル名を扱っている画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | ||
30 | ファイル名を扱っている画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
31 | ファイル名を扱っている画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
32 | ファイル名を扱っている画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
33 | ファイル名を扱っている画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
34 | ファイル名を扱っている画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
35 | ファイル名を扱っている画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
36 | ファイルアップロードに関する不備 | クロスサイトスクリプティング(XSS) | ファイルアップロード機能 | ファイルアップロード機能を使い検出パターンを含むファイルをアップロードした後、当該ファイルが設置されたと考えられるパスにアクセス | |
37 | ファイルアップロード機能およびファイル名を取り扱っている画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 ファイル名が出力されると考えられる画面にアクセス |
|||
38 | ファイルアップロード機能およびファイルのメタデータの出力箇所 | パラメータの値に検出パターンを挿入し、リクエストを送信 ファイルのメタデータ情報が出力されると考えられる画面にアクセス |
|||
39 | 任意コード実行 | ファイルアップロード機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 ファイルアップロード機能を使い任意のファイルをアップロードしたあと、当該ファイルが設置されたと考えられるパスにアクセス |
||
40 | LFI | ファイル名を扱っている画面や機能 | ファイルアップロード機能を使い小分類「任意コード実行」のペイロードファイルをアップロードしたあと、検出パターンにあるパス・ファイル名をアップロードしたファイル名に合わせて変更し、リクエストを送信 | ||
41 | DoS攻撃 | ファイルアップロード機能 | 受け入れられる形式の大きなサイズのファイルを作成し、そのファイルをアップロード | ||
42 | DoS攻撃 | 画像ファイルのアップロード機能 | 細工した画像ファイルをアップロード | ||
43 | 圧縮ファイルの取り扱い不備 | アップロードした圧縮ファイルを展開する機能(zipやdocxなど) | ファイルをアップロード | ||
44 | アップロードした圧縮ファイルを展開する機能(zipやdocxなど) | ファイルをアップロードし、展開されたと推測されるファイルにアクセス | |||
45 | アップロードした圧縮ファイルを展開する機能(zipやdocxなど) | ファイルをアップロード | |||
46 | XML外部エンティティ参照 (XXE) | アップロードされたDOCXやPPTXなどのXMLが含まれるファイルを処理する機能 | xmlファイルやdocxファイルなどアップロードするファイルの内容に検出パターンを挿入し、リクエストを送信 | ||
47 | XML外部エンティティ参照 (XXE) | リクエストにXMLが含まれている箇所 | XMLに検出パターンを挿入し、リクエストを送信 | ||
48 | リクエストにXMLが含まれている箇所 | XMLに検出パターンを挿入し、リクエストを送信 | |||
49 | リクエストにXMLが含まれている箇所 | XMLに検出パターンを挿入し、リクエストを送信 | |||
50 | リクエストにXMLが含まれている箇所 | XMLに検出パターンを挿入し、リクエストを送信 | |||
51 | リクエストにXMLが含まれている箇所 | XMLに検出パターンを挿入し、リクエストを送信 | |||
52 | すべて | Content-typeをXMLを示す値に変更し、上記検出パターンを含めてリクエストを送信 | |||
53 | オープンリダイレクト | リダイレクトが実行される画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | ||
54 | リダイレクトが実行される画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
55 | リダイレクトが実行される画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
56 | シリアライズされたオブジェクト | すべて | 検出パターンがリクエストに含まれていないか確認 | ||
57 | サーバサイドリクエストフォージェリ(SSRF) | ファイル名やURLを扱っている画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | ||
58 | ファイル名やURLを扱っている画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
59 | ファイル名やURLを扱っている画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
60 | ファイル名やURLを扱っている画面や機能 | パラメータの値に検出パターンを挿入し、リクエストを送信 | |||
61 | WebSocket | クロスサイトウェブソケットハイジャッキング(CSWSH) | WebSocketで通信している機能 | 対象と異なるオリジン上に設置した罠ページからWebSocket通信接続を行い、アプリケーションの機能を操作するメッセージを送信 | |
62 | クリックジャッキング | 確定処理の直前画面 | 検出パターンがリクエストに含まれていないか確認 | ||
63 | 確定処理の直前画面 | 検出パターンがリクエストに含まれていないか確認 | |||
64 | 認証 | 認証回避 | 認証が必要な箇所 | ペイロードを送信して認証後のページにアクセスする | |
65 | ログイン機能 | ペイロードを送信してログインを試行する | |||
66 | ログアウト機能の不備や未実装 | ログアウト機能 | ログアウト機能が存在するかを確認 | ||
67 | ログアウト機能 | 認証で使っているセッションIDをメモし、ログアウト機能を実行後、メモしたセッションIDを付与してログイン状態になることを確認 | |||
68 | 過度な認証試行に対する対策不備や未実装 | ログイン機能 | 異なるセッションにおいて、同じユーザ名でパスワードを連続して20回間違えてから、正しいパスワードでログインを試行 | ||
69 | 脆弱なパスワードポリシー | パスワード登録・変更 | パスワード文字列の桁数が8文字未満の文字列を登録・変更できないことを確認 | ||
70 | パスワード登録・変更 | パスワード文字列の桁数が8文字以上、かつ文字種が大小英字、数字、記号の3種類が混在している文字列を登録・変更できることを確認 | |||
71 | パスワード登録・変更 | ユーザ名と同じパスワードが登録・変更できないことを確認 | |||
72 | 復元可能なパスワード保存 | パスワード登録・変更 | パスワードリマインダ機能でパスワードを問い合わせて確認 | ||
73 | すべて | 設定したパスワードが、いずれかのページで表示や埋め込まれていないことを確認 | |||
74 | パスワードリセットの不備 | パスワードリセット | パスワードリセットを実行して、再設定時に本人確認をしていることを確認 | ||
75 | パスワードリセット | パスワードリセットを実行して、ユーザ自身による新たなパスワード設定が強制されることを確認 | |||
76 | セッション管理の不備 | セッションフィクセイション(セッション固定攻撃) | ログイン機能 | 認証に使用しているセッションIDに関して、ログイン成功後にログイン成功前の値が継続して使用できるか確認 | |
77 | ログイン前に機微情報がセッション変数に格納されていると想定できる箇所 | 氏名やメールアドレス等の機微情報を管理しているセッションIDに関して、機微情報を入力した後に入力前の値が継続して使用できるか確認 | |||
78 | 推測可能なセッションID | セッションID発行時 | セッションIDを複数集めて規則性があることを確認し、セッションIDを推測 ・ユーザアカウントごとに差異の比較 ・発行時の日時による差異の比較 ・発行回数による差異の比較 |
||
79 | 認可制御の不備 | 認可制御が必要な箇所 | 権限の異なる複数のユーザで、本来権限のない機能のURLにアクセス | ||
80 | 認可制御が必要な箇所 | 登録データに紐づく値がパラメータにより指定されている場合、そのID類を変更して、操作を行ったユーザでは権限がない情報や機能を閲覧、操作 | |||
81 | 認可制御が必要な箇所 | hiddenパラメータやCookieなどの値で権限クラスを指定していると推測される場合に、値を変更、追加などを行うことで、操作を行ったユーザでは権限がない情報や機能を閲覧、操作 | |||
82 | クロスサイトリクエストフォージェリ(CSRF) | 登録、送信などの確定処理をGETで行っている箇所 | Cookieなどリクエストヘッダに含まれたSamesite属性がnoneまたはlaxのパラメータによってセッション管理が行われている確定処理において、以下の3点を確認 ①以下のいずれかの情報がパラメータ中に含まれているかを確認 A. 利用者のパスワード B. CSRF対策トークン C. セッションID ②A~Cが含まれている場合に、ユーザαで利用されている値を削除、もしくはパラメータごと削除してリクエストを送信し、処理が行われるか確認 ③Refererを削除、もしくは正規のURLではない値に変更して、リクエストを送信し、処理が行われるか確認 |
||
83 | 登録、送信などの確定処理をPOSTで行っている箇所 | CookieのうちSamesite属性がnoneの値によってセッション管理が行われている確定処理において、以下の3点を確認 ①以下のいずれかの情報がパラメータ中に含まれているかを確認 A. 利用者のパスワード B. CSRF対策トークン C. セッションID ②A~Cが含まれている場合に、ユーザαで利用されている値を削除、もしくはパラメータごと削除してリクエストを送信し、処理が行われるか確認 ③Refererを削除、もしくは正規のURLではない値に変更して、リクエストを送信し、処理が行われるか確認 |
|||
84 | CSRF対策トークンを使用している箇所 | ①ユーザαで利用されている値をユーザβで利用されている値に変更してリクエストを送信し、処理が行われるか確認 ②CSRF対策トークンを複数集めて規則性があることを確認し、CSRF対策トークンを推測 ・ユーザアカウントごとに差違の比較 ・同一ユーザでログインするごとに差違の比較 |
|||
85 | 情報漏洩 | クエリストリング情報の漏洩 | すべて | セッションIDや機微情報がURLに含まれていないか確認 | |
86 | キャッシュからの情報漏洩 | 機微情報が含まれる画面 | レスポンス内で適切にキャッシュ制御を行っていることを確認 | ||
87 | パスワードフィールドのマスク不備 | パスワード入力画面 | パスワード入力に使用するinputタグのtype属性に"password"が指定されていることを確認 | ||
88 | 画面表示上のマスク不備 | 全般 | マスクすべき情報が画面上に表示されていないことを確認 | ||
89 | HTTPS利用時のCookieのSecure属性未設定 | Set-Cookieヘッダフィールドがある箇所 | HTTPS利用時のSet-CookieヘッダフィールドにSecure属性があることを確認 | ||
90 | CookieのHttpOnly属性未設定 | Set-Cookieヘッダフィールドがある箇所 | Set-CookieヘッダフィールドにHttpOnly属性があることを確認 | ||
91 | パスワードの管理不備 | パスワードリセット | パスワードリセットを実行 | ||
92 | パスワード変更画面、管理者画面 | パスワード変更画面、管理者画面にアクセス | |||
93 | HTTPSの不備 | 全般 | Webページにアクセス | ||
94 | HTTPS箇所 | HTTPSを使用しているコンテンツを確認(HTTPおよびHTTPSの併用) | |||
95 | HTTPS箇所 | HTTPSを使用しているコンテンツを確認(HTTPとHTTPSの混在) | |||
96 | HTTPS箇所 | 動作対象ブラウザで証明書を確認 | |||
97 | 不要な情報の存在 | すべて | HTTPレスポンスやメールなどに「攻撃に有用な情報(設計やデータベース構造になどに係わる情報、バージョン情報)」や「公開不要な情報(個人名、メールアドレス、ミドルウェアの情報、過去の公開していたコンテンツのリンク、プライベートIPアドレスなど)」が含まれていることを確認 | ||
98 | Webアプリケーションの動作環境への診断項目 | サーバソフトウェアの設定の不備 | ディレクトリリスティング | すべて | Webサーバ上の発見したディレクトリにアクセスして、ディレクトリ内のファイルが一覧表示されないかを確認 |
99 | 不要なHTTPメソッド | すべて | メソッドを変更してサーバにアクセス | ||
100 | 不要なHTTPメソッド | すべて | メソッドを変更してサーバにアクセス | ||
101 | 公開不要な機能・ファイル・ディレクトリの存在 | すべて | サンプルファイルや、バックアップファイルなど、アプリケーションの動作に不必要なファイルの有無を確認 不特定多数に公開する必要がないファイルの有無を確認 |
||
102 | 既知脆弱性 | すべて | 取得したバージョン情報から、フレームワークやライブラリに既知脆弱性がないか確認 |
経営リスクも評価
当社のWebアプリケーション脆弱性診断報告書ではアプリケーションの脆弱性に加えサイバー犯罪における経営リスクを評価します