cool-solution — dev.blog
Tecnologie

Repo del giorno: T3MP3ST, il red teaming autonomo guidato dagli agenti AI

Me l'ha segnalato uno dei tecnici IT che stimo di più, e vale la pena guardarlo. T3MP3ST (si legge «tempest») prende l'agente AI che già usi — Claude Code, Codex o un modello che gira in locale — e lo trasforma in un red team autonomo: punti il framework su un bersaglio autorizzato e la catena si muove da sola, recon → exploit → report, da una «War Room» nel browser o da riga di comando. Con oltre 4.000 stelle e licenza AGPL-3.0, è meno un prodotto da comprare e più un segnale: il costo di un attacco automatizzato sta crollando, e chi costruisce software deve saperlo. Nota doverosa, ripetuta dagli stessi autori: si usa solo su sistemi propri o con autorizzazione scritta.

$ claude "refactor user.service to async/await" reading src/services/user.service.ts... proposing 12 edits across 3 files ✓ tests still pass (47 / 47) applying patch...AI PAIRsupervised

💡 Cos'è T3MP3ST: un «meta-harness» offensivo multi-agente

T3MP3ST è un framework di sicurezza offensiva multi-agente: non è un nuovo modello e non è un exploit, è l'impalcatura che coordina più agenti AI attorno a un obiettivo di red teaming. L'idea, nelle parole del progetto, è che «il tuo agente di coding è già un hacker»: T3MP3ST gli mette attorno un arsenale di strumenti e una regia. È scritto in TypeScript, è open source con licenza AGPL-3.0 e conta oltre 4.000 stelle su GitHub.

Lo avvii in locale — `npm install` e `npm run server` — e apri una War Room nel browser: colleghi l'agente che già usi, descrivi in linguaggio naturale un bersaglio autorizzato e la missione parte. La prima riga del README non è una feature ma un avviso, e lo riporto per intero nello spirito giusto: è uno strumento offensivo, va puntato solo su sistemi che possiedi o che hai il permesso scritto di testare. Accesso non autorizzato a sistemi altrui è illegale nella maggior parte delle giurisdizioni.

Terminale · avviare la War Room in locale (test autorizzati)
# 1) installa e avvia il server locale
npm install
npm run server        # War Room → http://127.0.0.1:3333/ui/

# 2) nella War Room colleghi un agente (Claude Code / Codex / Hermes)
#    e descrivi un bersaglio che possiedi o sei autorizzato a testare
# 3) verifica i numeri dichiarati dal progetto
npm run verify-claims  # ri-deriva ogni benchmark dai dati committati

Repo ufficiale · elder-plinius/T3MP3ST

Keyless: usa l'agente AI che hai già. Nessuna nuova API key, nessun tenant cloud.

🔓 Perché conta (anche se non farai mai un pentest)

La sicurezza offensiva è sempre stata un mestiere da specialisti: anni di pratica e strumenti costosi. La scommessa di T3MP3ST è che uno sciame di agenti coordinati abbassi quella barriera — web app, CTF, smart contract, codice sorgente, OSS embedded. Puoi essere d'accordo o meno sull'opportunità, ma la direzione è chiara e riguarda tutti: se attaccare costa sempre meno, difendere diventa un problema di tutti i giorni, non solo delle grandi aziende.

Ed è qui il valore per chi non fa il penetration tester di mestiere: è un promemoria sul modello di minaccia. I tuoi sistemi — e sempre più i tuoi sistemi basati su AI — verranno sondati da agenti automatici, instancabili e a basso costo. Capire come ragiona un harness offensivo è il primo passo per chiudere le porte giuste. Non serve saper attaccare: serve sapere che l'attacco, oggi, si automatizza.

Come cambia la sicurezza offensiva

Ieri

  • Competenze rare, curva d'apprendimento lunga
  • Tooling costoso e frammentato
  • Un operatore umano per ogni fase
  • Ritmo limitato dalle ore-persona

Con un harness ad agenti

  • La barriera d'ingresso si abbassa
  • Un arsenale unico, orchestrato dall'AI
  • Più «operatori» agent coordinati insieme
  • Ritmo limitato da hardware e permessi, non dalle ore

Non è un incoraggiamento ad attaccare: è la fotografia del modello di minaccia che i difensori devono assumere.

⚙️ Come funziona: una kill chain a 8 operatori su MITRE ATT&CK

L'architettura è una catena a otto operatori, ognuno mappato su una fase del Cyber Kill Chain e del framework MITRE ATT&CK: Recon, Scanner, Exploiter, Infiltrator, Exfiltrator, Ghost, Coordinator e Analyst. È il vocabolario standard con cui i difensori descrivono un attacco — vederlo usato come schema di orchestrazione degli agenti è, di per sé, una buona lezione di sicurezza.

La cosa più onesta del progetto è la tabella di stato: dice esattamente cosa è reale e cosa è impalcatura. Oggi il motore di recon è stabile e tool-backed (nmap, DNS, HTTP, fingerprinting), mentre le fasi successive girano lo stesso loop ReAct ma restano sperimentali, e lo «sciame» coordinato è dichiaratamente ancora non provato. Nessuna promessa gonfiata: quello che non è dimostrato, viene marcato come tale.

