Ir al contenido

Módulo 05 — trojan

📖 1. Definicion Teorica y Contexto Historico

Sección titulada «📖 1. Definicion Teorica y Contexto Historico»

Un troyano informatico (trojan) es un tipo de malware que se disfraza de software legitimo o util para engañar al usuario y persuadirlo de ejecutarlo. A diferencia de un virus o gusano, un troyano no se replica a si mismo: depende completamente de la ingenieria social para su propagacion.

Caracteristica Virus Gusano Troyano
Se replica Si (requiere hospedero) Si (autonomo) No
Necesita accion del usuario Si (abrir archivo) No Si (ejecutar)
Propagacion automatica No Si No
Se disfraza No necesariamente No Si (siempre)

El nombre proviene del Caballo de Troya de la mitologia griega: los aqueos dejaron un caballo de madera enorme frente a las puertas de Troya como supuesta ofrenda a los dioses. Los troyanos lo aceptaron sin sospechar y lo arrastraron dentro de sus murallas. Durante la noche, soldados griegos ocultos dentro del caballo salieron y abrieron las puertas, permitiendo el ejercito griego conquerir la ciudad.

En informatica, el troyano funciona de manera similar: el usuario cree estar ejecutando algo util (una imagen, una factura, una actualizacion) pero en realidad esta ejecutando codigo malicioso.

Ano Nombre Vector de entrega Payload oculto
2007 Zeus (Zbot) Email phishing con adjunto Robo de credenciales bancarias via keylogging
2013 Emotet Email con enlace o adjunto Descargador de otros malware (modular)
2018 Emotet v3 Documentos Word con macros Robo de credenciales + propagacion lateral
2019 Agent Tesla Email con adjunto DOC/DOCX Keylogger + stealer + captura de pantalla
2020 SolarWinds Sunburst Compromiso de actualizacion Backdoor + acceso persistente a la red

Emotet, activo entre 2014 y 2021, es uno de los ejemplos mas sofisticados de troyano modular. Su ciclo de vida tipico:

  1. Entrega: Email de phishing que parece un documento bancario o factura.
  2. Ejecucion: El usuario habilita macros en Word, ejecutando el payload inicial.
  3. Descarga: Emotet descarga modulos adicionales desde servidores C2.
  4. Robo: Modulo de keylogger y stealer roba credenciales bancarias.
  5. Propagacion: Emotet se usa como plataforma para entregar Ryuk (ransomware).
  6. Actualizacion: Se auto-actualiza para evadir antivirus.

⚙️ 2. Mecanismo de Funcionamiento Tecnologico (Flujo Logico)

Sección titulada «⚙️ 2. Mecanismo de Funcionamiento Tecnologico (Flujo Logico)»

El flujo tipico de un ataque con troyano se describe en los siguientes pasos:

  1. Preparacion: El atacante crea un archivo que parece legitimo (ejecutable con icono de documento, nombre sugestivo).

  2. Entrega: El archivo se distribuye por email, descarga web, redes sociales o medios removibles.

  3. Ingenieria social: El nombre y apariencia del archivo generan confianza o urgencia:

    • “factura_pendiente_2026.pdf.exe” (urgencia financiera)
    • “imagen_familia.jpg.exe” (curiosidad personal)
    • “update_flash_player.exe” (necesidad tecnica)
  4. Ejecucion: El usuario ejecuta el archivo, creyendo que es legitimo.

  5. Payload visible: Se muestra una “factura” o “imagen” falsa para despistar.

  6. Payload oculto: En segundo plano, el malware:

    • Instala persistencia (claves de registro, tareas programadas)
    • Establece conexion C2 con el servidor del atacante
    • Comienza a robar datos o descargar modulos adicionales
sequenceDiagram
participant A as Atacante
participant E as Email/Web
participant V as Victima
participant M as Malware
participant C as Servidor C2
A->>E: Prepara troyano disfrazado
A->>E: Envia email con adjunto
E->>V: Email llega a victima
V->>V: Ve "factura pendiente"
V->>M: Ejecuta el archivo
M->>V: Muestra factura falsa
Note over M: En segundo plano...
M->>C: Establece conexion C2
C->>M: Descarga modulos adicionales
M->>C: Exfiltra credenciales
A->>C: Accede a datos robados
  • Pilar Afectado: Integridad (Integrity)
  • Justificacion Tecnica: El troyano compromete la integridad de multiples maneras:
    • Codigo no autorizado: El troyano introduce codigo malicioso en el sistema que el usuario no autorizo, modificando el comportamiento esperado del equipo.
    • Archivos modificados: Puede alterar archivos del sistema, configuraciones y datos del usuario sin su conocimiento.
    • Credenciales comprometidas: Al robar contrasenas, el atacante puede modificar cuentas, cambiar configuraciones y alterar datos en sistemas legítimos.
    • Falsa confianza: La naturaleza engañosa del troyano crea un entorno donde el usuario cree que su sistema esta limpio cuando en realidad esta comprometido, lo que invalida toda verificacion manual de integridad.
    • Cadena de suministro: Como visto en SolarWinds, los troyanos pueden comprometer actualizaciones de software legitimo, afectando la integridad de la cadena de distribucion.

🛡️ 4. Mitigacion bajo la Norma de Controles CIS

