Está en la página 1de 8

Un informtico en el lado del mal

Seguridad Informtica, Hacking, Pentesting, LDAP Injection, Blind LDAP Injection,


SQL Injection, Blind SQL Injection, Heavy Queries, Connection String Parameter
Pollution, FOCA, Evil Foca, Latch, Dust RSS, MetaShield Protector, Faast,
Metadatos, Libros de Seguridad Informtica, Informtica 64, Recover Messages,
0xWord, Clico Electrnico, Eleven Paths, Telefnica y Chema Alonso. Las
opiniones son de los autores de los artculos y las mas son mas personales.
jueves, mayo 26, 2016

Cmo infiltrar malware o herramientas de hacking


en una empresa usando Excel
ltimamente, con la proliferacin de malware del tipo ransomware, las empresas
que no tenan ya bloqueada la descarga de ficheros ejecutables en
su Firewall o Proxy, la han bloqueado. La medida es efectiva por la mecnica de
infeccin de este tipo de malware, que en muchos casos implica la descarga de
un fichero ejecutable que es el que se encarga de cifrar la valiosa informacin
del usuario y de la empresa. Sin embargo, esta medida no tiene porque ser eficaz
frente a un ataque dirigido y hecho a medida como suelen ser los APT, como
vamos a ver.

Figura 1: Cmo infiltrar malware o herramientas de hacking en una empresa con Excel

Bloquear la descarga de ejecutables en el firewall de permetro por el que los


usuarios de la empresa navegan en Internet es una medida a tener en cuenta por
los responsables de seguridad dentro de la poltica de Defensa en
Profundidad de la red, pero una vez bloqueada esta descarga de ficheros,
inevitablemente surgen preguntas. Puede un atacante saltrsela fcilmente? Y
si se salta, es posible implementar de forma sencilla un ataque automatizado?
HTTPs Inspection: Canal cifrado o canal abierto
Supongo que hay varios enfoques para conseguir saltarse la deteccin de un
fichero EXE por parte del firewall en cuestin. Uno sera, por ejemplo, cifrar el

canal de comunicacin de las descarga punto a punto para que no se pueda


analizar ese trfico, pero desde hace aos los sistemas de navegacin
empresariales pueden implementar medidas de Bridging HTTPs - como
implementa desde hace aos Forefront TMG - para inspeccionar el trfico de
descarga que hacen los clientes. Es decir, los clientes para poder navegar por
Internet necesitan configurar un certificado raz del firewall y este hace de man
in the middle para inspeccionar trfico HTTPs.

Figura 2: HTTPs Inspection en Forefront TMG

En esta prueba de concepto, vamos a intentar engaar al firewall para que la


descarga de los ejecutables no sea considerada como tal, an cuando el trfico
pueda ser inspeccionado porque venga por HTTP o porque se est haciendo una
inspeccin HTTPs.
Infiltrando binarios por partes
Por empezar por algn sitio me voy a centrar en los archivos EXE y como solucin
perimetral un firewall con inspeccin de trfico y bloqueo de ficheros. Lo
primero es averiguar qu partes del ficheros son la firma de un EXE para
el firewall. Esto puede ser solo la cabecera inicial del binario con los Magic
Numbers que se buscan, o algo mucho ms elaborado donde se comprueben ms
partes del binario.

Figura 3: Primera parte del fichero EXE es detectada

Como primera prueba emprica, vamos a partirlo en dos y ver si una, ninguna o
las dos partes son detectadas por el firewall y lo bloquea o lo deja pasar. El
resultado que se obtiene es que el primer trozo, al descargarlo, es considerado
como un EXE y el segundo no:

Figura 4: La segunda parte del fichero s es descargada

Ya tenemos pistas. En el primer trozo del fichero EXE se encuentra la firma


que se busca como patrn para detectarlo y bloquear la descarga. Ser un
patrn? Si lo es, se podra trocear el fichero en partes lo suficientemente
pequeas para que ese patrn quedara diluido? La idea es que si lo troceamos lo
suficiente, podramos llegar a ofuscarle la firma. Despus de algunas iteraciones
jugando con el tamao de las partes del archivo, con 29 partes de 200 bytes del
principio del EXE y otra parte ms con el resto del fichero, llegamos a un
escenario como ste.

