MUCS UAH - Análisis Avanzado de Malware (Introducción al análisis de malware)

Introducción al análisis de malware

Sesión 1

Javier JUNQUERA SÁNCHEZ | javier.junquera@uah.es

Tipos de malware

Molesto

  • Joker
  • Adware
  • Spammer

Phishing

  • Spamers
    • Envío masivo de publicidad: puede ser también puerta de entrada a phishing
  • Phishing
    • Envío de correo fraudulento
  • SET Spear Phishing
    • Herramientas para evaluar seguridad contra ingeniería social
  • Threat Research New Spam Campaign Impersonates a Variety …
    • ¿Bajo riesgo?
  • SET Spear Phishing
    • Herramientas para evaluar seguridad contra ingeniería social
  • Threat Research New Spam Campaign Impersonates a Variety of Government Agencies from Different Countries
    • Depende

Cryptojacking

  • Infectar para minar criptomonedas
  • No tiene por qué tener mucho impacto en el equipo, más allá del rendimiento
  • Puede afectar a terceros (Caso CR)
  • Coinhive
    • No es malware, es una librería, y ya está retirado
    • Con la aparición de Monero (minado por CPU), infectar puede salir rentable
    • Ofuscado en muchas ocasiones, pero detectable por picos de CPU
  • Más información
    • El servicio de minería de criptomonedas Coinhive anunció su cierre
https://unaaldia.hispasec.com/2022/01/malware-de-mineria-de-criptomonedas-ocultado-en-torrent-de-spider-man-no-way-home.html

Backdoor

  • Puertas traseras en el sistema, o en subsitemas
  • Pueden ser parte del software, o un artefacto instalado ad-hoc para actuar como puerta trasera
    • E.g. Team viewer podría ser una backdoor si no lo instala el usuario legítimo
  • EvilGnome
    • Escondido como una extensión de Gnome
    • Tiene un C&C
    • Capacidades de grabación de audio, imagen, Keylogger y lectura de disco
    • Mantiene persistencia con crontab
  • Más información
    • EvilGnome: Rare Malware Spying on Desktop Users
  • Nuevas tendencias
  • Nuevas tendencias
    • Compromiso de la cadena de suministro (supply chain)

Worm / Virus

  • Movimiento lateral
    • O por qué no podemos analizar el malware en la universidad sin poner medidas para que no se escape
  • Botnet
    • O cómo convertir nuestra máquina en culpable de un incidente de seguridad

Botnet

  • C&C / C2
    • Por red
      • Clearnet
      • Darknet
    • Mediante covert channels
      • ¡Lowball en Dropbox!
      • Difícil de filtrar
  • Mirai
    • Crea una botnet para lanzar DDOS usando dispositivos IoT
    • Busca masivamente cuáles tienen password débiles
    • ~ 50.000 equipos infectados
  • Más información
    • Breaking Down Mirai: An IoT DDoS Botnet Analysis
    • The ZMap Project

Downloader

  • Downloader
    • Código de descarga de elemento malicioso*
  • Launcher
    • Ejecuta código presente ya en la víctima (ejecuta, dispara los mecanismos de persistencia o desempaqueta)
  • Dropper
    • Inyecta código (normalmente, bajo nivel)

* Google: Potencialmente peligroso

Exploit

  • BlueKeep
    • Usado en campañas de mineros
    • Ataca equipos con RDP
    • Alto impacto, precedido por Eternal Blue (como veremos) y sucedido por DejaBlue
  • Más información
    • BlueKeep RDP Attacks are Starting – Patch CVE-2019-0708 Now
    • BlueKeep exploitation activity seen in the wild
    • ¡Muy interesante!

Spyware

  • Keylogger
    • Lectura de teclas pulsadas (emails, passwords, etc)
  • Exfiltración de datos
    • Documentos, imágenes, contraseñas…
  • RATs (Troyanos)
  • Mimikatz
    • Extracción de credenciales en Windows
    • Payloads públicos en muchos formatos: shellcode, powershell…
  • Algunas herramientas legítimas
  • Más información
    • Mimikatz Credential Theft Techniques
    • gentilkiwi/mimikatz: A little tool to play with Windows security

