セキュリティテスト せきゅりてぃてすと
セキュリティテストSASTDASTペネトレーションテスト脆弱性診断DevSecOps
セキュリティテストって何をするの?
セキュリティテストとは
セキュリティテスト とは、システムの脆弱性・セキュリティ上の欠陥を意図的に発見するためのテスト活動の総称です。
「Shift-Leftセキュリティ」という考え方で、テストフェーズだけでなく設計・実装の早期からセキュリティを組み込むDevSecOpsが主流になっています。
セキュリティテストの主な種類
| 種類 | 概要 | タイミング |
|---|---|---|
| SAST(静的解析) | コードを実行せずにソースコードから脆弱性を検出 | コーディング中・CI/CD |
| DAST(動的解析) | 実行中のアプリケーションに対して攻撃をシミュレート | ステージング環境 |
| SCA(ソフトウェア構成分析) | 依存ライブラリの既知脆弱性を検出 | CI/CD |
| ペネトレーションテスト | 専門家が実際に侵入を試みる手動テスト | リリース前・定期的 |
| ファジング | ランダムな不正入力でクラッシュや脆弱性を発見 | 開発・CI |
SASTとDASTの比較
SAST(静的解析) DAST(動的解析)
┌─────────────────┐ ┌─────────────────┐
│ ソースコードを分析 │ │ 動作中のアプリを │
│ │ │ 外部から攻撃 │
│ ✅ 早期発見 │ │ ✅ 実際の動作検証 │
│ ✅ CI/CDに統合 │ │ ✅ 設定ミスも検出 │
│ ❌ 誤検知が多い │ │ ❌ 後工程で発見 │
│ ❌ ロジック系は弱 │ │ ❌ 完全網羅不可 │
└─────────────────┘ └─────────────────┘
主なセキュリティテストツール
| ツール | 種別 | 用途 |
|---|---|---|
| Snyk | SCA/SAST | 依存ライブラリ脆弱性の検出 |
| OWASP ZAP | DAST | Webアプリの動的スキャン |
| Semgrep | SAST | カスタムルール対応の静的解析 |
| Trivy | SCA | コンテナイメージの脆弱性スキャン |
| Burp Suite | ペネトレーション | プロ向けWebセキュリティ診断 |
歴史と背景
- 2001年:OWASP設立、Webセキュリティのベストプラクティスを体系化
- 2017年:DevSecOpsという概念が広まりCI/CDへのセキュリティ統合が普及
- 現在:Snyk・GitHubのDependabotなどがデフォルトで組み込まれるように
関連用語
- OWASP Top 10 — セキュリティテストで確認するWebの主要脆弱性
- CI/CDパイプライン — SASTやSCAを自動実行する仕組み
- テストカバレッジ — セキュリティテストも網羅性を意識する
- コンテナ — イメージの脆弱性スキャンが重要
- ゼロトラスト — セキュリティテストと組み合わせる設計思想