Injection
Injectarea apare atunci când datele furnizate de utilizator nu sunt validate, filtrate sau sanitizate corespunzător. Atacatorii pot trimite date ostile ca parte a unei comenzi sau interogări, permițând executarea de cod neautorizat.
Principalele tipuri de injectare includ:
A descinde din poziția A03:2021 la A05:2025, dar rămâne o vulnerabilitate critică prezentă în aproximativ 94% din aplicațiile testate cu o rată medie de incidență de 3.24%.
Statistici OWASP 2025: Injectarea afectează practic toate aplicațiile web și rămâne una din cele mai frequente și periculoase vulnerabilități.

SELECT * FROM users WHERE id = {id}
Dacă id este "1 OR 1=1" fără validare, va returna toți utilizatorii. SQL Injection permite recuperarea, modificarea sau ștergerea datelor.
exec("ping -c " + userInput)
Dacă userInput este "8.8.8.8; rm -rf /", va executa comanda malware. Permite execuția de comenzi arbitrare pe server.
{username: username, password: password}
Inputuri cum ar fi {"$ne": ""} permit bypass-ul autentificării în bazele NoSQL.
Inputuri malware în căutări LDAP permit eludarea autentificării și extragerea de informații din directoare.
{{{7*7}}}
Serverul evaluează expresia și returnează 49. Template injection poate permite execuția de cod pe server din template-uri nevalidate.
xpath_query = "//user[username='" + user_input + "']"
Inputuri cum ar fi "' or '1'='1" permit bypaszarea autentificării în documente XML. Permite efiltrarea de date sensibile din DOM.
${{message}} // JSF / Spring message
Dacă message vine din user input fără validare, un atacator poate injecta expresii care accesează variabile sensibile sau execută cod.