Troyanos

  • Emotet
    • Vector de ataque: Spear phishing / Malspam
    • Macros ofimáticas
    • Robo de credenciales bancarias
    • Puerta de entrada a otro malware
  • Más información
    • Malware Emotet: una introducción al troyano bancario
    • Emotet is dead, long live Emotet - Víctor Acín [RootedCON2020-ES]

APT

  • Stuxnet
    • Vector de ataque: Pendrives infectados
    • Ataque a centrifugadoras de uranio en Irán
    • Utiliza varios 0-day
    • Escenario de ciberguerra
  • Más información
    • Symantec W32.Stuxnet Dossier
    • Stuxnet Facts Report

Scareware

  • Como el phishing
    • Utiliza ingeniería social
  • El virus policía
    • Antepasado del ransomware

Ransomware

  • Cifra los archivos y pide rescate
  • Pago con criptomonedas
  • Convertido en un auténtico negocio (con atención al “cliente”):
  • WannaCry
    • Usaba EternalBlue (luego lo vemos) para entrar
    • Altísimo impacto
    • Movimiento lateral
    • Detenido mediante Sinkhole
  • Más información
    • WannaCry Report
    • The sinkhole that saved the internet
  • Ryuk
    • Pocas veces se presenta aislado (es utilizado por droppers)
    • Presente en incidentes a niveles muy altos (Everis, CadenaSER, etc.)
  • Más información
    • Everis Hacked: Ransomware Sample Emerges, Company Yet to Comment
    • A One-two Punch of Emotet, TrickBot, & Ryuk Stealing & Ransoming Data
https://es.slideshare.net/JavierJunqueraSnchez/de-parche-a-vysion-construyendo-un-ecosistema-cti-sobre-la-darknet

New gangs! Extorsionadores

RaaS

https://insights.sei.cmu.edu/blog/ransomware-as-a-service-raas-threats/

[RB]ootkit

  • Rootkit
    • Adquiere capacidades de super usuario, y gestiona llamadas al sistema para ocultarse
  • Bootkit
    • Se ubica en el kernel del sistema operativo, o incluso antes

Rootkit

  • Scranos
    • Cadena de infección muy completa
    • Spyware + Adware
    • Movimiento a través de redes sociales
  • Más información
    • Inside Scranos – A Cross Platform, Rootkit-Enabled Spyware Operation

Bootkit

Killware

https://www.bleepingcomputer.com/news/security/ransomware-attack-at-german-hospital-leads-to-death-of-patient/

Metodología de análisis

Definición de objetivos

¿Qué queremos conseguir con nuestro análisis?

Respuesta a incidentes

  1. Identificar
    • Activos y elementos del sistema
  2. Proteger
    • Medidas de securización
  3. Detectar
    • Desviaciones en indicadores
  4. Responder
    • Análisis y mitigación
  5. Recuperar
    • Plan de recuperación y mejora

Obtención de evidencias

  • Evidencia
    • Elemento software/hardware que contiene información sobre el incidente: Disco, dumps, etc
  • Artefacto
    • Elemento interesante que extraemos de la evidencia
  • ¿Qué haremos?
    • Honeypots + Sandbox
      • Sesión 3: Honeypot
      • Sesión 4: Sandboxing
    • Repositorios públicos
    • Guardar todo incidente que detectemos
      • Ahora veremos cómo

Custodia

  • Haremos una “custodia especial”:
    • No solo no queremos modificar los datos
    • Queremos evitar que se vayan de paseo (Sesión 3)

Inventariado

  • También veremos cómo inventariar todo, y crearemos nuestro repositorio para compartir lo que encontremos:
    • The jungle (sesión 3) + Fuzzy Hashing

Análisis de malware (laboratorio)

Windows VM

https://developer.microsoft.com/en-us/windows/downloads/virtual-machines/

Azure Education

https://portal.azure.com

