Questo documento collega ogni attacco (www-community) e ogni Cheat Sheet (CheatSheetSeries) di OWASP a una categoria di sicurezza, ognuno con il link alla sua pagina pubblica canonica. All'interno di una categoria, gli elementi equivalenti condividono un'unica riga dell'elenco: gli attacchi e le cheat sheet che affrontano lo stesso rischio sono elencati insieme, separati da virgole. Gli elementi senza un equivalente diretto stanno su una riga a sé.
- Il merito è di OWASP. Gli attacchi si trovano in
https://owasp.org/www-community/attacks/<attack>e le cheat sheet inhttps://cheatsheetseries.owasp.org/cheatsheets/<cheat>.html.
1. Injection (generica)
- 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 injection e injection nei database
- 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. Command injection e injection nel sistema operativo
- Command Injection, OS Command Injection Defense (interpreter)
4. Injection LDAP, XPath e XML
- LDAP Injection, LDAP Injection Prevention (interpreter)
- XPATH Injection (interpreter)
- Blind XPath Injection (interpreter)
- XML External Entity (XXE) Prevention, XML Security (xml)
5. Cross-Site Scripting (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. Cross-Site Request Forgery (CSRF) e clickjacking
- 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. Redirect e forward
- Open Redirect, Unvalidated Redirects and Forwards (network)
- Execution After Redirect (EAR) (browser)
8. Controllo degli accessi e autorizzazione
- 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. Autenticazione e credenziali
- 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. Gestione delle sessioni
- Session fixation, Session hijacking attack, Session Prediction, Session Management (access-control)
- Cookie Theft Mitigation (access-control)
11. Federazione delle identità (OAuth, SAML, JWT)
- OAuth 2.0 Protocol (federation)
- SAML Security (federation)
- JSON Web Token for Java (federation)
12. Crittografia e sicurezza del trasporto
- Cryptanalysis, Cryptographic Storage, Key Management (crypto)
- Manipulator-in-the-Middle (MITM), Transport Layer Security (transport)
- HTTP Strict Transport Security (transport)
- Pinning (transport)
13. Server-Side Request Forgery (SSRF)
14. Path traversal e gestione dei file
- Path Traversal (path)
- Binary Planting (path)
- Windows ::DATA Alternate Data Stream (path)
- Embedding Null Code (path)
- File Upload (upload)
15. Abuso del protocollo HTTP (header, caching, splitting)
- HTTP Response Splitting, Cross-User Defacement (interpreter)
- HTTP Security Response Headers (suddiviso tra browser, transport, http-request e access-control)
- Cache Poisoning (interpreter)
- IP Spoofing via HTTP Headers (http-request)
16. Codifica e content spoofing
- Unicode Encoding (interpreter)
- Double Encoding (interpreter)
- Content Spoofing (browser)
17. Injection in CSV e fogli di calcolo
- CSV Injection (csv)
18. CORS (Cross-Origin Resource Sharing)
- CORS OriginHeaderScrutiny (http-request)
- CORS RequestPreflightScrutiny (http-request)
19. Denial of service
20. Sicurezza della memoria e codice nativo
- Buffer Overflow Attack, Buffer Overflow via Environment Variables (c-cpp)
- Format string attack (c-cpp)
21. Codice mobile ed esecuzione di codice non attendibile
- Mobile code invoking untrusted mobile code (interpreter)
- Mobile code non-final public field (java)
- Mobile code object hijack (java)
22. Deserializzazione
- Deserialization (suddiviso tra python, ruby, php, java e dotnet)
23. Malware e minacce lato client
- Man-in-the-browser attack, Browser Extension Security Vulnerabilities (browser)
- Third Party JavaScript Management (browser)
24. Logging, ripudio e gestione degli errori
- Log Injection, Logging, Application Logging Vocabulary (interpreter)
- Repudiation Attack (interpreter)
25. Logica di business e abuso delle funzionalità
La logica di business e l'abuso delle funzionalità non hanno un'unica superficie nel codice che una specializzazione per superficie possa difendere: la difesa è una progettazione specifica dell'applicazione, lo stesso ragionamento che guida il threat modeling del progetto. Spostati in "Fuori ambito".
26. Sicurezza di IA, LLM e agenti
- 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 e cross-site leak
- Prototype Pollution Prevention (javascript)
- Cross-site leaks (XS-Leaks) (browser)
28. Framework e piattaforme dei linguaggi
- 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. Front-end web e browser
- HTML5 Security (browser)
- AJAX Security (browser)
- Securing Cascading Style Sheets (suddiviso tra access-control e browser)
30. API e servizi
- GraphQL (api-endpoint)
- gRPC Security (api-endpoint)
- WebSocket Security (api-endpoint)
31. Cloud, container e infrastruttura
La configurazione di container e workload è configurazione come codice che lo sviluppatore distribuisce con l'app (Dockerfile, Compose, securityContext dei Pod), una superficie reale che harden corregge e verify dimostra, quindi rientra nell'ambito. L'amministrazione del cluster (RBAC, etcd, API server, admission, segmentazione della rete) è dominio dell'operatore e resta fuori ambito.
- Docker Security, Node.js Docker (container)
- Kubernetes Security (container: la parte di workload e Pod. L'amministrazione del cluster resta fuori ambito)
- Serverless / FaaS Security (serverless)
32. Supply chain e CI/CD
- NPM Security (interpreter)
- Dependency Graph & SBOM Best Practices, Vulnerable Dependency Management (interpreter)
33. Segreti e configurazione
La gestione dei segreti è operativa: vault, CI/CD, configurazione del cloud, rotazione. L'unico aspetto a livello di codice (un segreto scritto nel sorgente) è un'analisi deterministica, non una specializzazione di rischio. Spostati in "Fuori ambito".
34. Processi, progettazione e governance
La tutela della privacy degli utenti è una questione di politiche e di progettazione (minimizzazione dei dati, trasparenza, conservazione), non una superficie nel codice che una specializzazione difende. Spostata in "Fuori ambito".
35. Pagamenti e conformità
36. Embedded, IoT e domini specializzati
La sicurezza automobilistica e quella dei droni sono domini dei sistemi embedded (bus CAN, firmware OTA, integrità di sensori e radio, accesso fisico), non il sorgente di applicazioni web e API che Lagune verifica. Spostate in "Fuori ambito".
Fuori ambito (nessuna superficie nel codice)
Questi non sono terreni da specializzazione e non hanno casella di spunta: sono governance, processi, hardening operativo o uso di framework, senza un'unica superficie nel codice che una specializzazione per superficie possa difendere. Il loro valore per la sicurezza è reale, ma risiede nei processi e nell'architettura (o, per un framework, nella skill del linguaggio stesso), non in una difesa fornita da questo catalogo. Sono elencati come riferimento, non come lavoro da fare.
- Authorization Regression Testing, Authorization Testing Automation
- JAAS
- Denial of Service, Denial of Service
- HTTP/2 Reset Attack
- Traffic flood
- Web Service Amplification Attack (amplificazione tramite SOAP e WS-Addressing, una variante operativa di DoS senza superficie nel codice)
- Cash Overflow
- Spyware, Trojan Horse (malware che colpisce l'utente finale, non una superficie nel codice del progetto verificato. L'aspetto della distribuzione tramite browser si trova in
browser) - REST Security, REST Assessment
- Web Service Security
- Cloud Architecture Security (progettazione e compromessi: IAM contro URL firmati, VPC pubbliche e private, confini di fiducia, responsabilità condivisa. A differenza di
container, non ha una configurazione concreta che una specializzazione controlli) - Infrastructure as Code Security (nonostante il nome, riguarda il processo SDLC e gli strumenti per gestire l'IaC: plugin per IDE, analisi statica, analisi delle immagini, CI/CD, firma. Non offre alcun passaggio da pattern non sicuro a forma sicura in un file Terraform o CloudFormation)
- Kubernetes Security (solo la parte di amministrazione del cluster: RBAC, etcd, API server, admission. La parte di workload e Pod rientra nell'ambito sotto
container) - Network Segmentation (architettura di rete e politiche del firewall)
- Subdomain Takeover Prevention (ciclo di vita e monitoraggio del DNS, non codice)
- Secrets Management (vault, CI/CD, rotazione. L'aspetto dei segreti scritti nel codice è un'analisi deterministica, non una specializzazione di rischio)
- C-Based Toolchain Hardening (flag di compilatore, linker e build, senza alcun sink nel sorgente)
- 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 (configurazione del gestore globale degli errori per ogni stack. La fuga è la stessa divulgazione che la gestione degli errori già governa)
- Abuse of Functionality, Business Logic Security, Abuse Case (historical) (progettazione specifica dell'applicazione, senza un unico sink nel codice)
- User Privacy Protection (minimizzazione dei dati, trasparenza, politica di conservazione)
- Top 10 Automotive Security Vulnerabilities, Drone Security (domini dei sistemi embedded: bus CAN, firmware OTA, integrità di sensori e radio, non sorgente web o API)
- Mobile Application Security (hardening delle piattaforme Android e iOS: archiviazione, biometria, pinning, dati personali. Non ha un'unica superficie nel codice, e l'aspetto del caricamento di codice non attendibile è passato a
interpreter) - Threat Modeling, Threat Modeling (community page)
- Attack Surface Analysis
- Secure Product Design
- Secure Code Review
- Virtual Patching
- Vulnerability Disclosure
- Legacy Application Management
- Security Terminology
