> For the complete documentation index, see [llms.txt](https://books.spartan-cybersec.com/cppj/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://books.spartan-cybersec.com/cppj/tecnicas-de-persistencia/persistencia-avanzada.md).

# Persistencia Avanzada

## <mark style="color:green;">Rootkits</mark>

Un rootkit es una forma sofisticada de malware que permite a los atacantes mantener acceso continuo a un sistema comprometido mientras ocultan su presencia de los administradores del sistema y las soluciones de seguridad. Los rootkits pueden ser extremadamente difíciles de detectar y remover debido a su capacidad para operar en un nivel profundo del sistema operativo.

### <mark style="color:green;">**Tipos de Rootkits**</mark>

1. <mark style="color:green;">**Rootkits de Modo Usuario (User Mode):**</mark> Estos rootkits operan en el mismo nivel que las aplicaciones normales del usuario. Interceptan y manipulan llamadas del sistema operativo para ocultar su presencia y las acciones de los atacantes. Los rootkits de modo usuario suelen ser más fáciles de desarrollar pero también más fáciles de detectar que los rootkits de modo kernel.

   **Ejemplo:** Un rootkit de modo usuario podría modificar herramientas de administración como `ps` y `ls` en Linux para que no muestren procesos o archivos maliciosos.
2. <mark style="color:green;">**Rootkits de Modo Kernel (Kernel Mode):**</mark> Los rootkits de modo kernel operan a nivel del núcleo del sistema operativo, lo que les permite tener control total sobre el sistema. Estos rootkits pueden interceptar las llamadas al sistema, modificar estructuras de datos del núcleo y ocultar cualquier rastro de actividad maliciosa.

   **Ejemplo:** Un rootkit de modo kernel podría modificar la tabla de llamadas del sistema (System Call Table) para interceptar funciones críticas y ocultar archivos o procesos.
3. <mark style="color:green;">**Rootkits de Firmware:**</mark> Estos rootkits se instalan en el firmware del hardware del sistema, como el BIOS o UEFI. Debido a que el firmware se ejecuta antes del sistema operativo, los rootkits de firmware pueden persistir incluso después de reinstalar el sistema operativo.

   **Ejemplo:** Un rootkit de firmware podría modificar el código del BIOS para que cargue el malware cada vez que se inicie el sistema.

### <mark style="color:green;">**Técnicas de Evasión**</mark>

* <mark style="color:green;">**Hooking de Funciones del Sistema**</mark><mark style="color:green;">:</mark> Los rootkits interceptan y manipulan las funciones del sistema operativo para ocultar su presencia.
* <mark style="color:green;">**Modificación de Memoria**</mark><mark style="color:green;">:</mark> Alteran estructuras de datos críticas en la memoria para evitar la detección.
* <mark style="color:green;">**Ocultación de Procesos y Archivos**</mark><mark style="color:green;">:</mark> Manipulan herramientas y APIs del sistema para que no muestren procesos o archivos maliciosos.

### <mark style="color:green;">**Detección y Remediación**</mark>

* <mark style="color:green;">**Análisis de Integridad**</mark><mark style="color:green;">:</mark> Utilizar herramientas que verifiquen la integridad de archivos críticos del sistema y comparen con valores conocidos.
* <mark style="color:green;">**Escaneo de Rootkits**</mark><mark style="color:green;">:</mark> Herramientas especializadas como chkrootkit y rkhunter pueden ayudar a detectar rootkits.
* <mark style="color:green;">**Monitoreo de Comportamiento**</mark><mark style="color:green;">:</mark> Analizar comportamientos inusuales del sistema que puedan indicar la presencia de un rootkit.
* <mark style="color:green;">**Reinstalación de Firmware**</mark><mark style="color:green;">:</mark> En el caso de rootkits de firmware, puede ser necesario reinstalar o actualizar el firmware del hardware.

## <mark style="color:green;">Bootkits</mark>

Los bootkits son una forma avanzada de malware similar a los rootkits, pero que se cargan antes del sistema operativo durante el proceso de arranque. Esto les permite tomar el control del sistema en una etapa muy temprana y evadir la mayoría de las medidas de seguridad implementadas por el sistema operativo.

### <mark style="color:green;">**Funcionamiento de los Bootkits**</mark>

* <mark style="color:green;">**Infección del Sector de Arranque**</mark><mark style="color:green;">:</mark> Los bootkits infectan el sector de arranque del disco duro (Master Boot Record - MBR) o el código de arranque del BIOS/UEFI.
* <mark style="color:green;">**Carga Antes del Sistema Operativo**</mark><mark style="color:green;">:</mark> Al estar ubicados en el sector de arranque, los bootkits se ejecutan antes de que el sistema operativo se cargue, lo que les permite controlar el proceso de arranque.
* <mark style="color:green;">**Manipulación del Proceso de Arranque**</mark><mark style="color:green;">:</mark> Modifican el proceso de arranque para cargar el malware en la memoria y asegurarse de que se ejecute cada vez que el sistema se inicie.

### <mark style="color:green;">**Técnicas de Evasión**</mark>

* <mark style="color:green;">**Cifrado y Ofuscación**</mark><mark style="color:green;">:</mark> Utilizan técnicas de cifrado y ofuscación para ocultar su código y dificultar la detección.
* <mark style="color:green;">**Modificación del MBR/UEFI**</mark><mark style="color:green;">:</mark> Alteran el MBR o el código de arranque del UEFI para asegurarse de que el bootkit se cargue antes del sistema operativo.
* <mark style="color:green;">**Persistencia a Nivel de Firmware**</mark><mark style="color:green;">:</mark> Algunos bootkits pueden modificar el firmware para garantizar la persistencia incluso después de la reinstalación del sistema operativo.

### <mark style="color:green;">**Detección y Remediación**</mark>

* <mark style="color:green;">**Herramientas de Análisis de Arranque**</mark><mark style="color:green;">:</mark> Utilizar herramientas especializadas para analizar el sector de arranque y detectar modificaciones maliciosas.
* <mark style="color:green;">**Actualización de Firmware**</mark><mark style="color:green;">:</mark> Reinstalar o actualizar el firmware del sistema para eliminar el bootkit.
* <mark style="color:green;">**Reparación del MBR**</mark><mark style="color:green;">:</mark> Utilizar herramientas de recuperación del sistema para reparar el MBR y eliminar el código malicioso.

## <mark style="color:green;">BIOS/UEFI Malware</mark>

El malware que infecta el BIOS o UEFI es uno de los tipos de malware más persistentes y difíciles de detectar. Estos tipos de malware se instalan en el firmware del sistema, lo que les permite persistir a un nivel muy bajo, incluso después de formatear el disco duro o reinstalar el sistema operativo.

### <mark style="color:green;">**Funcionamiento del Malware de BIOS/UEFI**</mark>

* <mark style="color:green;">**Infección del Firmware**</mark><mark style="color:green;">:</mark> El malware se instala en el firmware del BIOS o UEFI, que se ejecuta antes del sistema operativo.
* <mark style="color:green;">**Persistencia a Bajo Nivel**</mark><mark style="color:green;">:</mark> Debido a que el firmware se ejecuta antes que el sistema operativo, el malware puede controlar el proceso de arranque y garantizar su persistencia.
* <mark style="color:green;">**Modificación del Proceso de Arranque**</mark><mark style="color:green;">:</mark> El malware puede modificar el proceso de arranque para cargar código malicioso y mantener el control sobre el sistema.

### <mark style="color:green;">**Técnicas de Evasión**</mark>

* <mark style="color:green;">**Modificación del Firmware**</mark><mark style="color:green;">:</mark> Alteran el firmware para ocultar su presencia y dificultar la detección.
* <mark style="color:green;">**Persistencia a Nivel de Hardware**</mark><mark style="color:green;">:</mark> Debido a que operan a nivel de firmware, pueden persistir incluso después de la reinstalación del sistema operativo.
* <mark style="color:green;">**Evasión de Medidas de Seguridad**</mark><mark style="color:green;">:</mark> Al operar antes del sistema operativo, pueden evadir la mayoría de las medidas de seguridad y soluciones antivirus.

### <mark style="color:green;">**Detección y Remediación**</mark>

* <mark style="color:green;">**Análisis de Firmware**</mark><mark style="color:green;">:</mark> Utilizar herramientas especializadas para analizar el firmware del sistema y detectar modificaciones maliciosas.
* <mark style="color:green;">**Reinstalación o Actualización del Firmware**</mark><mark style="color:green;">:</mark> Reinstalar o actualizar el firmware para eliminar el malware.
* <mark style="color:green;">**Medidas de Seguridad del Firmware**</mark><mark style="color:green;">:</mark> Implementar medidas de seguridad como la protección de escritura del firmware y el arranque seguro (Secure Boot) para prevenir infecciones.
