OpenCode, Cline, Roo Code, Aider, Continue e OpenHands: sicurezza degli agenti di coding open-source
Gli agenti di coding open-source sono attraenti per controllo, estensibilità e libertà nella scelta del modello. Ma proprio perché girano localmente, leggono repository ed eseguono comandi, spostano il rischio sul laptop dello sviluppatore, sul workspace, sulle chiavi locali e sulle policy del team.
Il punto non è decidere se l’AI sia utile o pericolosa per lo sviluppo: è molto più pratico. Si tratta di capire quali controlli servono quando un risultato generato o accelerato dall’AI entra in un prodotto, in un workflow aziendale o in un ambiente con dati reali. Questo articolo si rivolge a founder, CTO, developer e team IT/security che usano agenti open-source con esecuzione locale, accesso al repository, comandi shell, modelli configurabili e autonomia operativa.
Perché un’app che funziona non è necessariamente sicura
Gli strumenti AI riducono il tempo necessario per creare codice, interfacce, workflow, test e configurazioni. Questa velocità, però, può comprimere i passaggi che normalmente rendono il software affidabile: threat modeling, review, gestione dei segreti, controllo dei ruoli, validazione degli input, verifica delle dipendenze e test manuale dei percorsi critici.
Una demo funziona con un solo utente, dati fittizi e permessi impliciti. La stessa logica può fallire quando arrivano clienti reali, tenant multipli, ruoli diversi, API pubbliche, integrazioni, dati personali, pagamenti o automazioni con effetti esterni. Per questo la sicurezza va valutata sul comportamento reale dell’applicazione, non sulla promessa del tool che l’ha generata.
Locale non significa automaticamente sicuro
Un agente locale può leggere file, usare token Git, accedere a file .env, invocare tool installati, modificare repository e generare comandi shell. Se il workspace non è isolato, i permessi effettivi dell’agente coincidono con quelli dello sviluppatore che lo esegue, il che significa accesso potenzialmente illimitato a tutto ciò che è raggiungibile dalla macchina.
Modelli e provider configurabili
La libertà di scegliere modello, endpoint o provider è uno dei vantaggi degli agenti open-source, ma richiede controllo esplicito: occorre sapere quali dati vengono inviati, dove, con quale retention, quali log restano locali e quali connettori hanno accesso al progetto. Senza queste informazioni, la scelta del provider diventa un rischio di data exposure difficile da tracciare.
Sandbox, approval e audit
Per usare agenti open-source in contesti aziendali servono allowlist di comandi, approvazione esplicita per azioni distruttive, workspace isolati, branch dedicati, log delle tool call e review sistematica su diff e configurazioni generate. Questi controlli non sono opzionali quando l’agente opera su codice che andrà in produzione.
Rischi principali da controllare
- Agente con accesso a tutto il filesystem di progetto: verificare la configurazione, il comportamento a runtime e l’impatto sui dati reali.
- Comandi shell generati senza approval: verificare la configurazione, il comportamento a runtime e l’impatto sui dati reali.
- Lettura accidentale di file
.enve chiavi locali: verificare la configurazione, il comportamento a runtime e l’impatto sui dati reali. - Provider LLM non approvati dal team: verificare la configurazione, il comportamento a runtime e l’impatto sui dati reali.
- Estensioni o plugin con permessi ampi: verificare la configurazione, il comportamento a runtime e l’impatto sui dati reali.
- Diff troppo grandi o non atomici: verificare la configurazione, il comportamento a runtime e l’impatto sui dati reali.
- Prompt injection tramite file del repository: verificare la configurazione, il comportamento a runtime e l’impatto sui dati reali.
Questi rischi vanno sempre collegati al perimetro concreto. Un’app esposta richiede test applicativi manuali; una modifica critica al codice richiede review; un workflow interno richiede controllo di permessi e credenziali; un’app agentica richiede test su prompt, tool e output. La combinazione corretta dipende dall’impatto reale, non dal nome del tool utilizzato.
Controlli minimi prima del go-live
- Mappare utenti, ruoli, dati reali, integrazioni, ambienti e owner del servizio.
- Identificare quali parti sono state generate o modificate con AI e chi le ha revisionate.
- Verificare autorizzazioni server-side, tenant isolation e funzioni amministrative.
- Cercare segreti in codice, prompt, log, variabili d’ambiente, build e cronologia del repository.
- Controllare dipendenze, licenze, pacchetti, template, plugin e componenti generati.
- Testare input ostili, error handling, logging, rate limit e percorsi non previsti.
- Separare fix bloccanti, remediation pianificata e rischio residuo accettato.
- Ripetere il test o il retest dopo correzioni che toccano flussi critici.
Quando serve una verifica indipendente
Una verifica indipendente è necessaria quando l’app o il workflow gestisce dati reali, utenti esterni, ruoli, API, integrazioni aziendali, pagamenti, storage, workflow automatici o codice critico generato con AI. È necessaria anche quando il team non riesce a dimostrare quali parti siano state revisionate e quali controlli blocchino regressioni o abusi.
In questi casi, il perimetro consigliato da ISGroup comprende: Code Review, Secure Architecture Review e Software Assurance Lifecycle. Una review efficace non è generica: deve produrre finding riproducibili, priorità di remediation, indicazione del rischio residuo e, quando necessario, retest dopo le correzioni.
Domande operative per founder, CTO e security team
- Quali dati reali entrano nel sistema e dove vengono salvati, loggati o inviati?
- Quali ruoli esistono e quali azioni sono bloccate lato server, non solo nell’interfaccia?
- Quali segreti, token, webhook o credenziali permetterebbero accesso a sistemi critici?
- Quali parti sono state generate o modificate dall’AI e quali sono state revisionate da una persona competente?
- Quali test coprono abuso, errori, ruoli diversi e tenant diversi, non solo il percorso felice?
- Quale evidenza può essere mostrata a clienti, audit, procurement o direzione?
Approfondimenti utili
- Claude Code e sicurezza: approfondisce i rischi e i controlli specifici di Claude Code senza sovrapporsi al focus di questo articolo.
- OpenAI Codex e sicurezza: utile per chi usa o valuta Codex come agente di coding nel proprio workflow.
- Prompt e rules file nello sviluppo software: analizza come i file di configurazione degli agenti possono diventare un vettore di rischio.
FAQ
- Open-source significa più sicuro?
- Non automaticamente. L’open-source permette audit e controllo del codice, ma la sicurezza effettiva dipende da configurazione, sandbox, scelta del provider, permessi e processo di review adottato dal team.
- Qual è il rischio principale degli agenti di coding locali?
- L’agente eredita spesso i privilegi dello sviluppatore che lo esegue: file locali, token, shell, Git, package manager e strumenti cloud sono tutti potenzialmente accessibili senza restrizioni esplicite.
- Serve un ambiente isolato?
- Sì, per i progetti sensibili. Container, workspace dedicati e credenziali limitate riducono significativamente l’impatto di comandi errati o input ostili generati dall’agente.
- Come gestire i comandi shell generati dall’agente?
- Con allowlist esplicite, approvazione manuale per azioni distruttive, blocco delle operazioni ad alto rischio, log delle tool call e separazione netta tra ambiente di sviluppo e produzione.
- Quando serve una Secure Architecture Review?
- Quando l’agente diventa parte stabile del processo di sviluppo o viene integrato con tool interni, repository cliente o pipeline CI/CD, una Secure Architecture Review permette di valutare l’impatto sistemico prima che i rischi si consolidino.
Vuoi un Software Assurance Lifecycle realmente sicuro, continuo e conforme?
Affidati a ISGroup per:
- Code review manuale e test reali in ogni fase dello sviluppo
- Integrazione con DevSecOps, SBOM e remediation assistita
- Compliance completa a NIS2, GDPR, DORA con supporto tecnico dedicato
Fonti e riferimenti
- OWASP Top 10 2021
- OWASP ASVS
- OWASP Code Review Guide
- NIST SP 800-218 SSDF
- OWASP Top 10 for LLM Applications 2025
- OWASP Agentic AI Security
- OpenAI MCP risks and safety
- OpenHands documentation
- Cline documentation

