Ten dokument przyporządkowuje każdy atak (www-community) i każdy Cheat Sheet (CheatSheetSeries) OWASP do kategorii bezpieczeństwa, z linkiem do jego kanonicznej, publicznej strony. W obrębie kategorii równoważne pozycje dzielą jeden wiersz listy kontrolnej: ataki i Cheat Sheets dotyczące tego samego ryzyka stoją obok siebie, rozdzielone przecinkami. Pozycje bez bezpośredniego odpowiednika mają własny wiersz.
- Wszystkie zasługi należą do OWASP. Ataki znajdziesz pod adresem
https://owasp.org/www-community/attacks/<attack>, a Cheat Sheets pod adresemhttps://cheatsheetseries.owasp.org/cheatsheets/<cheat>.html.
1. Ataki typu injection (ogólne)
- 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. Injection w SQL i bazach danych
- 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 w systemie operacyjnym
- Command Injection, OS Command Injection Defense (interpreter)
4. Injection w LDAP, XPath i 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) i 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. Przekierowania i przekazywanie żądań
- Open Redirect, Unvalidated Redirects and Forwards (network)
- Execution After Redirect (EAR) (browser)
8. Kontrola dostępu i autoryzacja
- 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. Uwierzytelnianie i dane uwierzytelniające
- 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. Zarządzanie sesją
- Session fixation, Session hijacking attack, Session Prediction, Session Management (access-control)
- Cookie Theft Mitigation (access-control)
11. Federacja tożsamości (OAuth, SAML i JWT)
- OAuth 2.0 Protocol (federation)
- SAML Security (federation)
- JSON Web Token for Java (federation)
12. Kryptografia i bezpieczeństwo transportu
- 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 i obsługa plików
- Path Traversal (path)
- Binary Planting (path)
- Windows ::DATA Alternate Data Stream (path)
- Embedding Null Code (path)
- File Upload (upload)
15. Nadużycia protokołu HTTP (nagłówki, cache, splitting)
- HTTP Response Splitting, Cross-User Defacement (interpreter)
- HTTP Security Response Headers (podzielone między browser, transport, http-request i access-control)
- Cache Poisoning (interpreter)
- IP Spoofing via HTTP Headers (http-request)
16. Kodowanie i content spoofing
- Unicode Encoding (interpreter)
- Double Encoding (interpreter)
- Content Spoofing (browser)
17. Injection w plikach CSV i arkuszach kalkulacyjnych
- CSV Injection (csv)
18. CORS (Cross-Origin Resource Sharing)
- CORS OriginHeaderScrutiny (http-request)
- CORS RequestPreflightScrutiny (http-request)
19. Odmowa usługi (DoS)
20. Bezpieczeństwo pamięci i kod natywny
- Buffer Overflow Attack, Buffer Overflow via Environment Variables (c-cpp)
- Format string attack (c-cpp)
21. Mobile code i wykonywanie niezaufanego kodu
- Mobile code invoking untrusted mobile code (interpreter)
- Mobile code non-final public field (java)
- Mobile code object hijack (java)
22. Deserializacja
- Deserialization (podzielone między python, ruby, php, java i dotnet)
23. Złośliwe oprogramowanie i zagrożenia po stronie klienta
- Man-in-the-browser attack, Browser Extension Security Vulnerabilities (browser)
- Third Party JavaScript Management (browser)
24. Logi, wypieranie się działań i obsługa błędów
- Log Injection, Logging, Application Logging Vocabulary (interpreter)
- Repudiation Attack (interpreter)
25. Logika biznesowa i nadużywanie funkcjonalności
Logika biznesowa i nadużywanie funkcjonalności nie mają jednej powierzchni ataku w kodzie, której mogłaby bronić specjalizacja poświęcona jednej powierzchni: obroną jest projekt dopasowany do konkretnej aplikacji, oparty na tym samym rozumowaniu, które prowadzi modelowanie zagrożeń w projekcie. Przeniesione do sekcji "Poza zakresem".
26. Bezpieczeństwo AI, LLM i agentów
- 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 i cross-site leaks
- Prototype Pollution Prevention (javascript)
- Cross-site leaks (XS-Leaks) (browser)
28. Frameworki i platformy językowe
- 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. Frontend webowy i przeglądarka
- HTML5 Security (browser)
- AJAX Security (browser)
- Securing Cascading Style Sheets (podzielone między access-control i browser)
30. API i usługi
- GraphQL (api-endpoint)
- gRPC Security (api-endpoint)
- WebSocket Security (api-endpoint)
31. Chmura, kontenery i infrastruktura
Konfiguracja kontenerów i obciążeń to configuration as code, którą deweloper dostarcza razem z aplikacją (Dockerfile, Compose, securityContext poda), czyli realna powierzchnia ataku, na której harden wdraża poprawki, a verify wykazuje, że działają, dlatego należy do zakresu. Administracja klastrem (RBAC, etcd, serwer API, admission, segmentacja sieci) to domena operatora i pozostaje poza zakresem.
- Docker Security, Node.js Docker (container)
- Kubernetes Security (container: część dotycząca obciążeń i podów. Administracja klastrem pozostaje poza zakresem)
- Serverless / FaaS Security (serverless)
32. Łańcuch dostaw i CI/CD
- NPM Security (interpreter)
- Dependency Graph & SBOM Best Practices, Vulnerable Dependency Management (interpreter)
33. Sekrety i konfiguracja
Zarządzanie sekretami to kwestia operacyjna: sejfy na sekrety, CI/CD, konfiguracja chmury, rotacja. Jedyny aspekt na poziomie kodu (sekret zapisany na sztywno w kodzie źródłowym) wymaga deterministycznego skanowania, a nie specjalizacji poświęconej ryzyku. Przeniesione do sekcji "Poza zakresem".
34. Procesy, projektowanie i governance
Ochrona prywatności użytkowników to kwestia polityk i projektowania (minimalizacja danych, przejrzystość, retencja), a nie powierzchnia ataku w kodzie, której broni specjalizacja. Przeniesione do sekcji "Poza zakresem".
35. Płatności i zgodność z regulacjami
36. Systemy wbudowane, IoT i dziedziny specjalistyczne
Bezpieczeństwo pojazdów i dronów to domena systemów wbudowanych (magistrala CAN, firmware OTA, integralność czujników i łączności radiowej, dostęp fizyczny), a nie kod źródłowy aplikacji webowych i API, który audytuje Lagune. Przeniesione do sekcji "Poza zakresem".
Poza zakresem (brak powierzchni ataku w kodzie)
Te pozycje nie są obszarem działania specjalizacji i nie mają pola wyboru: dotyczą governance, procesów, utwardzania operacyjnego albo korzystania z frameworków i nie mają jednej powierzchni ataku w kodzie, której mogłaby bronić specjalizacja poświęcona jednej powierzchni. Ich wartość dla bezpieczeństwa jest realna, ale leży w procesach i architekturze (albo, w przypadku frameworka, we własnym skillu danego języka), a nie w obronie, którą dostarcza ten katalog. Wymieniamy je jako punkt odniesienia, a nie jako zadania do wykonania.
- Authorization Regression Testing, Authorization Testing Automation
- JAAS
- Denial of Service, Denial of Service
- HTTP/2 Reset Attack
- Traffic flood
- Web Service Amplification Attack (amplifikacja przez SOAP/WS-Addressing, operacyjny wariant DoS bez powierzchni ataku w kodzie)
- Cash Overflow
- Spyware, Trojan Horse (złośliwe oprogramowanie na urządzeniach użytkowników końcowych, a nie powierzchnia ataku w kodzie audytowanego projektu. Aspekt dostarczania przez przeglądarkę należy do
browser) - REST Security, REST Assessment
- Web Service Security
- Cloud Architecture Security (projektowanie i kompromisy: IAM a podpisane adresy URL, publiczne i prywatne VPC, granice zaufania, model współdzielonej odpowiedzialności. W odróżnieniu od
containernie zawiera konkretnej konfiguracji, którą sprawdzałaby specjalizacja) - Infrastructure as Code Security (wbrew nazwie dotyczy procesów SDLC i narzędzi do zarządzania IaC: wtyczek IDE, analizy statycznej, skanowania obrazów, CI/CD, podpisywania. Nie pokazuje w żadnym pliku Terraform ani CloudFormation drogi od niebezpiecznego wzorca do bezpiecznej postaci)
- Kubernetes Security (tylko część dotycząca administracji klastrem: RBAC, etcd, serwer API, admission. Część dotycząca obciążeń i podów należy do zakresu w ramach
container) - Network Segmentation (architektura sieci i polityka firewalla)
- Subdomain Takeover Prevention (cykl życia i monitorowanie DNS, a nie kod)
- Secrets Management (sejfy na sekrety, CI/CD, rotacja. Aspekt sekretów zapisanych na sztywno w kodzie wymaga deterministycznego skanowania, a nie specjalizacji poświęconej ryzyku)
- C-Based Toolchain Hardening (flagi kompilatora, linkera i budowania, bez sinka w kodzie źródłowym)
- 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 (globalna konfiguracja obsługi błędów w danym stosie. Wyciek to ta sama ekspozycja danych, którą już reguluje obsługa błędów)
- Abuse of Functionality, Business Logic Security, Abuse Case (historyczny) (projekt dopasowany do konkretnej aplikacji, bez jednego sinka w kodzie)
- User Privacy Protection (minimalizacja danych, przejrzystość, polityka retencji)
- Top 10 Automotive Security Vulnerabilities, Drone Security (domeny systemów wbudowanych: magistrala CAN, firmware OTA, integralność czujników i łączności radiowej, a nie kod źródłowy aplikacji webowych i API)
- Mobile Application Security (utwardzanie platform Android i iOS: przechowywanie danych, biometria, pinning, dane osobowe. Nie ma jednej powierzchni ataku w kodzie, a aspekt ładowania niezaufanego kodu trafił do
interpreter) - Threat Modeling, Threat Modeling (strona społeczności)
- Attack Surface Analysis
- Secure Product Design
- Secure Code Review
- Virtual Patching
- Vulnerability Disclosure
- Legacy Application Management
- Security Terminology
