
iocx v0.7.6
Un motor de análisis estático, extensible y determinista, que extrae IOCs de alta señal de binarios PE y texto, construido para la automatización de SOC y pipelines modernos de análisis de amenazas.
IOCX
Extracción de IOC determinista y sin riesgo para pipelines de seguridad modernos
Extracción estática de IOC de un archivo PE usando la CLI de IOCX
Proyecto Oficial IOCX
Este es el motor IOCX original para la extracción estática determinista de IOC y el análisis de PE. Cualquier otro repositorio que use el nombre "iocx" no está afiliado a este proyecto.
Enlaces oficiales:
- PyPI: https://pypi.org/project/iocx/
- Github: https://github.com/iocx-dev/iocx
- Sitio web: https://iocx.dev/
Por qué IOCX importa
El malware moderno es adversario por defecto — malformado, evasivo y diseñado para romper extractores ingenuos.
- Las herramientas que ignoran el binario colapsan ante PEs malformados
- Los sandboxes son inseguros e inutilizables en CI/CD
- La reproducibilidad es esencial para pipelines automatizados
IOCX está construido para entornos donde la corrección y el determinismo realmente importan.
El Motor IOCX
IOCX es el motor oficial de extracción estática de IOC — un sistema determinista y consciente del binario, construido para DFIR, automatización de SOC, seguridad en CI/CD y pipelines de threat-intel a gran escala.
A diferencia de los extractores basados solo en regex o las herramientas dependientes de sandbox, IOCX realiza:
- análisis puramente estático
- riesgo de ejecución cero
- salida estable y determinista
- heurísticas probadas contra adversarios
Es un componente central del ecosistema MalX Labs para el análisis de amenazas moderno y escalable.
Prueba IOCX en 10 segundos
echo "http://malicious.example" | iocx -
O escanea un archivo PE de forma segura:
iocx suspicious.exe -a deep
Por qué existe IOCX
Los equipos de seguridad enfrentan tres problemas persistentes:
- Los extractores de regex se rompen ante entradas adversarias
- El sandboxing es inseguro, lento e inadecuado para la automatización
- La mayoría de las herramientas de IOC son inconsistentes, lentas o producen salidas sutilmente diferentes entre ejecuciones
IOCX resuelve esto con un motor determinista y puramente estático diseñado para la automatización, la seguridad y la escala.
Lo que IOCX no es
IOCX intencionalmente no es:
- un sandbox
- una herramienta de análisis de comportamiento
- un emulador
- un motor de enriquecimiento
Nunca ejecuta código no confiable. Nunca realiza análisis dinámico. Es puramente estático por diseño — por seguridad, determinismo y compatibilidad con CI/CD.
Filosofía de diseño
IOCX está diseñado para las realidades del malware moderno, no para las suposiciones de las herramientas heredadas.
1. Determinismo sobre ambigüedad
Salida estable y reproducible — sin aleatoriedad, sin volatilidad.
2. Estático sobre dinámico
La ejecución es insegura. El análisis estático es predecible, escalable y compatible con CI.
3. Ingeniería centrada en el adversario
PEs malformados, RVAs corruptos, cadenas hostiles — IOCX los trata como entrada normal.
4. La estabilidad del esquema como contrato
Los sistemas posteriores nunca deberían romperse al actualizar.
5. Rendimiento sin concesiones
150–300 MB/s en texto sin procesar. 6–15 MB/s en PEs típicos. Predecible incluso bajo la peor carga adversaria.
Estos compromisos se derivan de una metodología de investigación publicada para el análisis estructural de PE — construcción determinista de fixtures, disciplina de anomalía única y el comportamiento del cargador de Windows como oráculo de corrección. Consulta docs/methodology.md para la metodología completa, y paax.dev para la taxonomía más amplia de PE adversario y la suite comercial de fixtures.
Qué hace diferente a IOCX
| Capacidad | IOCX | Extractores de IOC típicos | Herramientas de Sandbox / Dinámicas |
|---|---|---|---|
| Seguridad | Cero ejecución, puramente estático | Solo regex, sin seguridad binaria | Ejecuta código no confiable (alto riesgo) |
| Determinismo | Salida totalmente determinista | No determinista bajo ruido | No determinista por diseño |
| Conciencia del binario | Análisis completo de PE, heurísticas | Sin soporte binario | Sí, pero inseguro + lento |
| Resistencia a adversarios | Probado contra PEs malformados, cadenas hostiles | Fácilmente evadible | A menudo falla o clasifica erróneamente |
| Rendimiento | 150–300 MB/s (texto), 6–15 MB/s (PE) | Altamente variable | Extremadamente lento |
| Compatible con CI/CD | Sí — seguro, determinista, rápido | Parcial | No — inseguro para pipelines |
| Estabilidad del esquema | Garantizada | Rara | Ninguna |
En resumen: IOCX está construido para la realidad adversaria real, no para entradas idealizadas.
Casos de uso
CI/CD y DevSecOps
- Escanear binarios antes del lanzamiento
- Detectar URLs, IPs o secretos accidentales en las compilaciones
- Aplicar barreras de seguridad con riesgo de ejecución cero
SOC y respuesta a incidentes
- Extraer indicadores de alertas o del texto del portapapeles del analista
- Inspeccionar muestras de malware de forma segura sin ejecución
- Normalizar IOCs en JSON estructurado
Threat Intelligence
- Procesar feeds a escala
- Analizar informes no estructurados
- Construir pipelines de enriquecimiento sobre salida determinista
Automatización y scripting
- Canalizar logs o artefactos a través de IOCX
- Usar la API de Python para ETL o flujos de trabajo por lotes
- Extender con detectores personalizados
Perfiles de rendimiento
1. Extracción de IOC sin procesar (Texto, Logs, Buffers)
150–300 MB/s de rendimiento sostenido Ruta rápida — sin análisis de PE.
| Detector | Tiempo por 1 MB | Rendimiento |
|---|---|---|
| Crypto | 0.0037 s | ~270 MB/s |
| Filepaths | 0.0041 s | ~250 MB/s |
| IP | 0.0065 s | ~156 MB/s |
| Domains | 0.0035 s | ~300 MB/s |
2. Archivos PE típicos (~39 KB)
- 0.0122 s (típico)
- 0.0145 s (con heurísticas)
- 6–15 MB/s de rendimiento
3. PE denso adversario (1.5 MB)
- 0.192 s
- ~7.6 MB/s de rendimiento
- Activa anomalías TLS, anomalías estructurales, patrones anti-debug
4. Motor completo (No-PE)
- 1 MB: 0.038 s