Torna agli aggiornamenti
New releaseAug 19, 2026

CyberChef v11.4.0

The Cyber Swiss Army Knife - un'app web per crittografia, codifica, compressione e analisi dei dati

Condividi

CyberChef

npm Gitter

Il coltellino svizzero informatico

CyberChef è una web app semplice e intuitiva per eseguire ogni tipo di operazione "cyber" all'interno di un browser web. Queste operazioni includono semplici codifiche come XOR e Base64, crittografie più complesse come AES, DES e Blowfish, creazione di binary ed hexdump, compressione e decompressione dei dati, calcolo di hash e checksum, parsing di IPv6 e X.509, modifica delle codifiche dei caratteri e molto altro.

Lo strumento è progettato per consentire sia agli analisti tecnici che a quelli non tecnici di manipolare i dati in modi complessi senza dover gestire strumenti o algoritmi complessi. È stato concepito, progettato, costruito e migliorato progressivamente da un analista nel proprio tempo di innovazione del 10% nell'arco di diversi anni.

Indice

Sito web ufficiale

Il sito web ufficiale di CyberChef si trova qui - buon divertimento!

Esecuzione locale

Puoi eseguire CyberChef con Docker (nessun toolchain richiesto) o compilarlo dal sorgente con Node.js.

Con Docker

Prerequisiti

  • Docker
    • Docker Desktop deve essere aperto e in esecuzione sul tuo computer

Opzione 1: crea l'immagine Docker manualmente

  1. Crea l'immagine Docker
docker build --tag cyberchef --ulimit nofile=10000 .
  1. Esegui il container Docker
docker run -it -p 8080:8080 cyberchef
  1. Vai su http://localhost:8080 nel tuo browser

Opzione 2: usa l'immagine Docker precompilata

Se preferisci saltare il processo di creazione, puoi usare l'immagine precompilata

docker run -it -p 8080:8080 ghcr.io/gchq/cyberchef:latest

Come prima, vai su http://localhost:8080 nel tuo browser.

Questa immagine viene creata e pubblicata tramite i nostri GitHub Workflows.

Dal sorgente

Se vuoi sviluppare CyberChef o eseguirlo senza Docker, puoi compilarlo direttamente con Node.js.

Prerequisiti

[!NOTE]

Puoi usare nvm per gestire le versioni di Node.js e utilizzare la versione di sviluppo corrente in questo progetto per evitare conflitti con altri progetti sul tuo computer.

Configurazione

git clone https://github.com/gchq/CyberChef.git
cd CyberChef
npm install

Attività comuni

ComandoDescrizione
npm startAvvia il server di sviluppo con ricaricamento automatico su http://localhost:8080.
npm run buildGenera una build di produzione nella directory build/prod.
npm testEsegue le suite di test Node.js e delle operazioni.
npm run testuiEsegue i test del browser (UI).
npm run lintVerifica il codice rispetto alle regole di linting.
npm run newopCrea una nuova operazione tramite lo script interattivo di avvio rapido.

Se incontri un errore di memoria insufficiente durante la creazione di ricette di grandi dimensioni, aumenta la dimensione dell'heap di Node con npm run setheapsize.

Come funziona

Ci sono quattro aree principali in CyberChef:

  1. La casella input in alto a destra, dove puoi incollare, digitare o trascinare il testo o il file su cui vuoi operare.
  2. La casella output in basso a destra, dove verrà visualizzato il risultato della tua elaborazione.
  3. L'elenco delle operazioni all'estrema sinistra, dove puoi trovare tutte le operazioni di cui CyberChef è capace in elenchi categorizzati, oppure tramite ricerca.
  4. L'area della ricetta al centro, dove puoi trascinare le operazioni che vuoi utilizzare e specificare argomenti e opzioni.

Puoi usare quante operazioni vuoi, in modi semplici o complessi. Alcuni esempi sono i seguenti:

