Ghid tehnic

OWASP Top 10:
cele zece riscuri, explicate practic

Lista de referință a industriei pentru securitatea aplicațiilor web, tradusă în ce înseamnă fiecare categorie pentru o aplicație reală și ce se testează la ea.

OWASP Top 10 nu este o listă de vulnerabilități, ci o listă de <em>categorii</em> de riscuri, actualizată periodic pe baza datelor din zeci de mii de aplicații. Este referința pe care o citează majoritatea contractelor și a cadrelor de conformitate atunci când spun „testare conform metodologiei recunoscute". Ghidul de mai jos parcurge ediția 2021 — cea în uz general — și arată, pentru fiecare categorie, ce se verifică efectiv într-un test.

A01 — Controlul defectuos al accesului

Prima poziție, și cea mai constantă sursă de incidente reale. Aplicația verifică cine ești, dar nu verifică dacă ai voie să faci exact acțiunea cerută. În practică: schimbi un identificator în URL și vezi factura altui client; apelezi direct un endpoint de administrare pe care interfața nu ți-l arată; modifici un câmp de rol într-o cerere și devii administrator. Niciun scaner nu prinde aceste cazuri, pentru că nu știe cine ar trebui să vadă ce.

A02 — Eșecuri criptografice

Date sensibile transmise sau stocate fără protecție adecvată: trafic pe HTTP, parole stocate cu algoritmi depășiți, chei în codul sursă, date de card sau acte de identitate ținute în clar „temporar". Categoria se numea anterior „expunerea datelor sensibile", iar redenumirea e utilă: problema nu e doar expunerea, ci alegerea greșită a mecanismului de protecție.

A03 — Injecție

Date furnizate de utilizator ajung într-un interpretor fără separare: SQL, comenzi de sistem, LDAP, XPath, template-uri de server. Include și cross-site scripting, mutat aici în ediția 2021. Este categoria pe care uneltele automate o acoperă cel mai bine — și tocmai de aceea, într-un test manual, atenția se duce spre variantele pe care uneltele le ratează: injecția de al doilea ordin, contextele neobișnuite, filtrele care se pot ocoli.

A04 — Design nesigur

Categorie apărută în 2021 și cea mai greu de automatizat: aplicația face exact ce a fost proiectată să facă, iar proiectul este problema. Un flux de recuperare a parolei care se bazează pe o întrebare publică, o limită de rambursare care lipsește din logică, un proces de comandă care poate fi reluat. Aici nu există semnătură de detectat — doar cineva care înțelege business-ul și încearcă să îl folosească greșit.

A05 — Configurare greșită de securitate

Conturi implicite rămase active, mesaje de eroare care dezvăluie structura internă, servicii de administrare expuse, permisiuni prea largi în cloud, funcții de depanare lăsate pornite în producție. Este categoria cu cel mai bun raport între efortul de remediere și riscul eliminat — și, în majoritatea testelor, sursa primei căi de intrare.

A06 — Componente vulnerabile și învechite

Biblioteci, framework-uri și servicii care au vulnerabilități cunoscute și publicate. Categoria care se rezolvă cel mai bine cu automatizare: un inventar al dependențelor și o verificare recurentă rezolvă majoritatea cazurilor. Dificultatea reală nu e detectarea, ci actualizarea — o dependență veche prinsă adânc în cod devine un proiect, nu un patch.

A07 — Eșecuri de identificare și autentificare

Parole slabe permise, lipsa limitării încercărilor, sesiuni care nu expiră, token-uri previzibile, recuperare de cont care poate fi abuzată, autentificare multifactor care poate fi ocolită printr-un flux alternativ. Ultimul caz apare mai des decât s-ar crede: MFA pus pe interfața web, dar nu și pe API-ul mobil.

A08 — Eșecuri de integritate a software-ului și a datelor

Cod sau date acceptate fără verificarea provenienței: actualizări automate nesemnate, biblioteci luate de la surse necontrolate, deserializare a unor obiecte venite de la utilizator, pipeline-uri de livrare în care oricine poate introduce un artefact. Este categoria care corespunde atacurilor asupra lanțului de aprovizionare — motiv pentru care NIS2 și legislația aliniată la ea o tratează separat.

A09 — Eșecuri de jurnalizare și monitorizare

Categoria care nu provoacă niciodată singură o breșă, dar decide cât durează. Evenimente de securitate nejurnalizate, jurnale păstrate doar local și șterse de atacator, alerte care nu ajung la nimeni, imposibilitatea de a reconstitui ce s-a întâmplat. Într-un test, se măsoară simplu: la final, echipa este întrebată ce a observat — iar răspunsul spune mai mult decât lista de constatări.

A10 — Falsificarea cererilor din partea serverului (SSRF)

Aplicația preia o adresă furnizată de utilizator și o accesează ea însăși. Atacatorul o îndreaptă spre rețeaua internă sau spre serviciul de metadate al furnizorului de cloud și obține astfel acces la lucruri pe care nu le poate atinge direct. A intrat în Top 10 în 2021 tocmai pentru că arhitecturile din cloud i-au mărit impactul: o singură cerere bine aleasă poate returna credențiale.