Figura 5: Fichero dividido en 30 partes

Una vez subidas al servidor web de turno se intentan descargar y todas bajan.
Hemos conseguido descargar un EXE estando prohibido. Ahora solo queda volver
a juntar las partes para conseguir reconstruir nuestra "herramienta de
hacking" Putty.

Figura 6: Putty se ejecuta correctamente una vez reconstruido el binario

Automatizando la infiltracin del binario con Excel


Ahora queda la segunda parte, en la que vamos a intentar automatizar el proceso
de recomponerlo. Para ello vamos a utilizar la potencia de Excel y sus macros que ya vimos que un atacante se puede llevar uno la base de datos completa de
la empresa con solo habilitar las macros - y que se han puesto de moda
ltimamente otra vez. Solo hay que programar una macro que descargue las
partes del EXE de la web donde estn colgados y que despus los junte otra vez.
Ese archivo Excel tendra que descargar las partes, despus cargar esas partes en
orden en un string y despus escribir ese string en un archivo binario que nivel
de cdigo no es muy difcil. Y usar despus la funcin Auto_Open(), por ejemplo,
para que se ejecute todo simplemente abriendo el Excel.

Figura 7: A partir del Excel se descargan las partes y se monta el archivo final

Con solo abrir el Excel - y conseguir que se ejecute la macro - el


fichero Excel descarga todas las partes del servidor desde la mquina interna de
la red detrs del firewall, las une y despus ejecuta el binario resultante.

Figura 8: Ejecucin de Putty con solo ejecutar la macro del fichero Excel

Proteccin en el end-point
Ya hemos conseguido que el fichero Excel con macros se baje un binario
saltndose el bloqueo de ficheros EXE en el firewall. La siguiente pregunta es si
un fichero de estas caractersticas ser muy llamativo para las protecciones
de end-point como los antivirus. Para la mayora no es significativo, pero adems
el cdigo se puede mejorar y ofuscar en diferentes iteraciones hasta que se
evada el motor antivirus en concreto que tenga la empresa objetivo de este
ataque.

Figura 9: El fichero Excel no llama la atencin de muchos Antivirus

Un posible problema es que el usuario si puede, tiene que habilitar las macros
para que esto funcione, pero con una campaa deSpear Phishing contra los
empleados de la empresa objetivo con este fichero Excel adjunto estarais
completamente seguros de que ningn usuario le va a dar a activar macros? Por
supuesto, existen polticas a nivel de Active Directory para que las macros vayan
firmadas, pero esto ya vimos hace tiempo que se puede saltar si el usuario
de Excel quiere o cae engaado para hacerlo, con las tcnicas de "Hacking
Remote Apps: Jailbreaking con Excel".
Owning con Metasploit
Ahora imaginad que en vez de el Putty el archivo fuera un script de Phyton
compilado a EXE con un cliente que devolviera unashell remota a travs

de HTTP, o un ransomware distribuido de esta forma o directamente


un Meterpreter para hacer diabluras con Metasploit, tal y como hicieron Chema
Alonso y Pablo Gonzlez en la conferencia del Security Innovation Day de
2014. Aqu os dejo el vdeo con el instante de tiempo de esta demo con Excel.
Figura 10: Metiendo una shell con Excel

No quiere decir este artculo que las medidas de bloqueo de ficheros EXE en
los firewalls por los que se navega sean intiles. Ni mucho menos, proporcionan
una proteccin adecuada para evitar que el malware pueda entrar fcilmente.
Pero estas medidas deben acompaarse de muchas otras. En este caso concreto
hemos hecho una divisin del binario para evadir las firmas, pero el atacante
podra haber cifrado el fichero completamente en lugar de meterlo por partes, o
encontrar otra estrategia para saltarse el fichero.
As que, dentro de la estrategia de defensa de una empresa, habra que aplicar
medidas de proteccin a todos los niveles, yfortificar Windows correctamente,
incluidas las opciones de Excel. Este artculo, solo es un ejercicio para probar
cmo un APTpuede acabar encontrando el camino si tiene tiempo para aprender
cules son tus defensas y preparar un ataque diseado especialmente para ti. No
te olvides de eso.

También podría gustarte