このドキュメントでは、OWASP のすべての攻撃(www-community)と Cheat Sheet(CheatSheetSeries)をセキュリティのカテゴリに対応づけ、それぞれ公式の公開ページにリンクしています。同じカテゴリ内で同等の項目は、チェックリストの 1 行にまとめています。同じリスクを扱う攻撃と Cheat Sheet は、カンマ区切りで並べています。直接対応するものがない項目は、それぞれ単独の行にしています。
- クレジットは OWASP に帰属します。攻撃のページは
https://owasp.org/www-community/attacks/<attack>、Cheat Sheet はhttps://cheatsheetseries.owasp.org/cheatsheets/<cheat>.htmlにあります。
1. インジェクション(汎用)
- Code Injection, Injection Prevention, Injection Prevention in Java (interpreter)
- Direct Dynamic Code Evaluation (Eval Injection) (interpreter)
- Function Injection (interpreter)
- Resource Injection (network)
- Special Element Injection (interpreter)
- Custom Special Character Injection (interpreter)
- Comment Injection Attack (interpreter)
- Parameter Delimiter (interpreter)
- Server-Side Includes (SSI) Injection (interpreter)
- Input Validation, Bean Validation (interpreter)
2. SQL / データベースインジェクション
- SQL Injection, SQL Injection Prevention, Query Parameterization (sql)
- Blind SQL Injection (sql)
- SQL Injection Bypassing WAF (sql)
- RSQL Injection (interpreter)
- Database Security (sql)
- NoSQL Security (interpreter)
3. OS / コマンドインジェクション
- Command Injection, OS Command Injection Defense (interpreter)
4. LDAP / XPath / XML インジェクション
- LDAP Injection, LDAP Injection Prevention (interpreter)
- XPATH Injection (interpreter)
- Blind XPath Injection (interpreter)
- XML External Entity (XXE) Prevention, XML Security (xml)
5. クロスサイトスクリプティング(XSS)
- Cross Site Scripting (XSS), Cross Site Scripting Prevention, XSS Filter Evasion (browser)
- DOM Based XSS, DOM based XSS Prevention, DOM Clobbering Prevention (browser)
- Reflected DOM Injection (browser)
- XSS in Converting File Content to Text (browser)
- XSS in subtitle (browser)
- Cross Frame Scripting (browser)
- Cross Site Tracing (browser)
- Content Security Policy (browser)
6. クロスサイトリクエストフォージェリ(CSRF)とクリックジャッキング
- Cross Site Request Forgery (CSRF), XSRF, Cross-Site Request Forgery Prevention (http-request)
- Clickjacking, Clickjacking Defense (browser)
- Cross Site History Manipulation (XSHM) (browser)
- Form action hijacking (network)
- Reverse Tabnabbing (browser)
7. リダイレクトとフォワード
- Open Redirect, Unvalidated Redirects and Forwards (network)
- Execution After Redirect (EAR) (browser)
8. アクセス制御と認可
- Insecure Direct Object Reference (IDOR), Insecure Direct Object Reference Prevention (access-control)
- Forced browsing (access-control)
- Web Parameter Tampering (access-control)
- Setting Manipulation (access-control)
- Authorization (access-control)
- Transaction Authorization (access-control)
- Mass Assignment (access-control)
- Multi-Tenant Application Security (access-control)
9. 認証と認証情報
- Brute Force Attack, Password Spraying Attack, Bot Management and Anti-Automation (credential-endpoint)
- Credential stuffing, Credential Stuffing Prevention (credential-endpoint)
- Qrljacking (federation)
- Authentication, Multifactor Authentication (access-control)
- Password Storage (access-control)
- Forgot Password, Choosing and Using Security Questions (access-control)
- Email Validation and Verification in Identity Systems (access-control)
10. セッション管理
- Session fixation, Session hijacking attack, Session Prediction, Session Management (access-control)
- Cookie Theft Mitigation (access-control)
11. ID フェデレーション(OAuth / SAML / JWT)
- OAuth 2.0 Protocol (federation)
- SAML Security (federation)
- JSON Web Token for Java (federation)
12. 暗号とトランスポートセキュリティ
- Cryptanalysis, Cryptographic Storage, Key Management (crypto)
- Manipulator-in-the-Middle (MITM), Transport Layer Security (transport)
- HTTP Strict Transport Security (transport)
- Pinning (transport)
13. サーバーサイドリクエストフォージェリ(SSRF)
14. パストラバーサルとファイル処理
- Path Traversal (path)
- Binary Planting (path)
- Windows ::DATA Alternate Data Stream (path)
- Embedding Null Code (path)
- File Upload (upload)
15. HTTP プロトコルの悪用(ヘッダー、キャッシュ、分割)
- HTTP Response Splitting, Cross-User Defacement (interpreter)
- HTTP Security Response Headers(browser、transport、http-request、access-control に分割)
- Cache Poisoning (interpreter)
- IP Spoofing via HTTP Headers (http-request)
16. エンコーディングとコンテンツスプーフィング
- Unicode Encoding (interpreter)
- Double Encoding (interpreter)
- Content Spoofing (browser)
17. CSV / スプレッドシートインジェクション
- CSV Injection (csv)
18. CORS(オリジン間リソース共有)
- CORS OriginHeaderScrutiny (http-request)
- CORS RequestPreflightScrutiny (http-request)
19. サービス拒否
20. メモリ安全性とネイティブコード
- Buffer Overflow Attack, Buffer Overflow via Environment Variables (c-cpp)
- Format string attack (c-cpp)
21. モバイルコードと信頼できないコードの実行
- Mobile code invoking untrusted mobile code (interpreter)
- Mobile code non-final public field (java)
- Mobile code object hijack (java)
22. デシリアライゼーション
- Deserialization(python、ruby、php、java、dotnet に分割)
23. マルウェアとクライアントサイドの脅威
- Man-in-the-browser attack, Browser Extension Security Vulnerabilities (browser)
- Third Party JavaScript Management (browser)
24. ロギング、否認、エラー処理
- Log Injection, Logging, Application Logging Vocabulary (interpreter)
- Repudiation Attack (interpreter)
25. ビジネスロジックと機能の悪用
ビジネスロジックと機能の悪用には、攻撃対象領域ごとの専門知識が守れるような、単一のコード上の攻撃対象領域がありません。防御はアプリケーション固有の設計によるもので、プロジェクトの脅威モデリングから導かれるのと同じ考え方です。"対象外" に移しました。
26. AI / LLM / エージェントのセキュリティ
- Prompt Injection, LLM Prompt Injection Prevention (llm)
- MCP Tool Poisoning, MCP (Model Context Protocol) Security (llm)
- HITL Dialog Forging (Lies-in-the-Loop) (llm)
- AI Agent Security, Secure Coding with AI (llm)
- Retrieval-Augmented Generation (RAG) Security (llm)
- Secure AI/ML Model Ops (llm)
- AML and Sanctions Compliance for AI Agent Payments (llm)
27. プロトタイプ汚染とクロスサイトリーク
- Prototype Pollution Prevention (javascript)
- Cross-site leaks (XS-Leaks) (browser)
28. フレームワークと言語プラットフォーム
- Django Security, Django REST Framework (python)
- Ruby on Rails (ruby)
- Laravel (php)
- Symfony (php)
- Java Security (java)
- DotNet Security (dotnet)
- NodeJS Security (javascript)
- PHP Configuration (php)
29. Web フロントエンドとブラウザー
- HTML5 Security (browser)
- AJAX Security (browser)
- Securing Cascading Style Sheets(access-control、browser に分割)
30. API とサービス
- GraphQL (api-endpoint)
- gRPC Security (api-endpoint)
- WebSocket Security (api-endpoint)
31. クラウド、コンテナー、インフラストラクチャ
コンテナーとワークロードの設定は、開発者がアプリと一緒にリリースする、コードとして管理された設定です(Dockerfile、Compose、Pod の securityContext)。harden が修正し、verify が証明できる実在の攻撃対象領域なので、対象に含めます。クラスター管理(RBAC、etcd、API サーバー、アドミッション制御、ネットワークセグメンテーション)は運用者の領域なので、対象外のままです。
- Docker Security, Node.js Docker (container)
- Kubernetes Security(container:ワークロードと Pod の部分。クラスター管理は対象外のまま)
- Serverless / FaaS Security (serverless)
32. サプライチェーンと CI/CD
- NPM Security (interpreter)
- Dependency Graph & SBOM Best Practices, Vulnerable Dependency Management (interpreter)
33. シークレットと設定
シークレット管理は運用の領域で、保管庫、CI/CD、クラウドの設定、ローテーションが関わります。コードに関わる唯一の側面(ソースコードにハードコードされたシークレット)は決定論的なスキャンが扱うもので、リスクを扱う専門知識の対象ではありません。"対象外" に移しました。
34. プロセス、設計、ガバナンス
ユーザーのプライバシー保護はポリシーと設計の問題(データの最小化、透明性、保持期間)であり、専門知識が守るコード上の攻撃対象領域ではありません。"対象外" に移しました。
35. 決済とコンプライアンス
36. 組み込み / IoT / 特殊な分野
自動車とドローンのセキュリティは組み込みシステムの分野(CAN バス、OTA ファームウェア、センサーと無線の完全性、物理アクセス)であり、Lagune が監査する Web アプリケーションや API のソースコードではありません。"対象外" に移しました。
対象外(コード上の攻撃対象領域なし)
ここに挙げる項目は専門知識が扱う領域ではなく、チェックボックスもありません。ガバナンス、プロセス、運用面の堅牢化、またはフレームワークの使い方に関するもので、攻撃対象領域ごとの専門知識が守れるような、単一のコード上の攻撃対象領域を持ちません。セキュリティ上の価値は確かにありますが、その価値があるのはプロセスとアーキテクチャ(フレームワークの場合は、その言語専用のスキル)であり、このカタログが提供する防御ではありません。作業項目ではなく、参考として掲載しています。
- Authorization Regression Testing, Authorization Testing Automation
- JAAS
- Denial of Service, Denial of Service
- HTTP/2 Reset Attack
- Traffic flood
- Web Service Amplification Attack(SOAP/WS-Addressing による増幅攻撃。コード上の攻撃対象領域を持たない、運用面の DoS の一種)
- Cash Overflow
- Spyware, Trojan Horse(エンドユーザー側のマルウェアで、監査対象のプロジェクトにあるコード上の攻撃対象領域ではない。ブラウザー内で届けられる側面は
browserで扱う) - REST Security, REST Assessment
- Web Service Security
- Cloud Architecture Security(設計とトレードオフ:IAM か署名付き URL か、パブリック VPC とプライベート VPC、信頼境界、責任共有。
containerとは違い、専門知識がチェックできる具体的な設定がない) - Infrastructure as Code Security(名前に反して、中身は IaC を管理するための SDLC のプロセスとツール:IDE プラグイン、静的解析、イメージスキャン、CI/CD、署名。Terraform や CloudFormation のファイルについて、安全でないパターンから安全な形への書き換えは示していない)
- Kubernetes Security(クラスター管理の部分のみ:RBAC、etcd、API サーバー、アドミッション制御。ワークロードと Pod の部分は
containerで対象に含める) - Network Segmentation(ネットワークアーキテクチャとファイアウォールのポリシー)
- Subdomain Takeover Prevention(DNS のライフサイクルと監視であり、コードではない)
- Secrets Management(保管庫、CI/CD、ローテーション。ハードコードされたシークレットの側面は決定論的なスキャンが扱うもので、リスクを扱う専門知識の対象ではない)
- C-Based Toolchain Hardening(コンパイラー、リンカー、ビルドのフラグで、ソースコード上のシンクがない)
- Microservices Security, Microservices based Security Arch Doc
- Zero Trust Architecture
- CI/CD Security, GitHub Actions Security
- Software Supply Chain Security
- Error Handling, Full Path Disclosure(技術スタックごとのグローバルなエラーハンドラーの設定。この漏えいは、エラー処理がすでに扱っている情報開示と同じもの)
- Abuse of Functionality, Business Logic Security, Abuse Case(旧版)(アプリケーション固有の設計で、単一のコード上のシンクがない)
- User Privacy Protection(データの最小化、透明性、保持ポリシー)
- Top 10 Automotive Security Vulnerabilities, Drone Security(組み込みシステムの分野:CAN バス、OTA ファームウェア、センサーや無線の完全性。Web や API のソースコードではない)
- Mobile Application Security(Android と iOS のプラットフォームの堅牢化:ストレージ、生体認証、ピンニング、PII。単一のコード上の攻撃対象領域はなく、信頼できないコードの読み込みに関する側面は
interpreterに移した) - Threat Modeling, Threat Modeling(コミュニティページ)
- Attack Surface Analysis
- Secure Product Design
- Secure Code Review
- Virtual Patching
- Vulnerability Disclosure
- Legacy Application Management
- Security Terminology