Generación de informe

  • Indicadores
    • IOC: Indicadores de Compromiso.
      • Un dato
      • Estándar (o intento de…): OpenIOC
    • IOA: Indicadores de Ataque
      • Múltiples datos encadenados
    • TTP: Tactics, Techniques and Procedures
    • IODEF
      • Estándar del IETF para indicadores de incidentes
    • STIX

STIX

https://oasis-open.github.io/cti-documentation/stix/intro

YARA

Lo veremos con el análisis de binarios (https://yara.readthedocs.io/)

https://blog.malwarebytes.com/security-world/technology/2017/09/explained-yara-rules/

Generación de recomendaciones

Extraeremos TTPs: Técnicas, Tácticas y Procedimientos

  • Modelo KillChain
    • Modelado desde una perspectiva similar al pentesting
  • Mitre ATT&CK
    • MITRE ATT&CK
    • Modelado de amenazas
    • STIX & TAXI
  • Comparación
    • MITRE ATT&CK vs. Cyber Kill Chain

Cyber Kill-chain (1/3)

https://www.apriorit.com/dev-blog/582-employing-the-mitre-att-ck-matrix

Cyber Kill-chain (2/3)

  • Reconocimiento
    • Búsqueda en redes sociales
  • Militarización
    • Creación de documento sobre la compañía con macro
  • Entrega
    • Envío de email

Cyber Kill-chain (3/3)

  • Explotación
    • Un empleado lo abre
  • Instalación
    • Se instala en el registro
  • Command & Control
    • Se comunica a través de Tor
  • Acciones sobre el objetivo
    • Exfiltra datos
https://attack.mitre.org/
https://d3fend.mitre.org/

Generación de respuestas

  • Alimentación de sistemas IDS/IPS
    • Creación de reglas de detección
      • OSSEC
      • Wazuh
      • SNORT
      • Suricata
    • DNS Sinkhole
    • SCAP
    • Reglas yara (sesión 7)
  • Si da tiempo… (Sesión 11+1)
    • Sesión “especial” de respuesta en IDS/IPS

Sigma

https://github.com/Neo23x0/sigma

MISP

https://github.com/MISP/MISP/
https://www.misp-project.org/

Análisis de malware: procedimiento y ejemplos

Procedimiento

  1. Clasificación de la muestra — ¿Qué tengo delante?
  2. Análisis estático básico — Composición básica a alto nivel
  3. Análisis estático avanzado — ¿Qué cosas podría hacer? Ver código ejecutable.
  4. Análisis dinámico básico — ¿Qué cosas hace?
  5. Análisis dinámico avanzado — ¿Cómo trabaja a bajo nivel?

¿A qué nos podemos enfrentar?

  • PE
    • exe
    • dll
  • elf
  • .NET
  • apk
  • jar
  • pdf
  • ps
  • js
  • doc
    • vb
  • jpg, png

Informes reales

EternalBlue

  • Checkpoint
    • Informe a alto nivel (Intro + Background)
    • Detección de vulnerabilidad
    • Flujo de ejecución del ataque
    • Análisis de traza de red
  • Informe
    • EternalBlue - Everything There Is To Know

Ryuk

  • Mcafee
    • Detección de lenguaje
    • Indicadores técnicos
    • Heurística del programa
  • Informe
    • Ryuk Ransomware Attack: Rush to Attribution Misses the Point

Emotet

  • CCN
    • Cadena de ataque
    • Identificación e indicadores
    • Downloader + Análisis de binario
    • Análisis de ejecución (debugging)
    • IOCs
  • Informe de análisis
    • Informe Código Dañino CCN-CERT ID-13/22
  • Informe de recomendaciones
    • CCN-CERT IA-76/19 Medidas de actuación frente al código dañino EMOTET

Ejercicio

Analizar un reporte y subir a foro de BlackBoard

  1. Ransomware
  2. Troyano
  3. Bootkit
  4. Backdoor
  5. Rootkit
  6. Banker
  7. Worm
  8. Spammer

Próxima sesión

  • Al laboratorio
    • A montar el laboratorio