A01 Broken Access Control
Čo to znamená: používateľ sa dostane k dátam alebo funkciám, ktoré mu nepatria. Typicky ide o zmenu ID v URL alebo API, prístup k cudziemu zákazníkovi, obídenie role alebo spustenie administrátorskej akcie.
Čo overiť: autorizáciu na serveri pri každej citlivej operácii, oddelenie rolí a tenantov, vlastníctvo objektov, negatívne testy prístupov a pravidlo, že frontend nikdy nie je jedinou ochranou.
A02 Security Misconfiguration
Čo to znamená: aplikácia alebo infraštruktúra beží s chybným nastavením. Rizikom sú default účty, debug režim, zlé CORS pravidlá, slabé bezpečnostné hlavičky, otvorené administračné rozhrania alebo priveľa detailov v chybových hláškach.
Čo overiť: produkčné konfigurácie, bezpečnostné hlavičky, nastavenia cloudu, kontajnerov a web servera, oddelené prostredia, pravidelné baseline kontroly a odstránenie nepotrebných služieb.
A03 Software Supply Chain Failures
Čo to znamená: riziko neprichádza iba z vlastného kódu, ale aj zo závislostí, knižníc, kontajnerov, CI/CD pipeline, build serverov, repozitárov, image registrov alebo dodávateľov softvéru.
Čo overiť: sken závislostí, SBOM, podpisovanie artefaktov, kontrolu kontajnerových image, prístup do repozitárov, pinning verzií, proces aktualizácií a zodpovednosť dodávateľa za opravu zraniteľností.
A04 Cryptographic Failures
Čo to znamená: citlivé dáta nie sú správne chránené pri prenose, v databáze, v zálohách alebo v logoch. Problémom môžu byť slabé algoritmy, zlá správa kľúčov, tokeny v kóde alebo chýbajúce šifrovanie.
Čo overiť: TLS, šifrovanie dát, správu certifikátov a kľúčov, ukladanie hesiel, životnosť tokenov, maskovanie citlivých údajov a to, či sa tajomstvá nenachádzajú v repozitári alebo konfiguračných súboroch.
A05 Injection
Čo to znamená: útočník vloží do vstupu príkaz alebo obsah, ktorý aplikácia vykoná alebo nesprávne spracuje. Patria sem SQL/NoSQL injection, command injection, LDAP injection, template injection aj XSS.
Čo overiť: parametrizované dotazy, validáciu vstupov, escapovanie výstupov, bezpečnú prácu s API, obmedzenie systémových volaní, ochranu proti XSS a testy pre najrizikovejšie formuláre a endpointy.
A06 Insecure Design
Čo to znamená: bezpečnostná chyba je priamo v návrhu procesu alebo aplikácie. Aj správne napísaný kód môže byť zneužiteľný, ak workflow umožňuje obísť schválenie, vyčerpať zdroje alebo manipulovať s obchodnou logikou.
Čo overiť: threat modeling, bezpečnostné požiadavky v zadaní, limity a throttling, ochranu pred zneužitím workflow, rozhodnutia v architektúre a pravidelné review nových funkcií pred implementáciou.
A07 Authentication Failures
Čo to znamená: prihlasovanie alebo správa identity neodolá bežným útokom. Problémom sú slabé heslá, chýbajúce MFA, nebezpečný reset hesla, dlhé session, zlé tokeny alebo nedostatočná ochrana administrátorských účtov.
Čo overiť: MFA pre citlivé role, bezpečný password reset, session timeout, ochranu proti brute force, rotáciu tokenov, SSO/OIDC nastavenia, logging prihlásení a oddelenie privilegovaných účtov.
A08 Software or Data Integrity Failures
Čo to znamená: aplikácia dôveruje kódu, dátam alebo aktualizáciám bez overenia integrity. Útočník môže podvrhnúť balík, manipulovať s dátami, zmeniť konfiguráciu alebo zneužiť neoverený update mechanizmus.
Čo overiť: podpisy balíkov, kontrolu integrity buildov, schvaľovanie zmien, ochranu CI/CD tajomstiev, pravidlá pre migrácie dát, rollback, kontrolu konfigurácie a auditné stopy pri zmenách.
A09 Security Logging & Alerting Failures
Čo to znamená: aplikácia síce môže bežať, ale pri útoku nie je jasné, čo sa stalo. Chýbajú logy, logujú sa nesprávne udalosti, nikto ich nesleduje alebo sa pri incidente nespustí alert.
Čo overiť: logovanie zlyhaných prihlásení, zmien oprávnení, administrátorských akcií, chýb validácie, podozrivých API volaní, odosielanie do SIEM alebo dohľadu a test, či alert reálne vyvolá reakciu.
A10 Mishandling of Exceptional Conditions
Čo to znamená: aplikácia nezvláda výnimkové alebo neštandardné stavy bezpečne. Môže zlyhať otvorene, preskočiť kontrolu, odhaliť interné informácie, nekonzistentne spracovať transakciu alebo dovoliť obísť logiku pri chybe.
Čo overiť: spracovanie chýb, timeoutov, neúplných transakcií, súbežných požiadaviek, zlyhaní externých služieb, rate limitov, front a retry mechanizmov tak, aby systém pri chybe prešiel do bezpečného stavu.