Sección titulada «🛡️ 4. Mitigacion bajo la Norma de Controles CIS»
  • CIS Control 7: Continuidad del Suministro (Email and Web Browser Protections)
  • Concepto: Este control establece que las organizaciones deben proteger los sistemas de correo electronico y navegadores web, que son los vectores de entrega principales para troyanos. Incluye proteccion contra phishing, inspeccion de adjuntos, y verificacion de la legitimidad de archivos descargados.
  • Implementacion Practica en Laboratorio: El script inspeccion_de_contenido.py implementa este control de las siguientes formas:
    • Deteccion de extensiones duales: Identifica archivos con doble extension (ej: .pdf.exe, .jpg.exe) que son el sello clasico de un troyano.
    • Analisis de marcadores de payload: Escanea el contenido de archivos buscando indicadores de compromiso (marcadores de payload, direcciones C2).
    • Verificacion de nombres sospechosos: Detecta nombres tipicos de troyanos (update.exe, setup.exe, invoice.pdf.exe).
    • Limpieza automatizada: Elimina todos los artefactos detectados y genera un informe.

🚀 5. Detalles de la Simulacion Educativa (Python)

Sección titulada «🚀 5. Detalles de la Simulacion Educativa (Python)»
  • Que hace trojan.py:

    1. Crea 5 archivos troyano simulados dentro de directorio_pruebas/:
      • update.exe — disfraz de actualizacion del sistema
      • imagen.jpg.exe — ejecutable disfrazado de imagen (extension dual)
      • factura_2026.pdf.exe — documento falso con payload
      • README.txt — archivo de texto con payload de descarga embebido
      • config.ini — configuracion con marcadores C2 simulados
    2. Muestra un analisis de deteccion explicando que senales indicarian un troyano real.
    3. Incluye marcadores (TROJAN_PAYLOAD_SIMULATION, C2_SERVER_ENDPOINT) para que la defensa los detecte.
    4. Cada archivo contiene comentarios didacticos que explican la tecnica de disfraz utilizada.
  • Que hace inspeccion_de_contenido.py:

    1. Escanea archivos buscando marcadores de payload (TROJAN_PAYLOAD_SIMULATION, C2_SERVER_ENDPOINT).
    2. Detecta nombres sospechosos y extensiones ejecutables.
    3. Identifica extensiones multiples (disfraz de troyano).
    4. Muestra hallazgos con hash SHA-256 de cada archivo.
    5. Elimina todos los artefactos detectados.
    6. Muestra recomendaciones de defensa: mostrar extensiones reales, verificar firmas, no abrir adjuntos no solicitados.
  • Archivos con doble extension: Cuando el sistema de archivos o un antivirus reporta archivos con extensiones duales como .pdf.exe, .jpg.exe, .doc.exe — este es el sello clasico de un troyano que intenta disfrazarse de documento inofensivo
  • Marcadores de payload en contenido: Cuando herramientas de DLP o analisis de contenido detectan patrones como TROJAN_PAYLOAD_SIMULATION, C2_SERVER_ENDPOINT o URLs de servidores C2 embebidas en archivos que supuestamente son documentos normales
  • Nombres de archivos tipicos de troyano: Alertas sobre archivos con nombres como update.exe, setup.exe, invoice.exe, flash_player.exe descargados desde fuentes no verificadas
  • Actividad sospechosa post-ejecucion: Cuando un archivo descargado ejecuta procesos adicionales, establece conexiones de red o modifica configuraciones del sistema despues de ser abierto
  • Escenario real: Un usuario recibe un email con un adjunto “factura_2026.pdf” que en realidad es un ejecutable. El sistema de correo no lo detecta, pero la politica de extensiones del Endpoint lo bloquea al intentar ejecutarse
  • Inspeccion de contenido revela la verdad: Mientras el nombre y la extension del archivo intentan engañar al usuario, el analisis del contenido real (firmas binarias, marcadores de payload, estructura del archivo) revela si es un documento legitimo o un ejecutable malicioso
  • Verificacion de extensiones expone el disfraz: Los sistemas operativos pueden configurarse para mostrar las extensiones reales de los archivos, eliminando la capacidad del troyano de ocultar su naturaleza ejecutable detras de una extension falsa
  • Deteccion de marcadores de IOC: Los patrones de indicadores de compromiso (C2 endpoints, payloads conocidos) permiten identificar troyanos incluso cuando no existen firmas de antivirus conocidas para ellos
  • Limpieza automatizada reduce el riesgo humano: La eliminacion automatica de artefactos detectados evita que un usuario menos informado intente abrir o ejecutar el archivo sospechoso
  1. Analisis de archivos troyano: Ejecuta python trojan.py para crear los archivos simulados. Luego ejecuta python inspeccion_de_contenido.py y analiza cada hallazgo: que extension real tiene cada archivo, que marcadores de payload contiene, y que tipo de troyano simula (actualizacion, imagen, factura)
  2. Comparacion de extensiones: Antes de ejecutar la limpieza, lista los archivos en directorio_pruebas/ con ls -la y observa las extensiones reales. Despues de la limpieza, verifica que todos los artefactos fueron eliminados. Documenta que archivos pasarian desapercibidos para un usuario no tecnico
  3. Diseno de politica de extensiones: Basandote en los tipos de troyanos detectados, diseña una politica de seguridad para el correo electronico de una empresa que incluya: filtros de extensiones permitidas, inspeccion de adjuntos, y entrenamiento para usuarios sobre como identificar archivos sospechosos

Disclaimer: Este modulo es estrictamente educativo. Los archivos generados son texto plano inofensivo que no contiene codigo malicioso ejecutable. Los marcadores simulan indicadores de compromiso para fines de demostracion.