La Navaja Suiza del Análisis de Datos
CyberChef es una aplicación web creada por GCHQ que permite aplicar más de 500 operaciones criptográficas, de codificación, compresión y análisis de datos de forma visual, encadenándolas en "recetas". Sin instalar nada, directamente en el navegador.
¿Por qué CyberChef?
Antes de CyberChef, analizar un payload ofuscado requería encadenar a mano herramientas de línea de comandos: base64, openssl, gzip, xxd… y recordar la sintaxis exacta de cada una. CyberChef convierte ese proceso en un flujo visual, reproducible y compartible mediante una URL.
Acceso y Versiones
| Versión | URL / Método | Cuándo usarla |
|---|---|---|
| Online (GCHQ) | gchq.github.io/CyberChef | Análisis general, sin datos sensibles |
| Offline (descarga) | Releases en GitHub → .zip | Entornos aislados, malware real |
| Docker self-hosted | mpepping/cyberchef | SOC / equipos corporativos |
| Node.js lib | npm install cyberchef | Scripts de automatización |
CyberChef tiene 4 paneles principales. Entender cómo interactúan es la base para construir recetas eficientes.
<payload>
<c2>evil.com/beacon</c2>
<key>XOR_K3Y_H3R3</key>
</payload>
Los 4 Paneles
Atajos de Teclado Esenciales
| Atajo | Acción |
|---|---|
| Ctrl + Enter | Ejecutar la receta manualmente (si auto-bake está desactivado) |
| Ctrl + Shift + F | Buscar operación en el panel Operations |
| Alt + Shift + C | Limpiar la receta actual |
| Ctrl + S | Guardar la receta como fichero JSON |
| URL share | La URL contiene la receta + input codificados — comparte directamente |
Las 500+ operaciones de CyberChef se agrupan en categorías. Estas son las más usadas en análisis de seguridad.
Encodings / Conversión
Criptografía Simétrica
Hashing e Integridad
Compresión
Los encodings no son cifrado: son solo representaciones alternativas de los mismos bytes. Base64 es el más ubicuo en seguridad. Entenderlo a fondo es esencial.
Base64 en profundidad
Base64 convierte 3 bytes (24 bits) en 4 caracteres del alfabeto A-Z a-z 0-9 + /. El = es padding. Hay variantes con alfabetos distintos: URL-safe (-_ en lugar de +/), Base32, Base58 (Bitcoin), Base85.
// Input: H4sIAAAAAAAAA6tWKkktLlGyUlJQsjI0MAAAdIuT2RAAAAA= // ¿Es Base64 estándar? → sí, contiene +/ y padding = // ¿Es URL-safe Base64? → si contiene - o _ en lugar de + o / Receta 1 — Base64 estándar: From Base64 [alphabet: A-Za-z0-9+/=] Receta 2 — Base64 URL-safe: From Base64 [alphabet: A-Za-z0-9-_] Receta 3 — Detectar automáticamente con Magic: Magic [depth: 3, intensive: true] Truco: si el resultado tiene bytes inválidos, prueba con la otra variante
Múltiples Capas de Base64
Input: VkdocGN5QmpZWEpsWkNCc1lYa2dZbUZqYXc9PQ== Receta: 1. From Base64 → "VGhpcyBjYWxlZCBsYYkgYmFjaw==" 2. From Base64 → "This called laY back" Exportar receta como URL → compartir con el equipo en un clic
Otros Encodings Frecuentes en Malware
| Encoding | Identificador visual | Operación CyberChef | Dónde aparece |
|---|---|---|---|
| Base64 | A-Za-z0-9+/= | From Base64 | Muy común |
| Hex | 0-9a-f, en pares | From Hex | Muy común |
| URL encode | %XX | URL Decode | HTTP, C2 |
| HTML entities | & < ' | Unescape HTML Entities | Phishing |
| Unicode escapes | \u0041\u006C | Unescape Unicode Chars | JS ofusc |
| Charcode dec | 72,101,108,108,111 | From Charcode (base 10) | PowerShell |
| Base32 | A-Z2-7, sin minúsc | From Base32 | DNS tunneling |
Los hashes son funciones unidireccionales: dato → hash, nunca al revés. CyberChef calcula hashes para identificar muestras, verificar integridad y buscar en bases de datos de amenazas.
// Identificar una muestra de malware por hash // Input: contenido del fichero (cargar con el botón de fichero) Receta para generar IOCs de hash: 1. MD5 → d41d8cd98f00b204e9800998ecf8427e 2. Label → [MD5] // O usar "Generate all hashes" para obtener MD5+SHA1+SHA256 juntos 1. Generate all hashes MD5: d41d8cd98f00b204e9800998ecf8427e SHA-1: da39a3ee5e6b4b0d3255bfef95601890afd80709 SHA-256: e3b0c44298fc1c149afbf4c8996fb92427ae41e...
Buscar por Hash en VirusTotal
virustotal.com/gui/file/[SHA256]. Sin subir el fichero, solo por hash. Seguro y rápido.Identificar Hashes Desconocidos
// ¿Qué hash es este? → medir longitud en hex 32 chars hex → MD5 (128 bits) 40 chars hex → SHA-1 (160 bits) 56 chars hex → SHA-224 64 chars hex → SHA-256 ← más común en malware moderno 96 chars hex → SHA-384 128 chars hex → SHA-512 // En CyberChef: pegar el hash + usar "Analyse Hash" para identificarlo