Gli 8 operatori, mappati sulle fasi di un attacco
  1. 01
    Reconricognizione e mappatura (stabile)
  2. 02
    Scannerscansione e fingerprinting
  3. 03
    Exploiteraccesso iniziale (sperimentale)
  4. 04
    Infiltratormovimento laterale
  5. 05
    Analystanalisi e reportistica

Il vocabolario è quello di MITRE ATT&CK: uno schema che i difensori conoscono bene.

🛡️ I paletti di sicurezza: autorizzazione, scope e gate umano

Un tool così va giudicato anche — soprattutto — dai suoi freni. E T3MP3ST ne ha di seri, attivi di default. Il primo è il contenimento dello scope in uscita: una volta fissato il bersaglio della missione, gli strumenti di rete integrati rifiutano gli host fuori ambito (rispondono `SCOPE DENIED`) — niente loopback, niente reti private, solo il target dichiarato. Il secondo è il gate di approvazione umana sui driver più pericolosi: l'arsenale di base ha 35 tool, ma i moduli di post-exploitation avanzata (come Metasploit e Hydra) si attivano solo con conferma esplicita di una persona.

C'è poi una pipeline di coordinated disclosure: quando emerge una vulnerabilità reale, il framework prepara le bozze di segnalazione, ma è sempre un umano a inviarle. La regola che gli autori mettono per iscritto è una sola e non negoziabile: «costruisci per i difensori, o non costruirlo qui». Per una PMI il messaggio pratico è che, se mai si testa qualcosa, lo si fa dentro perimetro, con autorizzazione e con i freni inseriti.

  • Solo target autorizzati: sistemi propri o con permesso scritto. La responsabilità è di chi usa lo strumento.
  • Scope containment on by default: gli host fuori ambito vengono rifiutati (`SCOPE DENIED`).
  • Gate umano: i tool offensivi pericolosi richiedono conferma esplicita di una persona.
  • Disclosure coordinata: il framework prepara le bozze, l'invio resta all'operatore umano.

📊 Numeri riproducibili: il dettaglio che lo distingue

In un settore pieno di annunci roboanti, T3MP3ST fa una cosa rara: ti mette in mano il modo di rifare i conti. Ogni numero del README si ri-deriva da dati committati con un comando (`npm run verify-claims`, 24 controlli su 24 verdi), e una guardia anti-fitting gira a ogni push. Se una cifra non è riproducibile, non entra. È lo stesso principio editoriale che applico qui: una misura vale quanto la sua metodologia.

