Leggi ambito, hash del commit, indirizzi distribuiti, definizioni di gravità, problemi irrisolti e limiti dei test prima di guardare il badge. Un audit è utile soltanto se copre il codice e la configurazione che potresti usare realmente.
Comprendi gli elementi in gioco#
I rapporti sono revisioni riferite a un momento preciso. Possono escludere front end, oracoli, bridge, operazioni amministrative e ipotesi economiche che dominano il rischio reale.
Anche dopo la correzione, il codice distribuito può differire dal commit verificato. Devi collegare repository, versione, parametri e indirizzi on-chain invece di affidarti al logo dell’auditor.
Metodo decisionale#
Crea una mappa di una pagina: difetti del codice, ruoli privilegiati, dipendenze esterne, aggiornabilità e risposta agli incidenti. Il rapporto alimenta questa mappa, ma non la sostituisce.
Annota quali rischi accetti e quali richiedono astensione o esposizione ridotta. Un finding «informativo» può essere decisivo se rivela un potere amministrativo ampio.
Registra anche la data della verifica e le fonti consultate. Se il protocollo viene aggiornato, ripeti il confronto: un audit valido per una release precedente non certifica automaticamente nuovi contratti, parametri o integrazioni.
Sequenza di lettura#
- Abbina commit del repository e indirizzi dei contratti. Verifica che la versione analizzata corrisponda all’implementazione e al proxy utilizzati.
- Controlla componenti e blockchain esclusi. Front end, oracle, bridge, token e script di distribuzione possono restare fuori dall’ambito.
- Leggi ogni finding critico e alto insieme allo stato della remediation. Comprendi scenario, impatto, probabilità e correzione proposta.
- Conferma che le correzioni siano state sottoposte a nuovo test, non soltanto riconosciute. «Risolto dal team» non equivale a verifica indipendente.
- Esamina note su centralizzazione, aggiornamenti e gestione delle chiavi. Identifica chi può mettere in pausa, aggiornare, creare asset o cambiare parametri.
Trappole comuni#
- Contare gli audit invece di leggerne l’ambito. Più badge possono riferirsi alla stessa vecchia versione o escludere la componente che usi.
- Trattare «risolto» come prova che la correzione distribuita coincida. Serve confrontare commit e indirizzo on-chain.
- Ignorare finding informativi che rivelano poteri amministrativi. La gravità tecnica bassa non significa conseguenza economica irrilevante.
- Presumere che l’assenza di finding significhi assenza di vulnerabilità. Tempo, ambito e metodi dell’audit sono limitati.
Una valutazione pulita deve essere riproducibile da rapporto, repository e blockchain, non soltanto dalla pagina marketing del progetto.
Conferma il risultato#
Non giudicare l’audit dal messaggio o badge «superato». Conserva riferimenti alla versione esatta e una lista dei rischi residui.
| Punto di controllo | Prova | Condizione di arresto |
|---|---|---|
| Commit e contratti corrispondono | Hash e indirizzi confrontati con fonti ufficiali | Si contano audit senza leggerne l’ambito |
| Esclusioni identificate | Elenco datato di componenti e reti | «Risolto» non è collegato al codice distribuito |
| Finding critici e alti letti | Stato e nuovo test documentati | I poteri amministrativi informativi vengono ignorati |
Conserva report o screenshot datati quando documentano la valutazione, ma escludi seed phrase, chiavi private e codici di autenticazione.
Domande frequenti#
Che cosa significa «acknowledged»?
Di solito il team riconosce il rischio senza modificarlo. Leggi la definizione esatta dello stato fornita dall’auditor.
I bug bounty sono migliori degli audit?
Sono complementari: gli audit sono revisioni con un ambito definito, mentre i bounty invitano a test esterni continui.
Quando un audit è troppo vecchio?
Conta meno l’età assoluta del fatto che codice, configurazione o dipendenze siano cambiati dopo il commit revisionato.
Guide correlate#
Fonti#
- Ethereum.org: sicurezza degli smart contract
- OWASP: dieci principali rischi degli smart contract
- Supporto Uniswap: approvazioni dei token
Avvertenza sui rischi: Le operazioni crypto possono essere irreversibili. Non condividere seed phrase, chiavi private, password o codici di autenticazione e verifica separatamente ogni dominio e richiesta del wallet.
Standard editoriale
Questa guida è educativa e basata su fonti. Misure di sicurezza, regole degli exchange e requisiti legali possono cambiare: verifica i passaggi importanti sulle fonti ufficiali.