El Cyber Swiss Army Knife - una aplicación web para cifrado, codificación, compresión y análisis de datos
CyberChef es una aplicación web sencilla e intuitiva para realizar todo tipo de operaciones «cibernéticas» dentro de un navegador web. Estas operaciones incluyen codificaciones sencillas como XOR y Base64, cifrados más complejos como AES, DES y Blowfish, creación de binarios y volcados hexadecimales, compresión y descompresión de datos, cálculo de hashes y sumas de verificación, análisis de IPv6 y X.509, cambio de codificaciones de caracteres y mucho más.
La herramienta está diseñada para permitir que analistas técnicos y no técnicos manipulen datos de formas complejas sin tener que lidiar con herramientas o algoritmos complejos. Fue concebida, diseñada, construida y mejorada de forma incremental por un analista durante su tiempo de innovación del 10 % a lo largo de varios años.
[El sitio web oficial de CyberChef se encuentra aquí][1] ¡a disfrutar!
Puedes ejecutar CyberChef con Docker (sin necesidad de cadena de herramientas) o compilarlo desde el código fuente con Node.js.
Requisitos previos
docker build --tag cyberchef --ulimit nofile=10000 .
docker run -it -p 8080:8080 cyberchef
http://localhost:8080 en tu navegadorSi prefieres omitir el proceso de compilación, puedes usar la imagen precompilada
docker run -it -p 8080:8080 ghcr.io/gchq/cyberchef:latest
Igual que antes, navega a http://localhost:8080 en tu navegador.
Esta imagen se compila y publica a través de nuestros Flujos de trabajo de GitHub.
Si quieres desarrollar CyberChef o ejecutarlo sin Docker, puedes compilarlo directamente con Node.js.
Requisitos previos
v24 (consulta Soporte de Node.js)[!NOTE]
Puedes usar nvm para gestionar las versiones de Node.js y usar la versión de desarrollo actual en este proyecto para evitar conflictos con otros proyectos en tu máquina.
Configuración
git clone https://github.com/gchq/CyberChef.git
cd CyberChef
npm install
Tareas comunes
| Comando | Descripción |
|---|---|
npm start | Ejecuta el servidor de desarrollo con recarga en vivo en http://localhost:8080. |
npm run build | Produce una compilación de producción en el directorio build/prod. |
npm test | Ejecuta las suites de pruebas de Node.js y de operaciones. |
npm run testui | Ejecuta las pruebas del navegador (UI). |
npm run lint | Comprueba el código contra las reglas de linting. |
npm run newop | Crea una nueva operación mediante el script interactivo de inicio rápido. |
Si te encuentras con un error de memoria insuficiente al compilar recetas grandes, aumenta el tamaño del heap de Node con npm run setheapsize.
Hay cuatro áreas principales en CyberChef:
Puedes usar tantas operaciones como quieras de formas sencillas o complejas. Algunos ejemplos son: