
Codifica. Decodifica. Identifica. Decodificación inteligente para cualquier dato.
Codifica. Decodifica. Identifica. Decodificación inteligente para cualquier dato.
Preeslanzamiento, y ya utilizable. El banco de trabajo funciona, el motor de detección desenvuelve cargas útiles por capas y el informe de análisis está completo.
Aún queda por delante: la auditoría de accesibilidad y la pasada de internacionalización. Un desensamblador y un motor de OCR quedan deliberadamente fuera del alcance — son proyectos propios, no operaciones.
El modelo habitual para una herramienta como esta asume que ya sabes qué son tus datos: eliges las operaciones, las encadenas, iteras. Eso está bien cuando reconoces el formato a simple vista, y es inútil cuando no lo haces — que es la mayoría de las veces que un analista se enfrenta a algo nuevo.
DecodeBox parte del otro extremo. Pegas el contenido y la herramienta averigua qué tiene entre manos: cada capa desenvuelta, cada indicador extraído, cada hallazgo de seguridad explicado, con la evidencia de cada afirmación visible en lugar de simplemente aseverada.
Todo se ejecuta en tu navegador. Ninguna entrada, ninguna receta y ningún archivo sale nunca de tu máquina — no hay ningún servidor al que enviarlo.
Una carga útil real del conjunto de pruebas: Base64 sobre Base64 sobre gzip sobre JSON, con un cargador de PowerShell en uno de los campos.
Findings 4 Indicators 7 Layers 8 257 ms
CRITICAL Cloud or service credential CWE-798
Input → Base64 → Base64 → gzip
AKIAIOSFODNN7EXAMPLE
CRITICAL PowerShell download-and-execute CWE-94
Input → Base64 → Base64 → gzip → JSON → Base64 → UTF-16LE
IEX (New-Object Net.WebClient).DownloadString
El segundo hallazgo está seis capas más abajo, y el último salto provino de un blob Base64 dentro de un campo JSON. Nada que haga grep sobre el blob original lo ve, y nada que desenvuelva una única cadena lineal llega hasta él.
Base64 → Base64 → MD5), en un remanente que no se puede decodificar como la firma de un JWT, o en una admisión honesta de que se alcanzó un límite y puede haber más debajo.Cuando nada declarado explica la entrada, DecodeBox prueba todas las claves XOR de un solo byte y todas las rotaciones y puntúa cada resultado por legibilidad — con una confianza que dice claramente que fue una búsqueda y no una coincidencia.
DecodeBox procesa entrada no confiable y deliberadamente malformada por diseño.
connect-src 'none' y script-src 'self' más un hash para el único script inline. Las fuentes se incluyen en el paquete en lugar de descargarse, y la compilación falla si alguna vez aparece una referencia a un CDN en la salida.eval, new Function y cualquier ruta que renderice la entrada como HTML están prohibidos por reglas de lint, no por convención.style-src sí permite 'unsafe-inline', porque React escribe atributos style inline; script-src, donde reside el riesgo real, se mantiene estricto. Para reportar una vulnerabilidad, consulte SECURITY.md — por favor, no abra un issue público para reportes de seguridad.
DecodeBox/
├── .github/workflows/ # CI, CodeQL, SBOM, markdown quality, Pages deployment
├── public/ # Bundled fonts, favicon, CNAME
├── src/
│ ├── engine/ # The analysis engine — the only half that knows about data
│ │ ├── index.ts # THE SEAM — the only module the interface imports from
│ │ ├── operations/ # One self-contained module per transformation
│ │ ├── detection/ # Entropy, charset, magic bytes, structural validity
│ │ ├── analysis/ # Recursive exploration, indicators, security findings
│ │ ├── ctf/ # Flag search, cipher key recovery, ranked hints
│ │ ├── core/ # Recipe executor, byte handling, ciphers, codecs
│ │ └── worker/ # The engine off the main thread, past a size threshold
│ ├── components/ # The interface: workspace, report, CTF mode
│ ├── store/ # One zustand store
│ ├── hooks/ # Interaction logic shared across components
│ ├── lib/ # Share links, saved recipes, recipe text format
│ ├── i18n/ # Every user-facing string
│ └── styles/ # Design tokens and themes
├── SECURITY.md
└── LICENSE