Sui benchmark, i risultati dichiarati sono notevoli — 90,1% pass@1 sulla suite XBEN di XBOW (sopra l'85% auto-riportato da XBOW), 23/40 senza indizi su Cybench, e su 10 CVE reali post-cutoff, mai viste dal modello, 8/10 individuate con file, riga e CWE esatti. Ma anche qui l'onestà è parte del prodotto: quei numeri arrivano da un singolo agente, non dallo sciame coordinato, e il progetto lo scrive nero su bianco.

La carta d'identità del repo
repo       elder-plinius/T3MP3ST
stelle     ~4.400 · licenza AGPL-3.0 · nessuna garanzia
stack      TypeScript · JavaScript · Node.js
agenti     Claude Code · Codex · Hermes · modelli locali
engine     recon tool-backed (stabile) · fasi successive sperimentali
prova      npm run verify-claims → ogni numero si ri-deriva

Security policy · uso autorizzato e responsabile

Fotografia a metà luglio 2026: trazione reale e, soprattutto, numeri verificabili.

🧰 Keyless e offline: l'agente (e il modello) che hai già

Due scelte tecniche lo rendono interessante da studiare. La prima è l'approccio keyless: T3MP3ST non chiede nuove API key né un tenant cloud, usa l'agente di coding che hai già collegato. La seconda è la modalità completamente offline: puoi puntarlo su un modello locale servito da Ollama, LM Studio o vLLM, e il tool-calling funziona via testo anche con modelli senza function-calling nativo. Nulla deve uscire dalla tua macchina.

Per una PMI, questo è il punto che pesa: un test di sicurezza — su sistemi propri e autorizzati — può girare in casa, senza spedire nulla a servizi esterni. È anche un bel caso di studio di integrazione: T3MP3ST espone `security_recon` come server MCP, lo stesso protocollo di cui ho parlato tante volte, e un'API HTTP per orchestrare le missioni.

Terminale · farlo girare su un modello locale (offline)
# nessuna chiave, nessun cloud: il modello gira in locale
ollama serve && ollama pull llama3
export TEMPEST_LOCAL_BASE_URL=http://localhost:11434/api
export TEMPEST_LOCAL_MODEL=llama3
npx tempest   # poi: “Change default provider” → local

Docs · scope e autorizzazione

Offline e keyless: utile quando i dati e i sistemi sotto test non devono lasciare la rete.

🏢 Cosa impararne, per sviluppatori e PMI

Per chi sviluppa, T3MP3ST è un piccolo corso accelerato su più fronti: orchestrazione multi-agente con loop ReAct reali, mappatura su MITRE ATT&CK, e soprattutto una disciplina di misurazione (numeri che si ri-derivano, guardie anti-fitting) che vale la pena copiare ben oltre la sicurezza. Anche solo leggere come separa «ciò che funziona» da «ciò che è ancora una scommessa» è istruttivo.

Per una PMI la lettura è difensiva, e semplice: gli avversari si stanno automatizzando, quindi l'igiene di sicurezza non è più un lusso. Testare i propri sistemi (con professionisti e autorizzazioni), aggiornare le dipendenze, mettere in sicurezza i propri deployment di AI: sono attività che il calo del costo d'attacco rende più urgenti, non meno. Lo strumento non serve a spaventare, ma a inquadrare bene il rischio e a spendere le energie di sicurezza dove contano.

⚠️ Cosa sapere prima di avvicinarsi

Metto i puntini sulle i. T3MP3ST è uno strumento offensivo: l'uso non autorizzato è illegale e la responsabilità è interamente di chi lo usa. È distribuito as-is sotto AGPL-3.0, senza garanzie e senza responsabilità per danni o abusi. Non è un giocattolo e non è un pulsante «trova i bug» da premere a caso.

Sul piano tecnico, va ricordato che lo sciame coordinato è ancora non provato: i numeri arrivano da un singolo agente, e molti domini (cloud, mobile, binario/RE, Active Directory) sono dichiaratamente in sviluppo o solo impalcatura. Può azionare tool di exploit reali, quindi i freni — scope containment e gate umano — vanno tenuti inseriti, sempre. Trattalo come si tratta un attrezzo pericoloso: con competenza, perimetro e autorizzazioni.

  • Legale solo se autorizzato: sistemi propri o con permesso scritto, dentro le regole d'ingaggio.
  • AGPL-3.0, as-is: nessuna garanzia, nessuna responsabilità degli autori.
  • Maturità disomogenea: recon stabile, sciame e molti domini ancora sperimentali o roadmap.
  • Freni sempre inseriti: scope containment e approvazione umana sui tool pericolosi.

🗺️ Da dove partire (in sicurezza)

Il percorso responsabile parte dai documenti, non dai comandi: leggi prima la `SECURITY.md` e la guida `SCOPE_AND_AUTHORIZATION`, così è chiaro cosa significhi «autorizzato». Poi, se proprio vuoi provarlo, fallo su un tuo laboratorio o su un perimetro esplicitamente autorizzato, con il contenimento di scope attivo e i tool pericolosi dietro il gate umano. L'obiettivo giusto non è «attaccare qualcosa», ma capire il modello di minaccia dell'era degli agenti.

Se lavori in azienda, il messaggio è ancora più semplice: coinvolgi professionisti e metti l'autorizzazione per iscritto. E per inquadrare il tema più in generale, gli approfondimenti qui sotto parlano di governance dell'AI in azienda, autorizzazione degli agenti via MCP e AI agentica nei processi. Capire come si muove un avversario automatico vale più di qualunque singolo exploit.

Domande frequenti su T3MP3ST

Che cos'è T3MP3ST?

T3MP3ST (elder-plinius/T3MP3ST) è un framework open source di sicurezza offensiva multi-agente, sotto licenza AGPL-3.0. Trasforma un agente AI di coding che già usi — Claude Code, Codex, Hermes — o un modello locale in un «red team» autonomo che esegue una catena recon → exploit → report da una War Room nel browser o da CLI. Va usato solo su sistemi propri o autorizzati.

È legale usarlo?

Lo strumento è legale, ma l'uso lo è solo su sistemi che possiedi o che hai il permesso scritto di testare. È un tool offensivo: l'accesso non autorizzato a computer, reti o dati è illegale nella maggior parte delle giurisdizioni, e la responsabilità è interamente di chi lo usa. Gli stessi autori insistono su autorizzazione, scope e rispetto della legge.

Servono API key o un cloud?

No. T3MP3ST è keyless: usa l'agente AI che hai già collegato, senza nuove chiavi né tenant cloud. Può anche girare completamente offline su un modello locale servito da Ollama, LM Studio o vLLM, così nulla lascia la tua macchina. Espone anche security_recon come server MCP e un'API HTTP per orchestrare le missioni.

Quali sono i freni di sicurezza?

Di default il contenimento di scope rifiuta gli host fuori ambito (SCOPE DENIED), i tool di post-exploitation più pericolosi (come Metasploit e Hydra) richiedono l'approvazione esplicita di una persona, e la pipeline di coordinated disclosure prepara solo bozze: l'invio resta a un umano. La regola dichiarata è «costruisci per i difensori».

Parliamone

Se questo tema ti riguarda, scrivimi: confrontarsi su codice e AI è sempre tempo speso bene.

Altri articoli del blog

function-calling-microsoft-extensions-ai-dotnet.md13 luglio 2026tips-claude-resume-luglio-2026.md10 luglio 2026claude-code-hooks-quality-gate-2026.md9 luglio 2026