Mòdul Professional 5: A10 - Atac per adjunts
1 Objectius
Conèixer i practicar les capacitats de Meterpreter. Realitzar un atac per email. Conèixer tècniques d'ocultació d'extensions i arxius així com de binding.
2 Enunciat
Enllaçat amb l'activitat homòloga de M1, cal que creeu un payload de Meterpreter que enviareu comprimit o camuflat per email a la vostra adreça @lacetania.cat.
En principi en l'activitat anterior ja varem veure com crear el payload per a Windows i configurar-ne la reverse shell de meterpreter. Ara ens tocarà disimular-la una mica.
Imaginem que volem camuflar l'arxiu el payload payload.exe
per a que sembli el més possible a factura.pdf
, hem de realitzar varies coses:
2.1 Preparar l'atac
2.1.1 Ocultar l'acció (binding)
La tècnica de binding és juntar dos arxius, normalment dos executables, de forma que un s'executi després de l'altre i si pot ser de forma silenciosa. Aquesta tècnica bàsicament busca poder executar un arxiu alhora que obrir un altre, de forma que l'usuari no sigui conscient de tot el que s'ha executat.
En el nostre cas tenim un payload.exe
. Adicionalment buscarem per Internet una factura qualsevol en format PDF i la descarregarem i anomenarem factura.pdf
. Per simplicitat i referència deixarem aquests noms tal qual, en un atac real caldria amagar-los una mica més.
Amb aquests dos arxius utilitzarem des de Windows el programa iexpress
que és pròpi de Microsoft i serveix per a fer instal·ladors bàsicament. En aquest vídeo podeu veure com utilitzar-lo.
Com a "Install Program" indicarem cmd /c payload.exe
i com a "Post Install Program" cmd /c explorer factura.pdf
.
Es podría fer quelcom més el·laborat utiltizant arxius per lots (.bat) de forma que elimines els temporals, etc. De nou per simplicitat ho deixem així.
2.1.2 Ocultar l'extensió
El primer pas és ocultar l'extensió real de l'executable, per fer-ho tenim vàries opcions, des de MS Windows.
La primera i més classica és modificar el nom de l'arxiu a quelcom semblant a factura.pdf.exe de forma que si la víctima té l'opció de vista "ocultar extensiones comunes" veurà factura.pdf.
Un altre opció, per complicar el reconeixement de l'arxiu com un executable i per tant com a possiblement perillós és utilitzar una extensió executable poc coneguda. Canviarem l'extensió .exe
per .scr
que continua sent executable perfectament (feu la prova).
Finalment un altre técnica a aplicar és, primer de tot canviar el nom a quelcom semblant a facturapdf.src
, després editant el nom de l'arxiu de nou ens situem just davant de pdf
i fem botó dret triant Insert Unicode control character
i RLO
. Això el que fa és que escrivim a partir d'aquest punt en odre invers, quedant l'extensió fake com a última. Així el resultat serà facturarcs.pdf
.
Jugueu amb aquestes opcions, combinant-les, i deixeu l'executable com més us agradi.
2.1.3 Ocultar la icona
Després utilitzarem ResourceHacker
per canviar l'icona del programa. Busqueu o genereu una icona de PDF i assigneu-la com a icona del payload.
2.1.4 Enviar l'atac
En aquest cas recordeu que estem simulant un atac mitjançant adjunts, per tant cal que us envieu un email amb el pretext que us han facturar una compra que no heu fet en l'empresa o quelcom semblant i adjuntant l'arxiu amb el payload.
Com sabeu GMail bloca adjunts executables, si ho provem també bloca els arxius comprimits, la veritat és que ho complica tot força. Per tant muntarem un equip amb un apache i hospedarem el binari mentre que al email adjuntem una línia amb un enllaç cap a ell de l'estil "Adjunt: Factura.pdf". Aquí recordeu que podeu formatar el email amb HTML i donar-hi un aspecte creible a la secció de l'adjunt.
En la víctima: En la víctima hem de tenir en l'arxiu de hosts, i per simular que l'atacant ha comprat el domini, donat d'alta una entrada amb atacant.cat
i la IP del nostre servidor web que conté tant el payload com el handler.
2.1.5 Handler
Establiu en handler a la màquina atacant per a que quedi a l'espera de la shell de meterpreter inversa.
2.2 Simulació "víctima"
Entreu a la màquina "víctima" i, obrint el Thunderbird, obriu el email del atacant i "piqueu" tot descarregant el suposat adjunt i obrint la suposada factura.
2.3 Post explotació
Aquí caldrà que iniciem varies accions:
- Migrar a un altre servei, ja que el Meterpreter no sabem quant durarà.
- Intentar escalar privilegis ¿Ho aconseguim?
- Volcar els Hash del sistema per fer-ne força bruta més endavant.
2.3.1 Pivoting
La part que ens interessa més és com fer un pivotatge, és a dir, com utilitzar el PC compromés per aprofundir a la xarxa de la víctima atacant altres equips que no teniem a l'abast fins ara. De fet, imaginant una estructura d'empresa, és com si un cop dins d'un client (quehem accedit per un atac de email) ara volem atacar el Active Directory.
Per fer-ho Metasploit i Meterpreter ens proveeix de varies eines, les dues més interessant són: routes
, socks
i el programa proxychains
.
- Rutes
Podem afegir enrutament a Metasploit mitjançant la comanda
route
.Aquesta comanda té una sintaxis tal que :
route add <ip>/<màscara> <id sessió meterpreter>
. Un cop fet, tot el tràfic generat a dins de Metasploit amb destí la xarxa indicada s'enrutarà per la sessió indicada. Això ens permetra llançar de forma simple tots els exploits i eines de Metasploit contra objectius dins la xarxa compromesa.route add 192.168.50.0/24 1
- Socks
Però i si volem utilitzar eines fora de Metasploit? Doncs aquí utilitzarem els
socks
de Linux, un mòdul de Metasploit i el míticproxychains
.Dins de Metasploit utilitzarem el mòdul
auxiliary/server/socks_proxy
, configurantSRVHOST 0.0.0.0
, un portSRVPORT 8080
i tipus de sockeVERSION 4a
per exemple. Executarem ambrun
. Tot plegat farà que Metaploit actui com a servidor socks: tot el que entri per el port 8080 serà redirigit cap a Metasploit i a partir d'aquí ell enrutarà.Per tant qualsevol programa que ens permeti utilizar un proxy ja el podrem enrutar cap a la xarxa víctima tot utilitzant de proxy
127.0.0.1:8080
.Però i els programes que no tenen opció de proxy?
- Proxychains
Aquí és on entra
proxychains
. Aquesta marevella de programa el que fa és enrutar tot el tràfic generat per una aplicació, la que sigui, a un servidor proxy. Per configurar-ho tan sols haurem d'editar l'arxiu XXX i afegir com a servidor socks el nostre Metasploitsocks4 127.0.0.1 8080
.Per executa run programa amb
proxychains
, per exemple unwpscan
podem fer:sudo proxychains wpscan --url http://192.168.50.20/wordpress -e at -e ap -e u
Per fer un
namp
podem optar per una comanda semblant a aquesta:proxycahins namp -Pn -sT -n -v 192.168.50.20
Notar en aquest darrer cas que un proxy socks enrutarà connexions tipus TCP/UDP per tant tot el tràfic ICMP no. D'aquí l'ús del paràmetre
-Pn
i que no puguem fer un ping.També podem redirigir el nostre navegador afegint el servidor proxy.
3 Entrega i avaluació
3.1 Entrega
Realitzeu una memòria en PDF de tots els passos realitzats i resultats obtinguts.
3.2 Avaluació
4 Repàs i ampliació
4.1 Repàs
- Hackplayers: Taller de pivoting.
- Zonasystem: Pivoting con Metasploit.