Proteggi il tuo AI per il coding: perché serve tracciare ogni mossa (subito)
Il Potere Nascosto (e i Rischi) degli Agenti AI per il Codice
Nel 2024, se sviluppi software, sai bene quanto siano rivoluzionari gli assistenti AI per il coding. Descrivi una funzione, l'agente analizza il tuo codice, apporta modifiche, lancia test e committà i cambiamenti. Tutto mentre tu ti godi un caffè. Un vero game changer.
Ma c'è un problema scomodo: la maggior parte degli sviluppatori non ha idea di cosa combinino questi agenti in esecuzione.
Quando l'agente esegue un comando shell, scrive un file o legge config, lo fa con i tuoi permessi utente, nel tuo filesystem, usando le tue credenziali. Vede le tue chiavi SSH, i token AWS, le variabili d'ambiente. Tu vedi solo la chat amichevole. Sotto il cofano? Un mistero totale.
Uno Scenario Reale (e Spaventoso)
Pensa a questo: chiedi all'agente di rifattorizzare un modulo di autenticazione incasinato. Legge i file sorgente, ottimizza, avvia i test. Ma poi, per un'iniezione di dipendenze malevole, un attacco di prompt injection o un semplice errore di ragionamento, prova a sbirciare in ~/.ssh/known_hosts. E tenta di alterare ~/.aws/credentials/.
Te ne accorgi? Difficile, a meno che non sia già troppo tardi.
È il fronte della sicurezza che discutiamo troppo poco. Ed è per questo che il monitoraggio runtime per agenti AI sta diventando essenziale.
Arriva Prempti: Falco per i Tuoi Agenti di Coding
La community open-source security non sta a guardare. Usando tool runtime esistenti – in particolare il motore di detection Falco, standard del settore – su ogni tool call degli agenti AI, otteniamo visibilità strutturata e controllo delle policy nel momento esatto in cui l'agente agisce.
Funziona così:
Prima che l'agente invochi un tool (lettura file, scrittura, comando bash, ecc.), Prempti lo intercetta. La richiesta va a Falco, che la valuta sulle tue policy di sicurezza. Falco risponde con un verdetto:
- Allow – l'azione va avanti
- Deny – bloccata, con spiegazione all'agente
- Ask – ti chiede conferma interattiva
Niente moduli kernel. Niente root. Niente container. È un servizio leggero in user-space che si aggancia al pipeline dei tool call dell'agente.
L'agente non si ferma lì: riceve una spiegazione strutturata del perché. E la passa a te, rendendo la sicurezza visibile invece che opaca.
Due Modalità: Osserva, Poi Blocca
Prempti ha due modalità intelligenti:
Monitor mode ti mostra tutto ciò che l'agente tocca, senza blocchi. Usala per qualche sessione, capisci i comportamenti reali, regola le regole, acquisisci fiducia.
Guardrails mode (quella di default) applica i verdetti. Blocca i deny, ti interpella per gli ask, lascia passare gli allow.
Cambiarle è facile:
premptictl mode monitor # solo osservazione
premptictl mode guardrails # applica i controlli
premptictl logs # vedi gli eventi live
Così dovrebbe funzionare ogni tool di sicurezza: prima osserva, poi agisci con sicurezza.
Scrivere Policy: Facile e Familiare
Se conosci le regole Falco, le policy per agenti ti sembreranno naturali. Ecco un esempio che blocca un vettore di attacco antico: piping diretto a un interprete shell (classico bersaglio di prompt injection):
- rule: Deny pipe to shell
desc: Block piping content to shell interpreters
condition: >
tool.name = "Bash"
and (tool.input_command contains "| sh"
or tool.input_command contains "| bash"
or tool.input_command contains "| zsh")
output: >
Falco blocked piping to a shell interpreter (%tool.input_command)
priority: CRITICAL
source: coding_agent