Funzionalità

  • Trascina e rilascia
    • Le operazioni possono essere trascinate dentro e fuori dall'elenco della ricetta, oppure riorganizzate.
    • I file fino a 2GB possono essere trascinati sulla casella di input per caricarli direttamente nel browser.
  • Auto Bake
    • Ogni volta che modifichi l'input o la ricetta, CyberChef eseguirà automaticamente il "bake" per te e produrrà l'output immediatamente.
    • Questa funzione può essere disattivata e gestita manualmente se influisce sulle prestazioni (ad esempio se l'input è molto grande).
  • Rilevamento automatico della codifica
    • CyberChef utilizza una serie di tecniche per tentare di rilevare automaticamente le codifiche dei tuoi dati. Se trova un'operazione adatta che dia un senso ai tuoi dati, visualizza l'icona 'magic' nel campo Output, su cui puoi fare clic per decodificare i tuoi dati.
  • Breakpoint
    • Puoi impostare breakpoint su qualsiasi operazione della tua ricetta per mettere in pausa l'esecuzione prima di eseguirla.
    • Puoi anche scorrere la ricetta un'operazione alla volta per vedere come appaiono i dati in ogni fase.
  • Salvare e caricare ricette
    • Se crei una ricetta fantastica che sai di voler riutilizzare, fai semplicemente clic su "Save recipe" e aggiungila al tuo storage locale. Ti aspetterà la prossima volta che visiterai CyberChef.
    • Puoi anche copiare l'URL, che include la tua ricetta e l'input, per condividerlo facilmente con altri.
  • Ricerca
    • Se conosci il nome dell'operazione che vuoi o una parola associata, inizia a digitarla nel campo di ricerca e tutte le operazioni corrispondenti verranno mostrate immediatamente.
  • Evidenziazione
  • Salva su file e carica da file
    • Puoi salvare l'output in un file in qualsiasi momento oppure caricare un file trascinandolo e rilasciandolo nel campo di input. Sono supportati file fino a circa 2GB (a seconda del browser); tuttavia, alcune operazioni potrebbero richiedere moltissimo tempo per essere eseguite su una mole di dati così grande.
  • CyberChef è interamente lato client
    • Va notato che nessuna parte della configurazione della tua ricetta o dell'input (né testo né file) viene mai inviata al server web di CyberChef: tutta l'elaborazione avviene all'interno del tuo browser, sul tuo computer.
    • Grazie a questa funzionalità, CyberChef può essere scaricato ed eseguito localmente. Puoi usare il link nell'angolo in alto a sinistra dell'app per scaricare una copia completa di CyberChef e inserirla in una macchina virtuale, condividerla con altre persone o ospitarla in una rete chiusa.

Collegamento profondo

Manipolando l'hash dell'URL di CyberChef, puoi modificare le impostazioni iniziali con cui si apre la pagina. Il formato è https://gchq.github.io/CyberChef/#recipe=Operation()&input=...

Gli argomenti supportati sono recipe, input (codificato in Base64) e theme.

Supporto browser

CyberChef è progettato per supportare

  • Google Chrome 50+
  • Mozilla Firefox 38+

Supporto Node.js

CyberChef è progettato per supportare pienamente Node.js v24 ed è testato anche con Node.js v26 in previsione della sua prossima disponibilità come release LTS attiva. Per maggiori informazioni, consulta la pagina wiki "Node API"

Sicurezza

Consulta la security policy di CyberChef.

Contribuire

Contribuire con una nuova operazione a CyberChef è facilissimo! Lo script di avvio rapido ti guiderà attraverso il processo. Se sai scrivere JavaScript di base, puoi scrivere un'operazione per CyberChef.

Una guida all'installazione, guide pratiche per aggiungere nuove operazioni e temi, descrizioni della struttura del repository, dei tipi di dati disponibili e delle convenzioni di codifica: tutto questo si trova nella pagina wiki "Contributing".

  • Invia le tue modifiche al tuo fork.
  • Invia una pull request. Se lo fai per la prima volta, ti verrà chiesto di firmare la GCHQ Contributor Licence Agreement tramite l'assistente CLA sulla pull request. Ti verrà anche chiesto se sei d'accordo che GCHQ ti contatti per un piccolo ringraziamento per il tuo contributo o per opportunità di lavoro presso GCHQ.

Licenza

CyberChef è rilasciato sotto la Licenza Apache 2.0 ed è coperto da Crown Copyright.

Categorie