You are here
Home > Actualités >

CyberChef : l’outil secret du GCHQ que tout le monde devrait connaître

Imaginez un outil qui peut décoder du Base64, déchiffrer de l’AES, extraire des URLs, calculer un hash SHA-256, analyser un certificat X.509 et décompresser du gzip, le tout enchaîné en quelques secondes, sans installer quoi que ce soit, sans envoyer une seule donnée sur un serveur externe. Ce n’est pas un outil de niche réservé aux équipes SOC : c’est CyberChef, développé par le GCHQ (le service de renseignement britannique), open source depuis 2016, et probablement l’un des outils les plus sous-utilisés par les développeurs et administrateurs qui ne viennent pas du monde de la cybersécurité.

L’origine : quand les espions publient leur boîte à outils

Le GCHQ (Government Communications Headquarters, l’équivalent britannique de la NSA) a publié CyberChef sur GitHub en novembre 2016. Le dépôt gchq/CyberChef cumule aujourd’hui plus de 30 000 étoiles GitHub, ce qui en fait l’un des projets open source les plus populaires issus d’une agence gouvernementale. Le nom et l’interface font volontairement référence à la cuisine : des « opérations » que l’on assemble en « recettes », avec un bouton « Bake » pour lancer le traitement. C’est une métaphore simple qui cache une puissance technique réelle.

L’architecture est intégralement front-end : CyberChef est une application JavaScript pure qui tourne entièrement dans le navigateur. Aucune requête serveur n’est effectuée pour le traitement de vos données (à l’exception de trois opérations spécifiques : résolution DNS via Google/Cloudflare, affichage sur carte via Wikimedia, et requêtes HTTP configurables). Vous pouvez télécharger la totalité de l’app en un fichier HTML et l’utiliser hors ligne, sur un réseau isolé, ou dans un environnement air-gapped.

Le concept de recette : la vraie puissance de l’outil

Ce qui distingue CyberChef de tous les convertisseurs en ligne classiques, c’est le système de recettes enchaînées. Plutôt que d’effectuer une opération à la fois, vous construisez un pipeline de traitement par glisser-déposer, et le résultat de chaque opération devient l’entrée de la suivante.

Un exemple concret tiré de l’analyse de malware : un sample obfusqué peut utiliser plusieurs couches d’encodage imbriquées. La recette pour le dépacker ressemblerait à :

1. From Base64
2. Raw Inflate (décompression zlib)
3. XOR (clé connue ou à bruteforcer)
4. From Hex
5. JavaScript Beautify

Chaque étape s’affiche en temps réel. Si l’opération 3 produit du garbage, vous ajustez la clé XOR sans relancer tout le pipeline depuis le début. C’est un gain de temps massif par rapport à l’enchaînement manuel de scripts Python.

Les recettes peuvent être sauvegardées, partagées via URL (l’état complet de la recette et de l’entrée est encodé dans l’URL), ou exportées en JSON. La communauté GitHub mattnotmax/cyberchef-recipes recense des centaines de recettes prêtes à l’emploi pour des cas d’usage courants en forensic et analyse de menaces.

Les opérations les plus utiles par catégorie

CyberChef propose plusieurs centaines d’opérations organisées en catégories. Voici ce qui sort le plus souvent dans un usage quotidien :

Encodage/Décodage Base64, URL encoding, HTML entities, ROT13, ROT47, Morse, Baudot. L’opération From Charcode permet de décoder du JavaScript obfusqué qui représente les caractères par leurs codes ASCII.

Chiffrement AES (ECB, CBC, GCM, CTR), DES, Triple DES, Blowfish, ChaCha20, XOR (byte, key, clé de longueur variable). Pour le XOR, CyberChef propose même une attaque par analyse de fréquences pour trouver une clé inconnue, ce qui est redoutablement pratique en CTF.

>  Émulation Nintendo DS sur iPhone : guide complet pour jouer enfin correctement en 2025

Hashing MD5, SHA-1, SHA-256, SHA-512, bcrypt, HMAC, entropy de Shannon. L’opération entropy est particulièrement utile : un fichier avec une entropie proche de 8 bits/octet est quasi certainement chiffré ou compressé, ce qui est un indicateur fort en analyse forensique.

