A02:2021 – Eșecuri Criptografice
Cryptographic Failures
Eșecurile criptografice se referă la implementarea incorectă sau insuficientă a mecanismelor de criptare pentru protejarea datelor sensibile. Această categorie se concentrează pe verificarea protecției datelor în tranzit și în repaus, inclusiv parole, informații de card de credit, date medicale, informații personale și secrete de afaceri.
Această vulnerabilitate a coborât de pe poziția 3 (în 2017) pe poziția 2 în topul OWASP 2021, fiind prezentă în aproximativ 29% din aplicațiile testate, cu o rată de incidență de peste 4,5%.

Exemplu în imagine: un site care nu aplică TLS poate permite unui atacator să fure cookie-ul de sesiune al utilizatorului, să îl modifice și să deturneze sesiunea autentificată, obținând acces la datele private ale utilizatorului.
1. Transmiterea datelor în text clar
Utilizarea protocolului HTTP în loc de HTTPS pentru transmiterea datelor sensibile, permițând atacatorilor să intercepteze și să citească informațiile transmise.
2. Utilizarea algoritmilor criptografici slabi sau depreciați
Folosirea algoritmilor precum MD5 sau SHA-1 pentru stocarea parolelor, care sunt vulnerabili la atacuri de forță brută sau de tip rainbow table.
3. Stocarea necorespunzătoare a cheilor criptografice
Includerea cheilor de criptare direct în codul sursă sau în fișiere de configurare neprotejate, permițând accesul neautorizat la acestea.
4. Generarea aleatoare slabă
Utilizarea generatorilor de numere pseudo-aleatoare predictibile pentru crearea token-urilor de sesiune sau a valorilor criptografice.