Analyze malicious .doc file
Nos dan un factura.zip y dentro un factura.doc. Hay que averiguar qué hace
al abrirse: qué vulnerabilidad explota, qué se descarga, a dónde se conecta y
qué deja en el disco. Cinco preguntas.
Este reto está dentro del curso Malware Analysis Fundamentals del path de SOC Analyst, como ejercicio, y no te dan un montón de herramientas para hacer el análisis por tu cuenta. Así que opté por lo más directo: sacar el hash del fichero y buscarlo en fuentes abiertas.
Primer vistazo
Primero el MD5:
md5sum factura.doc
05c137d8e79ce59ed6e4b7cd78e5b8a2 factura.doc
Buscándolo en any.run había un análisis de un fichero con el mismo nombre,
factura.doc, y el mismo MD5. No siempre habrá que hacer el análisis de todo
por nuestra cuenta, y más cuando todavía no tenemos tanto conocimiento: está
bien apoyarse en el trabajo que ya ha hecho otro.

Word abre el documento y, sin que nadie lo pida, arranca el editor de ecuaciones.
En el resumen de la ejecución any.run lo cuenta así:
- Se abre
factura.docdesde una carpeta temporal con Word (WINWORD.EXE). - Word lanza el editor de ecuaciones (
EQNEDT32.EXE) con-Embedding. - El editor de ecuaciones se usa para explotar la CVE-2017-11882 y ejecutar código.
- Después hay cambios en los certificados del sistema y una conexión de red sospechosa.
Preguntas
1. Tipo de exploit
What type of exploit is running as a result of the relevant file running on the victim machine?
Respuesta: rtf.exploit
Aquí me atasqué por sobrepensar. En VirusTotal ya lo indica en las etiquetas:
el fichero es un RTF, aunque se llame .doc. Que el hash no coincida con
el de antes es normal: busqué el MD5, pero VirusTotal enseña directamente el
SHA-256.

El mismo fichero ha circulado con otros nombres: aquí aparece como urgent-pour-signature.doc.
2. CVE
What is the relevant Exploit CVE code obtained as a result of the analysis?
Respuesta: CVE-2017-11882
Sale tanto en VirusTotal como en la etiqueta de any.run. Es una vulnerabilidad
de 2017 en el editor de ecuaciones de Microsoft Office (EQNEDT32.EXE), que es
justo el proceso que aparece colgando en el árbol.
3. Lo que se descarga
What is the name of the malicious software downloaded from the internet as a result of the file running?
Respuesta: jan2.exe
En any.run, en la pestaña Network Threats, hay una alerta marcada como
Potentially Bad Traffic del proceso EQNEDT32.EXE:

Pulsando en la alerta se ven los detalles, y tanto en Stream data como en
HTTP aparece la petición que hace EQNEDT32.EXE al servidor: un GET a
jan2.exe. El editor de ecuaciones no tiene ninguna razón para descargar
ejecutables de Internet.
4. IP y puerto
What is the IP address and port information it communicates with?
Respuesta: 185.36.74.115:80
En la misma alerta, en la pestaña Main:

5. Lo que deja en el disco
What is the exe name it drops to disk after it runs?
Respuesta: aro.exe
Esta se me atascó un poco. En el análisis de any.run no aparecía nada, y
buscando en VirusTotal, en Behavior → Files Dropped, filtrando por .exe,
estaba ahí:

Entre plantillas de Word y caché del navegador, un ejecutable en %APPDATA%.
Aprendizajes
- El hash primero: antes de abrir nada, buscar el hash en any.run y VirusTotal te da casi todo el análisis hecho.
- Un sandbox no lo ve todo: si el servidor del atacante ya no responde, la segunda fase no aparece. Hay que mirar en más de un sitio.
- Los procesos cuentan la historia: un Word que lanza el editor de ecuaciones y este que se conecta a Internet ya dice qué está pasando, sin saber nada del exploit.