Hello there, ('ω')ノ
自動テストと手動テストの特徴
✅ 自動テスト(ツール)
- 短時間で広範囲チェック
- 見落としが少ない
- 同じ操作を何度も繰り返せる
代表例:
- OWASP ZAP
- Burp Suite(スキャナー機能)
- SaaS型診断サービス
✅ 手動テスト(人の目)
- 実際の業務フローを意識した柔軟なチェック
- 自動ツールが気づかない細かい挙動まで確認可能
- 攻撃者視点で操作できる
なぜ両方必要か?
- 自動ツールは「型にハマった脆弱性」には強い
- 手動テストは「ビジネスロジック」や「画面上の表現」など、人間にしか気づけない部分を補完
たとえば:
- 管理画面がURL直接入力で見えてしまう → 手動テストでしか気づきにくい
- HTTPヘッダーやパラメーター汚染 → 自動ツールで網羅チェックが有効
実際の進め方モデル
① 自動テスト → 広く浅くチェック
- 対象URLやAPIを登録
- 検出された項目を一覧化
② 手動テスト → 気になった部分を深掘り
- 自動ツールで検出されたリスクを実際に再確認
- ユーザー視点でフローをたどる
- デザインや表記ミスによるセキュリティリスクを確認
社内向けおすすめチェック順序
- 自動ツールで全体スキャン(週1〜月1ペース)
- 手動テストは重要画面(ログイン・管理画面など)を重点的に(週次〜随時)
- 新機能リリース時は両方必ず実施
チェックリストまとめ
- [ ] 自動ツールによるスキャン結果を最新化しているか?
- [ ] 手動テストで実際の画面操作・入力チェックを行ったか?
- [ ] 自動テストと手動テストの結果をまとめて開発担当へ報告したか?
- [ ] 両方の結果を社内ナレッジとして蓄積しているか?
注意事項
- 自動ツール任せにしすぎない
- 手動テストだけでは見逃しが増えるため必ず両方実施
- 社内ルールやガイドラインに沿って進めること
まとめ
- 機械的なテスト=広く浅く
- 手動テスト=狭く深く
- 両方のバランスを意識することで、効率と精度を両立
Best regards, (^^ゞ