Data formats Parse JSON, XML vers JSON, CSV vers JSON, reformatage de dates, extraction d’URLs, extraction d’adresses IP, extraction d’emails dans un texte. L’opération Extract URLs sur un fichier de logs peut vous sortir tous les domaines contactés en une fraction de seconde.

Compression Gzip, Zip, Brotli, Zlib inflate/deflate, Bzip2. Pratique pour analyser du trafic HTTP compressé intercepté.

Pro tip : l’opération Magic de CyberChef est sous-estimée. Elle analyse automatiquement l’input, détecte le format probable (Base64, hex, URL-encoded, compressé…) et propose la recette de décodage correspondante. Sur des données dont vous ne connaissez pas l’encodage, c’est le meilleur point de départ.

Cas d’usage concrets au-delà de la cybersécurité

On associe souvent CyberChef uniquement à la sécurité ou au CTF, mais l’outil est utile dans bien d’autres contextes.

Pour un développeur qui debug une API, l’opération JWT Decode affiche le payload d’un token JWT en clair en un clic, sans avoir à ouvrir jwt.io. Parse X.509 Certificate décompose un certificat SSL et affiche toutes les métadonnées (émetteur, expiration, SANs) de façon lisible. Format Date / Time convertit des timestamps Unix en dates humaines, ou inversement.

Pour un administrateur système qui analyse des logs, Regular Expression avec l’option « highlight matches » permet de valider une regex sur un corpus réel avant de l’intégrer dans un script. Extract IP addresses sur un fichier de log Apache vous donne la liste des IPs uniques en deux opérations.

Pour quelqu’un qui travaille avec des APIs et des workflows d’automatisation, URL Decode et HTML Entity Decode sur des chaînes reçues de formulaires ou de webhooks évitent d’avoir à écrire des fonctions de nettoyage ponctuelles.

Auto-hébergement : CyberChef sur votre infrastructure

Pour les environnements où la sécurité des données interdit d’utiliser une application en ligne même locale, CyberChef se déploie facilement en container Docker :

docker run -d -p 8080:80 mpepping/cyberchef

L’image fait moins de 50 Mo et tourne sans aucune dépendance externe. Pour un déploiement sur NAS Synology, Unraid ou un homelab Proxmox, c’est l’une des apps les plus simples à mettre en place. La version Docker reste identique à la version en ligne, sans compte, sans telemetry, sans mise à jour automatique forcée.

Méthode d’accès Confidentialité Disponibilité offline Mise à jour
gchq.github.io/CyberChef Maximale (tout local) Non Automatique
Téléchargement HTML Maximale Oui Manuelle
Docker auto-hébergé Maximale Oui (LAN) Manuelle
cyberchef.io (tiers) Inconnue Non Automatique

Attention aux sites tiers qui reprennent le nom CyberChef sans être le projet original du GCHQ. La référence absolue reste gchq.github.io/CyberChef ou le dépôt GitHub gchq/CyberChef. Des sites comme cyberchef.io ou cyberchef.org sont des projets distincts et non officiels.

Points clés à retenir

CyberChef est un de ces rares outils qui méritent d’être dans la boîte à outils de tout professionnel du numérique, pas seulement des équipes sécu. Sa force tient en trois choses : le traitement entièrement local sans aucun envoi de données, le système de recettes enchaînées qui remplace des dizaines d’outils ponctuels, et la communauté active qui produit des recettes prêtes à l’emploi pour presque tous les cas courants.

>  Yoolink se repositionne : un nouveau départ avec jamespot

Si vous n’avez jamais ouvert CyberChef, l’exercice recommandé est de prendre n’importe quelle chaîne Base64 qui traîne dans vos logs ou vos configs, de la coller dans l’input, de glisser « From Base64 » dans la recette, et d’observer le résultat. Moins de dix secondes. Après ça, vous y reviendrez.

Et vous, vous avez déjà utilisé CyberChef pour démêler un encodage tordu ? Les premières expériences avec l’opération Magic ont souvent quelque chose d’un peu magique, dans le bon sens du terme.

Top