Poisoned Identifiers Survive LLM Deobfuscation: A Case Study on Claude Opus 4.6
Lo studio dimostra che, nonostante la corretta comprensione semantica, i nomi di identificatori "avvelenati" nel codice JavaScript deoffuscatato da Claude Opus 4.6 persistono sistematicamente, a meno che il prompt non venga riformulato richiedendo una nuova implementazione invece della semplice deoffuscazione.
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
Il Titolo: "I Nomi Avvelenati Sopravvivono alla Magia"
Immagina di avere un libro di ricette scritto in una lingua straniera che nessuno conosce (il codice offuscato). Un'intelligenza artificiale molto intelligente (Claude Opus 4.6) si offre di tradurlo in italiano, spiegandoti cosa fa ogni ingrediente.
Il problema? Qualcuno ha preso il libro originale e ha sostituito i nomi degli ingredienti con parole sbagliate ma che sembrano plausibili.
- Invece di scrivere "Zucchero", hanno scritto "Sale".
- Invece di "Farina", hanno scritto "Sabbia".
La domanda dello studio è: L'AI si accorgerà che "Sale" e "Sabbia" non hanno senso e scriverà "Zucchero" e "Farina"? O scriverà comunque "Sale" e "Sabbia" perché li ha trovati nel libro?
La Scoperta Principale: L'AI è un Traduttore, non un Critico
Gli scienziati hanno scoperto qualcosa di sorprendente e un po' inquietante:
Chiedere "Controlla!" non funziona.
Se chiedi all'AI: "Traduci questo libro, ma per favore controlla che ogni nome sia corretto prima di scriverlo", l'AI continua a scrivere i nomi sbagliati.- L'analogia: È come chiedere a un traduttore: "Traduci questo testo, ma assicurati che le parole abbiano senso". L'AI legge la parola "Sale" nel testo originale, la traduce letteralmente in "Sale" e la scrive, anche se sa che la ricetta richiede lo zucchero. È così "fedele" al testo originale che ignora la logica.
Il "Doppio Segnale" (Il paradosso).
In molti casi, l'AI scrive il nome sbagliato nel codice (es.var sale = 100;), ma nel commento a fianco scrive la verità: "Questa è la quantità di zucchero necessaria".- L'analogia: È come se un cuoco scrivesse sulla ricetta: "Aggiungi 100 grammi di Sale (ovvero Zucchero)". L'AI sa cosa sta facendo, ma non riesce a cambiare il nome scritto nel testo.
La Soluzione Magica: Cambiare il "Ruolo".
Gli scienziati hanno provato un trucco diverso. Invece di dire "Traduci questo libro", hanno detto: "Scrivi una nuova ricetta da zero basata su quello che vedi".- Risultato: Quando l'AI ha dovuto "creare" invece di "tradurre", ha smesso di usare i nomi avvelenati. Ha scritto correttamente "Zucchero" e "Farina".
- Perché? Quando l'AI deve tradurre, si sente obbligata a seguire il testo originale (come un fotocopiatore). Quando deve creare, usa la sua conoscenza per scrivere le cose come dovrebbero essere.
I Dettagli Curiosi
- Non serve che il nome abbia senso: Anche se hanno messo parole completamente assurde (come scrivere "Motore" invece di "Freno" in un'auto), l'AI le ha comunque copiate se il testo era offuscato. L'AI non controlla se la parola ha senso, controlla solo se c'è nel testo.
- La "Coerenza" conta: Se l'AI vede che tutte le parole sono state sostituite con un tema coerente (es. tutte parole da "officina meccanica" invece che da "cucina"), allora capisce che c'è stato un inganno e corregge tutto. Ma se le parole sono un mix casuale, l'AI si fida ciecamente del testo.
Perché è Importante? (La Metafora del "Costo")
Questo studio ci dice che non possiamo fidarci ciecamente dell'AI per pulire codice sospetto o decifrare file protetti.
- Non è una protezione invincibile: Un hacker esperto può comunque capire cosa fa il codice guardandolo a mano.
- È un "moltiplicatore di costi": L'obiettivo di questi nomi avvelenati non è nascondere il codice per sempre, ma rendere la vita difficile all'AI. Costringe l'AI a sbagliare o a richiedere più tempo e risorse per correggere gli errori. È come mettere un lucchetto che non impedisce a un ladro di entrare, ma lo costringe a spendere 3 ore per aprirlo invece di 3 minuti.
In Sintesi
Immagina che l'Intelligenza Artificiale sia un bravo studente che deve ricopiare un testo da una lavagna sporca.
- Se gli dici: "Copia tutto, ma controlla se ci sono errori", lui copierà gli errori perché è troppo concentrato sul "copiare".
- Se gli dici: "Scrivi un riassunto di quello che hai capito", lui userà il suo cervello, ignorerà gli errori sulla lavagna e scriverà la verità.
La lezione: Non basta dire all'AI di "fare attenzione". Bisogna cambiare il modo in cui le chiediamo di lavorare (da "traduttore" a "creatore") per ottenere risultati corretti.
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.