Mòdul Professional 5: A10 - Atac per adjunts

Índex

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.

  1. 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
    
  2. 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ític proxychains.

    Dins de Metasploit utilitzarem el mòdul auxiliary/server/socks_proxy, configurant SRVHOST 0.0.0.0, un port SRVPORT 8080 i tipus de socke VERSION 4a per exemple. Executarem amb run. 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?

  3. 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 Metasploit socks4 127.0.0.1 8080.

    Per executa run programa amb proxychains, per exemple un wpscan 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

4.2 Ampliació

Data: 2021-01-20 dc. 00:00

Autor: Raul Gimenez Herrada

Created: 2022-03-22 dt. 16:02