Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
ksentinel — Monitor de integridad del kernel de Linux para detectar el enganche de llamadas al sistema | Kitploit
Herramientas/GitHubGitHub/matheuzsecurity/ksentinel
Herramientas DefensivasDetección de Intrusiones
GitHubmatheuzsecurity/ksentinel

ksentinel

Monitor de integridad del kernel de Linux para detectar el enganche de llamadas al sistema

Ver Repositorio
887hace 6 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

ksentinel - Monitor de Integridad de Syscalls del Kernel

Rootkit Singularity

Descripción general

ksentinel monitorea funciones críticas del kernel y la tabla de syscalls en busca de modificaciones no autorizadas. Detecta syscalls comunes que son objetivo de la mayoría de rootkits, incluyendo hooks de ftrace, kprobes y secuestro de tabla de syscalls.

Características

  • Verificación de integridad del prólogo de funciones (basada en hash FNV-1a)
  • Monitoreo de tabla de llamadas al sistema (512 entradas)
  • Verificación de LSTAR MSR (punto de entrada de syscall x86_64)
  • Protección contra descarga con mecanismo de clave de desbloqueo
  • Monitoreo continuo con intervalos configurables

NOTA: ksentinel está en su versión inicial; más mejoras vendrán en futuros commits.

Funciones Monitoreadas

Capa VFS:

  • filldir, filldir64, do_getdents64, vfs_read, vfs_write, vfs_open

Pila de Red:

  • tcp4_seq_show, tcp6_seq_show, udp4_seq_show, udp6_seq_show

Credenciales:

  • commit_creds, prepare_kernel_cred

Sistema de Módulos:

  • load_module, free_module

Infraestructura de Trazado:

  • register_kprobe, register_ftrace_function, ftrace_set_filter

Más de 500 wrappers adicionales de syscalls mediante coincidencia de prefijos.

Compilación

root@kitploit:~
make

Durante la compilación, se genera y muestra una clave de desbloqueo aleatoria de 32 caracteres. Anótala inmediatamente. Esta clave está incrustada en el módulo compilado y no se almacena externamente. Mantenla segura si la protección contra descarga está habilitada.

Instalación

root@kitploit:~
sudo make install

El módulo se carga oculto de lsmod con la protección contra descarga habilitada por defecto.

Uso

Carga Manual

root@kitploit:~
sudo insmod ksentinel.ko

Usando el Script de Administración

root@kitploit:~
sudo ./ksentinel-manager.sh load      # cargar módulo
sudo ./ksentinel-manager.sh status    # verificar estado
sudo ./ksentinel-manager.sh watch     # monitorear en vivo
sudo ./ksentinel-manager.sh violations # ver alertas

Monitoreo de Registros

root@kitploit:~
dmesg -wT | grep ksentinel

Desbloqueando el Módulo

Cuando la protección contra descarga está habilitada, el módulo debe desbloquearse antes de retirarlo:

root@kitploit:~
echo "your_32char_key" > /proc/.ksctl

O usar el administrador:

root@kitploit:~
sudo ./ksentinel-manager.sh unlock

Eliminando el Módulo

root@kitploit:~
sudo rmmod ksentinel

Parámetros del Módulo

Ejemplo con parámetros personalizados:

root@kitploit:~
sudo insmod ksentinel.ko period_ms=5000 anti_unload=false

Consideraciones de Rendimiento

ksentinel realiza verificaciones periódicas de integridad basadas en el parámetro period_ms.

Intervalos más bajos proporcionan una detección más rápida pero aumentan el uso de CPU. El intervalo predeterminado (2000 ms) tiene un impacto mínimo en sistemas modernos.

Ejemplos de Detección

Hook en Línea Detectado

root@kitploit:~
ksentinel: [CHANGE - HOOK PATTERN] sys_getdents64 @ 0xffffffff81234567
  baseline=1234567890abcdef  current=fedcba0987654321
  bytes: e9 ab cd ef 12 90 90 90 ...
  flags: JMP/CALL_DETECTED ENDBR64_PREFIX

Hook de Tabla de Syscalls

root@kitploit:~
ksentinel: [SCT HOOK] syscall[78] expected=0xffffffff81111111 got=0xffffffffa0222222 (fake_getdents+0x0)

Manipulación de LSTAR

root@kitploit:~
ksentinel: [LSTAR TAMPERED] baseline=0xffffffff81800000 now=0xffffffffa0300000 (evil_syscall_entry+0x0)

Detección de Rootkits Conocidos

ksentinel puede detectar modificaciones realizadas por:

  • PUMAKIT - hooking basado en ftrace (18 syscalls)
  • Diamorphine - parcheo de tabla de syscalls
  • KoviD - ocultamiento basado en kprobes

La detección depende de cargar ksentinel antes que el rootkit.

Requisitos

Configuración del Kernel:

  • CONFIG_KALLSYMS=y
  • CONFIG_KPROBES=y
  • CONFIG_MODULES=y

Kernels Soportados:

  • Linux 5.4 hasta 6.12+
  • Arquitectura x86_64 (verificación LSTAR)
  • Soporte ARM64 (sin verificaciones LSTAR)

Limitaciones

  1. Solo Detección - No previene ni elimina rootkits
  2. Suposición de Línea Base - Asume que el kernel está limpio al momento de cargar el módulo
  3. Condición de Carrera - Los rootkits cargados antes de ksentinel no pueden ser detectados
  4. Evasión - Los rootkits sofisticados pueden apuntar al propio código de monitoreo

Consideraciones de Seguridad

  • Cargar ksentinel lo antes posible durante el arranque
  • Almacenar la clave de desbloqueo de forma segura fuera de línea

Solución de Problemas

El Módulo No Carga

Verificar la configuración del kernel:

root@kitploit:~
grep -E "KALLSYMS|KPROBES" /boot/config-$(uname -r)

El Módulo No se Descarga

El módulo está oculto con protección contra descarga. Desbloquear primero:

root@kitploit:~
sudo ./ksentinel-manager.sh unlock

Desarrollo

root@kitploit:~
make clean          # limpiar artefactos de compilación
make                # compilar módulo
make install        # cargar módulo
make uninstall      # descargar módulo

Contribuciones

Las contribuciones son bienvenidas. Mantén el estilo del código y añade pruebas para nuevas características.

Licencia

GPL-2.0-only

Este programa es software libre licenciado bajo GPL versión 2.0. Cualquier modificación debe preservar la atribución al autor original y distribuirse bajo la misma licencia.

Consulte el archivo LICENSE para conocer los términos completos.

Autor

MatheuZSecurity

Comunidad de Investigadores de Rootkits: https://discord.gg/66N5ZQppU7

Aviso Legal

Esta herramienta es para investigación de seguridad y administración de sistemas. Úsala de manera responsable. El autor no es responsable por el mal uso o daños causados por este software.

Descargar herramienta
ParámetroTipoPor defectoDescripción
period_msuint2000Intervalo de verificación de integridad en milisegundos
sym_prefixesstring"sys_,x64_sys,do_sys,ksys_"Prefijos de símbolos separados por comas a monitorear
extra_symsstring""Símbolos específicos adicionales a vigilar
anti_unloadbooltrueHabilitar protección contra descarga