La cobertura de huellas es una fase crítica en el proceso de post-explotación en pentesting. Su objetivo es eliminar o alterar cualquier rastro de actividad que pueda delatar la presencia del atacante en el sistema comprometido. Esta práctica es esencial para evitar la detección y mantener el acceso al sistema durante el mayor tiempo posible.

Conceptos Clave

  1. Logs y Registros: Archivos que almacenan eventos y actividades del sistema.
  2. Herramientas de Monitoreo: Software que supervisa y registra actividades en el sistema.
  3. Técnicas de Ocultación: Métodos para borrar o alterar registros y logs.

Importancia de la Cobertura de Huellas

  • Evasión de Detección: Minimiza la posibilidad de que el atacante sea detectado por administradores de sistemas o herramientas de monitoreo.
  • Mantenimiento del Acceso: Permite al atacante mantener el acceso al sistema sin ser descubierto.
  • Prevención de Análisis Forense: Dificulta la tarea de los analistas forenses para reconstruir los eventos y actividades del atacante.

Técnicas Comunes de Cobertura de Huellas

  1. Borrado de Logs

Los logs son registros detallados de eventos y actividades en el sistema. Borrar estos registros es una técnica básica para ocultar la presencia del atacante.

Ejemplo de Borrado de Logs en Linux

# Borrar logs del sistema
sudo rm /var/log/auth.log
sudo rm /var/log/syslog

Ejemplo de Borrado de Logs en Windows

# Borrar logs de eventos
Clear-EventLog -LogName Security
Clear-EventLog -LogName Application
Clear-EventLog -LogName System

  1. Modificación de Timestamps

Alterar las marcas de tiempo de archivos y registros para que coincidan con actividades legítimas y evitar sospechas.

Ejemplo de Modificación de Timestamps en Linux

# Cambiar la fecha de modificación de un archivo
touch -t 202210101200 /path/to/file

Ejemplo de Modificación de Timestamps en Windows

# Cambiar la fecha de modificación de un archivo
(Get-Item "C:\path\to\file").LastWriteTime = "10/10/2022 12:00"

  1. Ocultación de Procesos

Esconder procesos maliciosos para que no sean visibles en las listas de procesos del sistema.

Ejemplo de Ocultación de Procesos en Linux

Utilización de rootkits para ocultar procesos:

# Instalación de un rootkit (ejemplo teórico, no ejecutar)
sudo apt-get install rootkit

Ejemplo de Ocultación de Procesos en Windows

Uso de herramientas como Process Hacker para ocultar procesos:

# Ejemplo teórico, no ejecutar
ProcessHacker.exe /hide PID

  1. Alteración de Configuraciones de Seguridad

Modificar configuraciones de seguridad para desactivar alertas y registros.

Ejemplo de Alteración en Linux

# Desactivar el logging de SSH
sudo sed -i 's/^LogLevel.*/LogLevel QUIET/' /etc/ssh/sshd_config
sudo systemctl restart sshd

Ejemplo de Alteración en Windows

# Desactivar el logging de eventos de seguridad
auditpol /set /subcategory:"Logon" /success:disable /failure:disable

Ejercicio Práctico

Ejercicio 1: Borrado de Logs en Linux

  1. Accede a una máquina virtual Linux.
  2. Genera algunos logs de autenticación fallida:
    ssh invaliduser@localhost
    
  3. Borra los logs de autenticación:
    sudo rm /var/log/auth.log
    

Ejercicio 2: Modificación de Timestamps en Windows

  1. Crea un archivo en Windows:
    New-Item -Path "C:\temp\example.txt" -ItemType "file"
    
  2. Modifica la fecha de creación del archivo:
    (Get-Item "C:\temp\example.txt").CreationTime = "01/01/2022 12:00"
    

Soluciones

Solución Ejercicio 1

  1. Accede a la máquina virtual Linux.
  2. Genera logs de autenticación fallida:
    ssh invaliduser@localhost
    
  3. Borra los logs de autenticación:
    sudo rm /var/log/auth.log
    

Solución Ejercicio 2

  1. Crea un archivo en Windows:
    New-Item -Path "C:\temp\example.txt" -ItemType "file"
    
  2. Modifica la fecha de creación del archivo:
    (Get-Item "C:\temp\example.txt").CreationTime = "01/01/2022 12:00"
    

Errores Comunes y Consejos

  • No verificar permisos: Asegúrate de tener los permisos necesarios para borrar o modificar archivos de logs.
  • No reiniciar servicios: Después de modificar configuraciones, reinicia los servicios afectados para que los cambios surtan efecto.
  • Dejar rastros: Asegúrate de cubrir todas las huellas, incluyendo logs de aplicaciones específicas y no solo los logs del sistema.

Conclusión

La cobertura de huellas es una habilidad esencial en el pentesting que permite a los atacantes evadir la detección y mantener el acceso al sistema comprometido. Es fundamental entender y practicar estas técnicas para realizar pruebas de penetración efectivas y realistas. En el siguiente módulo, exploraremos cómo documentar los hallazgos y proporcionar recomendaciones de remediación.

© Copyright 2024. Todos los derechos reservados