
Escáner basado en IOC y YARA para detectar indicadores de compromiso mediante expresiones regulares de nombres de archivo, firmas YARA, coincidencia de hashes y comprobaciones de retroconexión C2 en endpoints.
Escribí un nuevo escáner YARA de Código Abierto llamado LOKI RS (Rust). LOKI (Python) ahora está oficialmente obsoleto.
Este proyecto ahora está en modo de mantenimiento inactivo. Esto significa que, aunque fusiono pull requests para correcciones de errores y problemas sencillos, actualmente no dispongo del tiempo para añadir nuevas funcionalidades o ampliar las existentes. Durante años, mi enfoque ha estado en desarrollar un escáner más avanzado, THOR, que ofrece una serie de mejoras sobre este proyecto. Existe una versión gratuita, THOR Lite; es más rápido, más estable y rigurosamente probado en nuestros entornos de CI—simplemente una mejor solución. Puedes encontrar una comparación de los escáneres de código abierto, gratuitos y comerciales aquí.
También he comenzado a trabajar en una versión basada en Rust de LOKI llamada LOKI 2. Sin embargo, no estoy seguro de cuándo alcanzará la paridad de funciones con la versión actual de LOKI. Además, creé un diagrama de flujo para ayudarte a decidir qué escáner se adapta mejor a tus necesidades.

Escáner de Indicadores Simples de Compromiso
La detección se basa en cuatro métodos de detección:
1. IOC de Nombre de Archivo
Coincidencia de expresión regular en la ruta/nombre completo del archivo
2. Verificación de Reglas Yara
Coincidencia de firma Yara en datos de archivos y memoria de procesos
3. Verificación de Hash
Compara hashes maliciosos conocidos (MD5, SHA1, SHA256) con los archivos escaneados
4. Verificación de Conexión de Retroceso C2
Compara los puntos de conexión de procesos con IOCs de C2 (nuevo desde la versión v.10)
Verificaciones Adicionales:
1. Verificación del sistema de archivos Regin (mediante --reginfs)
2. Verificación de anomalías de procesos (basada en [Sysforensics](http://goo.gl/P99QZQ)
3. Escaneo de SWF descomprimido (nuevo desde la versión v0.8)
4. Verificación de volcado SAM
El binario de Windows se compila con PyInstaller y debe ejecutarse como aplicación x86 tanto en sistemas x86 como x64.
No se requieren requisitos si usa el EXE compilado.
Si desea compilarlo usted mismo: