Aplică OWASP Top 10 for LLM Applications dacă integrezi AI generativ

Subiect din roadmap-ul Bune practici: securitatea aplicațiilor web (OWASP) · parte din „OWASP Top 10 și standarde”

Integrarea modelelor de limbaj mare (LLM) introduce vectori de atac unici, departe de vulnerabilitățile tradiționale web. Ignorarea OWASP Top 10 pentru LLM te expune la riscuri critice precum scurgeri de date sensibile, injecții de prompt care manipulează comportamentul modelului sau accesul neautorizat la funcționalități interne. Această practică este esențială pentru a garanta confidențialitatea, integritatea și siguranța aplicațiilor bazate pe AI generativ.

Cum o aplici

  1. Validarea input-ului: Sanitizează toate intrările utilizatorului înainte de a le trimite către model, filtrând caracterele periculoase sau structurile suspecte.
  2. Izolarea datelor: Asigură-te că modelul nu are acces direct la bazele de date sensibile; folosește un strat intermediar (middleware) pentru a verifica permisiunile.
  3. Limitarea contextului: Trimite doar datele strict necesare pentru răspuns, reducând suprafața de atac pentru Prompt Injection.
  4. Monitorizarea ieșirii: Verifică răspunsurile generate pentru conținut toxic, bias sau divulgarea accidentală de informații interne.

Exemplu

Varianta greșită: trimiți direct contextul complet al utilizatorului, inclusiv chei API sau date personale, în prompt.

# GREȘIT: Expunere totală a contextului
prompt = f"Rezumată următoarele date: {user_data}"
response = llm.generate(prompt)

Varianta corectă: filtrezi datele și folosești parametri de siguranță.

# CORECT: Filtrare și izolare
safe_data = filter_sensitive_info(user_data)
prompt = f"Rezumată doar aspectele publice ale acestui text: {safe_data}"
response = llm.generate(prompt, temperature=0.2) # Temperatură mică reduce haosul

Cum verifici

Utilizează suite de testare automatizate precum Garak sau Promptfoo pentru a scania vulnerabilități comune. Efectuează teste de penetrare manuale concentrându-te pe Jailbreaking (încercarea de a ocoli restricțiile de siguranță). Monitorizează logurile pentru anomalii în frecvența cererilor sau tipare de interogare suspecte.

Greșeli frecvente

  • Încrederea orbă în model: Presupunerea că LLM va refuza întotdeauna cereri imorale, fără validare la nivel de aplicație.
  • Neglijarea Data Leakage: Trimiterea implicită a tuturor metadatelor sau istoricului conversației către modelul extern.
  • Lipsa rate-limiting: Neaplicarea limitelor de rată pentru endpoint-urile LLM, facilitând atacuri de tip DoS sau costuri necontrolate.

Resurse gratuite

Alte subiecte din „OWASP Top 10 și standarde”