
Detecta rootkits de Linux que utilizan señales para elevar los privilegios de los procesos.
Detecta rootkits de Linux que usan señales para elevar privilegios de proceso.
Algunos rootkits instalan manejadores de señales que escuchan señales específicas para elevar privilegios. Esta herramienta puede identificar estos rootkits enviando señales y observando el cambio de UID a root. Opcionalmente, lanza una shell root.
Probado con:
666)Puede descargar los últimos binarios precompilados desde la página de Releases; o compilar la última versión preliminar desde el código fuente:
git clone https://github.com/bcoles/rootkit-signal-hunter && \
cd rootkit-signal-hunter && \
cargo build --release
rootkit-signal-hunter -- [OPTIONS]
--min <MIN>: Número mínimo de señal (por defecto: 0)--max <MAX>: Número máximo de señal (por defecto: 64)-s, --shell: Lanzar una shell root (si se detecta)-t, --threads: Número de hilos de trabajo (por defecto: 16)-p, --pid: ID de proceso al que enviar señales (por defecto: $$)-v, --verbose: Habilitar salida detallada[!NOTE] La implementación de
--pidutiliza$$para representar el ID de proceso de un proceso recién creado. Esto fallará en shells que no cumplan con POSIX, como Fish.
Rootkits como Singularity
y Diamorphine permiten la escalada de
privilegios utilizando cualquier ID de proceso y pueden detectarse trivialmente con las
opciones predeterminadas (-s lanza una shell root):
rootkit-signal-hunter -s
Rootkits como KoviD requieren que se proporcione
un ID de proceso específico con la bandera -p / --pid:
rootkit-signal-hunter -s --pid 666
[!NOTE] Esto puede terminar el proceso legítimo con ID
666(si el usuario actual tiene el permiso necesario).
Este proyecto está licenciado bajo la Licencia MIT. Consulte el archivo LICENSE para obtener más detalles.
Reconocimiento a David Reguera Garcia (Dreg), quien implementó una detección basada en señales similar como parte de lsrootkit.
Copyright © 2025, bcoles