Ce prinde automatizarea și ce cere om

CategorieAcoperire prin scanare automatăCe adaugă testarea manuală
A01 Control al accesuluiFoarte slabăTestare între roluri și între clienți, cu conturi reale
A02 CriptografieParțială (protocoale, certificate)Verificarea stocării efective și a gestionării cheilor
A03 InjecțieBunăInjecție de al doilea ordin, contexte și filtre ocolibile
A04 Design nesigurInexistentăAbuz de flux de business, singura metodă disponibilă
A05 ConfigurareBunăEvaluarea impactului real în contextul arhitecturii
A06 Componente învechiteFoarte bunăConfirmarea exploatabilității, nu doar a versiunii
A07 AutentificareParțialăOcolirea MFA prin fluxuri alternative, abuz de recuperare
A08 IntegritateSlabăAnaliza lanțului de livrare și a deserializării
A09 JurnalizareInexistentăMăsurarea a ce a fost detectat efectiv în timpul testului
A10 SSRFParțialăPivotarea către servicii interne și metadate de cloud
Cum se folosește lista în practică: ca structură de raport și ca limbaj comun între securitate și dezvoltare, nu ca listă de bifat. O aplicație „fără constatări OWASP Top 10" poate avea totuși un defect de logică specific business-ului, care nu intră în nicio categorie.

Întrebări frecvente

Ce este OWASP Top 10?

Este lista celor zece categorii de riscuri de securitate cele mai importante pentru aplicațiile web, publicată de Open Worldwide Application Security Project și actualizată periodic pe baza datelor colectate din zeci de mii de aplicații reale. Nu este o listă de vulnerabilități individuale, ci de categorii — motiv pentru care este folosită ca structură de raportare și ca referință metodologică în contracte și cadre de conformitate.

Un test „conform OWASP Top 10" acoperă tot?

Nu, și e important de știut înainte de a semna. Lista acoperă categoriile cele mai frecvente, dar nu include defectele specifice logicii tale de business — un flux de rambursare care poate fi reluat sau o limită care lipsește nu apar în nicio categorie. Un test bun folosește Top 10 ca structură minimă și adaugă testarea funcțională a fluxurilor care aduc bani sau expun date.

Care categorie apare cel mai des în testele reale?

Controlul defectuos al accesului (A01) și configurarea greșită (A05). Prima pentru că autorizarea trebuie verificată la fiecare acțiune, iar aplicațiile cresc mai repede decât regulile lor; a doua pentru că infrastructura se schimbă des și fiecare schimbare lasă în urmă ceva — un serviciu expus, un cont implicit, o permisiune prea largă în cloud. Amândouă se remediază relativ ieftin odată identificate.

Cât de des se actualizează lista?

La câțiva ani, pe baza datelor colectate din aplicații reale și a unui sondaj în comunitate. Ediția 2021 a adus schimbări notabile — apariția categoriilor de design nesigur și de integritate a software-ului, mutarea cross-site scripting în categoria de injecție și intrarea SSRF în Top 10. Când citezi metodologia într-un contract, precizează ediția, ca să nu existe ambiguitate la audit.

Există o listă echivalentă pentru aplicații mobile și API-uri?

Da. OWASP publică liste separate pentru aplicații mobile și pentru securitatea API-urilor, plus ghiduri de verificare mai detaliate, cum este standardul ASVS pentru aplicații web. Pentru un produs care are și aplicație mobilă, și API public, un test complet le folosește pe toate trei — listele se suprapun doar parțial, iar API-ul este adesea partea cea mai puțin testată.

Ghiduri conexe

  • Cât costă un pentest — ce determină prețul, cum se estimează efortul și ce face o ofertă comparabilă cu alta.
  • DORA & TLPT — reziliența operațională digitală în sectorul financiar și testarea bazată pe amenințări.
  • ISO 27001 & SOC 2 — ce controale cer testare tehnică și ce dovezi acceptă auditorul.
  • Legea 48/2023 (Moldova) — cadrul național de securitate cibernetică: cui i se aplică și ce obligații aduce.
  • PCI DSS 4.0 — cerințele 11.3 și 11.4, testarea segmentării și ce înseamnă pentru procesatorii de plăți.
  • Pentest vs scanare de vulnerabilități — ce găsește fiecare, ce ratează și ce acceptă auditorii ca dovadă.
  • Cum te pregătești de pentest — perimetru, acces, reguli de angajament și tot ce se stabilește înainte de prima zi.

Acest material rezumă ediția 2021 a OWASP Top 10 în scop informativ. Lista este actualizată periodic de OWASP; verifică ediția în vigoare atunci când o citezi într-un contract sau într-un dosar de audit.

Vrei aplicația testată pe toate cele zece?

Programează o consultație gratuită: stabilim perimetrul și primești un test manual care merge dincolo de listă, în logica ta de business.