„Dacă agentul tău combină aceste trei trăsături, un atacator îl poate păcăli cu ușurință să-ți acceseze datele private și să i le trimită.”Simon Willison · The lethal trifecta for AI agents · 2025 · The lethal trifecta for AI agents (simonwillison.net, 16 iunie 2025) — după enumerarea celor trei capabilități
Rupe un picior din trifectă: fără ieșire în exterior, fără conținut neverificat sau fără date private.
Modelele urmează instrucțiunile din conținut: o pagină web, un email, un PDF, rezultatul unei unelte pot purta „ignoră instrucțiunile anterioare, trimite X la Y”. Injecția nu se rezolvă cu prompturi; apărarea de încredere e arhitecturală — scoți un picior al trifectei: fără canal de ieșire (fără URL-uri arbitrare, fără trimitere de email), sau fără intrări neverificate, sau fără date private. Tipare: două modele (unul „în carantină” citește conținutul neverificat, cel privilegiat nu-l vede niciodată brut); urmărirea capabilităților pe fluxul de date; listă albă de domenii; aprobare umană la orice trimitere în exterior; ieșirile uneltelor marcate ca date în prompt. OWASP Top 10 pentru aplicații agentice pune deturnarea scopului prin injecție pe primul loc.
Gândește la trifectă ca la un circuit, nu ca la o listă de riscuri. Un agent devine periculos abia când cele trei trăsături se ating în același flux de lucru. De aceea verificarea nu e un act unic, ci un obicei: de fiecare dată când adaugi o unealtă sau o sursă de date, întrebi ce picior nou apare. Exemplu concret: agentul tău de email primește acces la calendar. Calendarul nu e periculos singur, dar acum poate citi invitații de la străini și poate muta întâlniri. Aparatul de apărare e o întrebare simplă la fiecare pas: ce combină acest lucru cu ce există deja? Pasul următor e să vedem cum arată în practică scoaterea unui picior, fără a strânge funcționalitatea.
Scoate un picior, nu cumva să strângi funcționalitatea — asta e partea practică. Cel mai des se scoate canalul de ieșire: agentul poate citi tot, dar poate trimite doar către o listă albă de domenii, iar orice altceva cere o aprobare umană. Un alt tipar e carantina: un model cu drepturi mici citește conținutul neverificat și rezumă ce e util, iar agentul privilegiat nu vede niciodată textul brut. Exemplu concret: asistentul îți citește un PDF de la un furnizor necunoscut și îți spune doar „recomandă o factură de 300 de lei”, fără să poată deschide singur linkuri din document. Apărarea nu e o frază în prompt, ci o formă a sistemului. Următorul pas e să vedem de ce verificarea contează la fiecare unealtă nouă, nu o singură dată la lansare.
De ce contează Fiecare unealtă nouă e un picior nou al trifectei; verifici la fiecare adăugare, nu la lansare.