Asistent de suport pentru un magazin online
Chatbotul răspunde despre comenzi și livrări în română și rusă. Limităm contextul la documentele publice și la comanda utilizatorului autentificat, fără acces la baza completă de clienți.
Control de acces pe fiecare document din RAG
Securitatea aplicațiilor LLM este o disciplină nouă cu greșeli deja previzibile: instrucțiuni ascunse în conținutul citit de model, răspunsuri folosite fără filtrare, date confidențiale ajunse în context și agenți cu prea multe drepturi. Construim și testăm asistenți AI pentru firme din Moldova, cu date păstrate în Frankfurt și acces controlat pe fiecare document.
Lista OWASP pentru aplicații LLM are zece intrări, dar patru explică majoritatea incidentelor reale. Prompt injection: modelul citește un document sau o pagină care conține instrucțiuni și le execută. Tratarea nesigură a răspunsului: textul generat ajunge direct în HTML, în SQL sau într-o comandă de sistem. Scurgerea de date sensibile: contextul include documente pe care utilizatorul nu avea dreptul să vadă. Agenție excesivă: agentul are chei și permisiuni pentru acțiuni care n-ar trebui să fie automate.
Un asistent nu se testează cu douăzeci de întrebări scrise de mână. Rulăm suite automate de atac, promptfoo și garak, care generează mii de variante de injecție, încercări de extragere a instrucțiunilor de sistem, evadări din rol și cereri care ar duce la scurgeri de date. Partea ofensivă folosește exact aceeași automatizare, plus injecții indirecte plantate în conținut pe care modelul îl va citi mai târziu. Testul se repetă la fiecare schimbare de prompt, de model sau de sursă.
Cele mai multe scurgeri din asistenți nu vin din model, vin din index. Dacă baza vectorială conține toate documentele firmei, orice utilizator poate ajunge la ele printr-o întrebare bine formulată. Punem filtrare pe metadate la fiecare căutare, cu aceleași drepturi ca în aplicație, și verificăm rezultatul înainte de a-l trimite în context. Datele personale se redactează la ingestie, nu la afișare. Indexul stă pe infrastructura ta, iar cererile către model se jurnalizează cu reținere limitată.
Pentru datele cu caracter personal prelucrate în Moldova se aplică Legea nr. 195/2024 și supravegherea CNPDCP, inclusiv atunci când prelucrarea se face printr-un asistent AI. Dacă produsul tău ajunge la utilizatori din Uniunea Europeană intră și GDPR, cu acord de prelucrare conform articolului 28 și clauze contractuale standard, plus regula de transparență din legislația europeană privind inteligența artificială: omul trebuie să știe că vorbește cu un sistem automat. Infrastructura rămâne în Frankfurt.
Orele de DevOps, CyberSecurity și Programare sunt incluse în abonament, lună de lună: 1 h de la planul cPanel Advanced în sus, 1–8 h pe VPS și 5–10 h pe serverele dedicate, în funcție de plan, și 10 h pe GPU. Le ceri din panoul de client și propui termenul; cota expiră la sfârșitul lunii calendaristice, iar lucrul de peste cotă se acceptă și se facturează separat, în euro, cu TVA 20 % și factură SFS. Cu abonamentele care includ minimum 2 ore lunare îți construim un site de prezentare, iar cu cele care includ minimum 5 ore, un magazin online — din orele deja plătite în abonament.
Chatbotul răspunde despre comenzi și livrări în română și rusă. Limităm contextul la documentele publice și la comanda utilizatorului autentificat, fără acces la baza completă de clienți.
Contractele și specificațiile clienților nu se amestecă. Fiecare proiect are propriul spațiu în indexul vectorial, iar drepturile din aplicație se aplică identic la căutare.
Un agent care poate crea documente trebuie ținut scurt. Îi dăm doar operațiunile necesare, cerem confirmare umană pentru cele cu efect financiar și jurnalizăm fiecare apel.
Desenăm ce intră în model, din ce surse, cu ce drepturi și ce poate declanșa răspunsul. Fără harta asta, orice control pus mai târziu are găuri.
Punem filtrare pe metadate în căutare, redactare a datelor personale la ingestie, validarea răspunsului înainte de execuție și limite de rată pe utilizator.
Rulăm suitele de atac pe versiunea curentă, măsurăm ce trece și reparăm promptul, guardrails-ul sau drepturile agentului, apoi repetăm testul.
Primești configurația, raportul de red teaming și jurnalizarea cererilor cu reținere limitată. Retestăm la fiecare schimbare, din orele incluse în abonament.
O instrucțiune strecurată în datele pe care modelul le citește: un e-mail, o pagină, un document din index. Modelul nu distinge între instrucțiunea ta și textul citit, deci o poate executa. Apărarea nu e un singur filtru, ci separarea rolurilor, validarea ieșirii și drepturi minime.
Trei, în ordinea frecvenței: răspunde cu date pe care utilizatorul nu avea dreptul să vadă, execută instrucțiuni venite din conținut străin și declanșează acțiuni pe care nimeni nu le-a confirmat. Toate trei se tratează prin control de acces, filtrarea ieșirii și limitarea drepturilor agentului.
Secrete de infrastructură, chei de API, baze complete de clienți și documente pe care nu le-ai da unui angajat nou în prima zi. Dacă o informație trebuie să ajungă la model, ajunge filtrată, redactată și doar pentru utilizatorul care are dreptul la ea.
O listă a celor mai frecvente riscuri din aplicațiile construite peste modele de limbaj, publicată de aceeași comunitate care întreține lista clasică pentru aplicații web. O folosim ca listă de verificare la proiectare și ca structură pentru raportul de testare.
Prin acces la nivel de document, nu la nivel de index. Fiecare fragment purtat în context primește etichete de drepturi, iar căutarea filtrează după utilizatorul autentificat. Datele personale se redactează la ingestie, iar indexul rămâne pe infrastructura din Frankfurt.
Da, deși Republica Moldova nu este stat membru. Pentru utilizatorii din Uniunea Europeană se aplică GDPR, cu acord de prelucrare și clauze contractuale standard, iar legislația europeană privind inteligența artificială cere transparență: utilizatorul trebuie informat că interacționează cu un sistem automat.
Cere o sesiune de red teaming din panoul de client. Îți arătăm ce trece prin guardrails astăzi și ce se repară din orele incluse.