← Ultimi articoli
🤖 AI

Prompt to Pwn: Automated Exploit Generation for Smart Contracts

Il paper introduce \textsc{ReX}, un framework basato su LLM e Foundry per la generazione automatizzata di exploit per smart contract, evidenziando che, sebbene i modelli attuali siano efficaci nel produrre proof-of-concept deterministici per vulnerabilità singole, mostrano limitazioni significative negli attacchi cross-contract e nel simulare scenari economici reali.

Autori originali: ZeKe Xiao, Qin Wang, Yuekang Li, Shiping Chen

Pubblicato 2026-04-22
📖 4 min di lettura☕ Lettura da pausa caffè

Autori originali: ZeKe Xiao, Qin Wang, Yuekang Li, Shiping Chen

Articolo originale sotto licenza CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo

Immagina gli Smart Contract (i contratti intelligenti) come dei distributori automatici di denaro che non possono mai essere riparati una volta installati. Se c'è un piccolo difetto nella serratura, un ladro può rubare tutto per sempre.

Fino a poco tempo fa, gli esperti di sicurezza usavano software tradizionali per cercare questi difetti. Ma ora, c'è un nuovo "ladro" nel quartiere: l'Intelligenza Artificiale (IA), o meglio, i Modelli Linguistici (LLM) come quelli che usi per scrivere email o codice.

Questo documento di ricerca, chiamato ReX, si chiede una cosa spaventosa ma fondamentale: "Se diamo a un'IA una mappa di questi distributori automatici, riesce a costruire da sola la chiave per rubare i soldi?"

Ecco cosa hanno scoperto, spiegato con parole semplici:

1. Il Laboratorio di Scienza (ReX)

Gli autori hanno costruito un laboratorio automatico chiamato ReX. Immaginalo come un robot fabbro che fa tre cose in loop:

  1. Guarda il contratto intelligente (il distributore).
  2. Chiede all'IA: "Ehi, come potrei rubare da qui? Scrivimi un programma per farlo".
  3. Prova il programma. Se non funziona (perché il codice è sbagliato), lo rimanda all'IA dicendo: "Non funziona, riprova!".
  4. Ripete finché non trova un modo per aprire il distributore.

Hanno testato questo robot su 5 dei più famosi "cervelli" IA del mondo (come GPT-4, Gemini, Claude) usando sia esempi di scuola (contratti semplici) che casi reali di furti avvenuti nel mondo vero.

2. Cosa è successo? (I Risultati)

  • Sui contratti semplici (Il "Gioco da Tavolo"):
    L'IA è bravissima! Se il difetto è ovvio (es. "chiunque può prelevare i soldi" o "i numeri diventano troppo grandi e si rompono"), l'IA riesce a scrivere il codice per rubare i soldi nel 60-90% dei casi. È come se un bambino con un cacciavite riuscisse a smontare un giocattolo rotto.

    • Il vincitore: Il modello Gemini 2.5 Pro è stato il più veloce e preciso, seguito da GPT-4.
  • Sui contratti complessi (La "Fortezza"):
    Qui le cose cambiano. Quando il furto richiede di manipolare più distributori contemporaneamente (es. prendere soldi dal banco A, spostarli sul banco B e poi rubare dal banco C), l'IA si perde.

    • Gli umani esperti riescono a creare catene di truffe complesse.
    • L'IA tende a vedere solo il singolo contratto e non capisce il "grande quadro" o come i diversi pezzi del puzzle interagiscono. È come se l'IA sapesse come aprire una porta, ma non sapesse che per rubare la cassaforte deve prima attraversare tre corridoi diversi.

3. Cosa influenza il successo del ladro IA?

Gli autori hanno scoperto che non è la "dimensione" del contratto a contare.

  • Non conta la grandezza: Un contratto gigante e complicato non è necessariamente più sicuro per l'IA di uno piccolo.
  • Conta il tipo di IA: Se il "cervello" dell'IA è intelligente, ruba di più. Se è un modello più debole, fallisce.
  • Non conta molto il "trucco" nella richiesta: Cambiare le parole con cui chiedi all'IA di rubare (il "prompt") aiuta un po', ma non basta a far diventare un modello stupido un genio. È la capacità interna del modello a fare la differenza.

4. Come difendersi? (Il consiglio agli architetti)

Se l'IA è brava a trovare buchi semplici, come ci proteggiamo? Gli autori suggeriscono di rendere le cose "disordinate" per l'IA, ma chiare per gli umani:

  • Spezzare il puzzle: Invece di un unico contratto gigante, dividilo in tanti piccoli pezzi che si parlano tra loro. L'IA fatica a collegare i puntini tra pezzi diversi.
  • Usare linguaggi strani: Usa comandi di programmazione rari o "strani" che l'IA non ha mai visto spesso nei suoi libri di testo. È come scrivere una ricetta con ingredienti che l'IA non conosce: si confonde.
  • Trappole (Decoy): Inserisci nel codice dei "finti buchi" che sembrano pericolosi ma non lo sono. L'IA potrebbe perdere tempo a cercare di rubare da lì, mentre il vero buco rimane nascosto.

5. La Conclusione

Il messaggio principale è questo: L'IA è già un ladro pericoloso per i difetti semplici, ma non è ancora un genio criminale per le truffe complesse.

Tuttavia, il fatto che un'IA possa già scrivere codice per rubare milioni di dollari in pochi minuti è un campanello d'allarme enorme. Significa che i "ragazzini con il computer" (script kiddies) potrebbero presto usare queste IA per attaccare le banche digitali senza bisogno di essere esperti programmatori.

In sintesi: L'IA sta imparando a forzare le serrature. Noi dobbiamo smettere di costruire serrature semplici e iniziare a costruire labirinti che l'IA fatica a navigare, anche se non possiamo ancora "riparare" il difetto originale.

Sommerso dagli articoli nel tuo campo?

Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.

Prova Digest →