Está en la página 1de 32
Articulos de hacking Blog de Raj Chandel Menu ## Hogar » Equipo Rojo » Enumeracién de Active Directory: PowerView Equipo Rojo Enumeracién de Active Directory: PowerView Abril 26,2021 Por Raj Chandel La enumeracién de Active Directory es un desafio incluso para algunos de los atacantes experimentados y es facil pasar por alto algunos componentes clave y perder el cambio para elevar ese punto de apoyo inicial que podria recibir. En este articulo, le traemos métodos que puede usar para enumerar AD mediante PowerShell Tabla de contenidos + Introduccién + Get-NetUser + Get-UserProperty + Find-UserField + Invoke-UserHunter + Get-NetDomain + Get-NetDomainController + Get-NetComputer + Get-UserProperty + Get-NetForest + Get-NetForestCatalog + Get-NetForestDomain + Get-NetLoggedon + Get-DomainPolicy + Get-NetOU + Get-NetGroup + Get-NetGroupMember + Get-NetGPO + Buscar-GPOLocation + Invoke-EnumerateLocalAdmin + Get-NetProcess + Invoke-ShareFinder + Invoke-FileFinder + Invoke-ACLScanner + Find-LocalAdminAccess + Get-NetSession + Conclusién Introduccién Hemos configurado un laboratorio de Active Directory que imita un entorno de la vida real con un montén de usuarios, méquinas y vulnerabilidades. En este articulo / demostracién, nos centramos en nuestra capacidad de enumerar informacién que luego se puede utilizar para elevar los privilegios o poder ayudar con el movimiento lateral, Una herramienta con el nombre de PowerView fue desarrollada e integrada por Will Schroeder (también conocido como harmjy). Pronto se convirtié en un kit de herramientas integral para realizar ataques y enumeracién de Active Directory. Para esta demostracién, asumiremos que hemos ganado el punto de apoyo inicial. Ahora usaremos PowerShell con PowerView para enumerar la méquina y el dominio. En caso de que tenga dificultades para ejecutar cualquiera de los comandos representados, use el GitHub oficial para el proceso de instalacién. Get-NetUser En nuestra configuracién de active Directory Lab, creamos 7 usuarios con diferentes roles y privilegios. Podemos confirmar esto viendo los usuarios y equipos de Active Directory como se muestra en la imagen. By Active Directory Uses and Computers File Action View Help @eo\2mR OB SEIEBE| Se&erae [J Active Directory Users and Com) BS Saved Queries ¥ Fi ignitelocal i Buitin Computers {@) Domain Controllers 5 FereignSecurityPrincipal mR i kes ©) LestandFound [Gl Managed Service Accou 15 Program Data Bl Sales Bl System Bl Tech Users = veN 1B NTDs Quotes [Bl TPM Devices Esto fue para mostrar y correlacionar la informacién que estamos a punto de enumerar mediante PowerShell. El atacante ha transferido el PowerView al sistema de destino. Para ejecutar el script de PowerShell en el sistema, la directiva de ejecucién debe establecerse en Omitir como se muestra en la imagen. A continuacién, importar los médulos desde el script de PowerView. Este fue un proceso de una sola vez. Después de esto, el atacante puede usar directamente los médulos para realizar la enumeracién. Para obtener los usuarios que estén NEM BE DEEETBUOT Baar: User B oeet User B ignite User & jepnect User B jeenal User 2B saL Service sas B yeshita User jess Parsinaradit activos en la red, el atacante ejecuts el siguiente comando. i. | Get! copyright (C) 2016 Microsoft Corporation. Users\administrat eee ees Sree ive ioe urate ountexpi Sotaeate saa eer ae US ei ey 4/11/2021 3 12/31/1600 4 erene See g inst ieest ited Reneetere te arar cy POnESt eos MOOR, Imenberof Sot ras Mere emery eye t rats r) Cars Los usuarios que se enumeran no solo estén restringidos a los nombres de usuario. Los datos recopilados consisten en un recuento de inicio de sesién que puede dar una idea de un usuario activo o inactive en la red. A continuacién, hay un badpasswordtime que indica la Ultima hora y fecha en que se realizé un intento de iniciar sesién con una contrasefia no vélida en esta cuenta. A continuacién, una pequefia descripcién del usuario con los nombres de los grupos de los que forma parte este usuario en particular. Por Uitimo, muestra Ia fecha y hora desde el ultimo cambio de contrasefia. Toda esta informacién es muy importante cuando el atacante estd tratando de aprender sobre el comportamiento del usuario. reeriad 2 60 Breet ens Beg aera) eeeataat) Poirerie Sea aera Ma ect eesti eased EOS ate I Teer rc pease Ora orate er ne are Sera) 3 i~501555289-2168925624-2051597760-1103 Pests pUreelt eee) BP VECYeIP See Ee Geese 2 9223372036854775807 erate 4 Rera DOC (e En CR te ent te neelicetl fastens cs apes il Orage lee yB LE Tr ert tasl Yivaed fast logon CUAL phips eer peahioag 12/31/1600 Dieseesag CN=Person, CN=Schema, CN=Confi guration, DC=ignite,DC=local Rete cratic Mee ep Yee ear CL Rea Valo MeL UO Y Percale Bia ee eee eso Ayo) EAE “barre 66048 16577 freer ttl Base pwdlastset 6/29/2020 10:08:49 AM Seiar) (eects 1 PCrree gs SPIE UROL Sees CN=geet ,0U=Tech ,DC=ignite,DC=local Wapesa ees Stee Me rca Teabaras es pea Cat ae UP eer) eae ea eee eas 5-1-5-21-501555289-2168925624-2051597760-1104 cas ca aa eager EUS eur) ders eee Rested EPPEEV PE GCCT Eat lg Easel Cane eat heel ile a pases ry ee Sapentiel EUR lee ee te eee oe eta Foarrnad REE re nn poaseasrisg Fane Mela Me gt eet Met area tore wee gor Me aM RU EUEL ORE E UNIS es ence eye eee peated Brg pirs rer sear) Seiereta ° a os Informacién similar estd disponible para los usuarios Yashika y Geet. Para obtener una lista abstracta de los usuarios creados en la red, tome el nombre comuin mediante el comando select en la salida de! médulo Get-NetUser. Administrador, Yashika, Geet, Aarti, Raj, Pavan, Jeenali, Japneet, etc. son los diversos usuarios en este entorno de red. Del mismo modo, para recopilar informacién sobre un usuario en particular. Por ejemplo. después de que el atacante extrajo usuarios en la seccién anterior, se elige un usuario especifico para ser atacado. Ahora, se requiere mds informacién sobre un usuario en particular. Esto se puede hacer usando una marca -Nombre de usuario con el nombre de Yashika User. usuario que el atacante desea apuntar. En este caso, el atacante eligi Get-NetUser -UserNane yashika Gens cern net PeeERET ETE I} Cares) CI TBI AY Al Fab bad t fee El atacante extrae una salida simplificada pero detallada con respecto al usuario de Yashika. Get-UserProperty Al trabajar con los Usuarios y sus propiedades, vemos que hay una variable con el nombre pwdlastset. Podemos usar esto para verificar qué usuario es reacio a cambiar sus contrasefias. Esto se puede configurar en cualquiera de las propiedades que se extrajeron en la anterior. Para esta demostracién, extraeremos la propiedad password last set de todos los usuarios Get-UserProperty ~2ropledades pxdlastset EE Ces Pat pudlastset Bereta 12/31/1600 4:00! 42/31/1600 4:00:00 pm 6/29/2020 9:54: Find-UserField Hay momentos en los que hay tantos usuarios en la red que se vuelve muy dificil para el administrador de dominios realizar un seguimiento de todos los usuarios o sus credenciales. Aqui es donde recurren a algunas de las técnicas arriesgadas para guardar la informacién de las credenciales. Un buen ejemplo que he visto més que nunca en el entomo real es guardar las credenciales o informacién importante sobre el usuario en su descripcién. Esto se puede extraer mediante el uso de Find-UserField con un término de biisqueda. En esta demostracién, utilizamos el término pass para buscar posibles contrasefias. El usuario Yashika tiene su contrasefia escrita y guardada en su descripcién. Esto no se limita a este tipo de informacién. También se pueden extraer muchos datos diferentes utilizando el conjunto correcto de palabras clave, como built. Esto extraerd al atacante de las cuentas que son cuentas integradas. nTerm Ces _ cat car orate caigsett cosy n cn La informacién que se extrae mediante UserField es la informacién almacenada en las Propiedades de ese usuario, Mientras estd en el servidor, esto se puede ver abriendo la lista de usuarios y luego haciendo clic derecho en cualquier usuario en particular. A continuacién, elija Propiedades. Esto dard lugar a una ventana similar a la que se muestra en la imagen de abajo. Aqui, podemos ver que el Administrador ha proporcionado la contrasefiaensu 30 de Descripcién. No hace falta decir que esto no debe hacerse en absoluto. Desde el punto de vista del atacante, siempre verifique si hay tales descripciones, ya que contendrén alguna pista que pueda ayudarlo a llegar mds lejos yathika Properties x Published Caificales Member OF Password Repiction Dalin Object Secuty __Envronment Sessions Rate contr Remote Desktop Serices Profie OMe ——_—Atrbute Etor Generel Addrese Account Profle Telephonse Orgaizaton sei ] a | lastname: Displayname: ——_[yeshike Desoto ass Pasenerd@1 Office Telephone rumbe: Other. Ema Web pase Other. OK Conca only He Invoke-UserHunter Al enumerar el dominio, el atacante que tenga un enfoque dirigido podrd extraer més datos y eso mds rdpido. La configuracién en los servidores domésticos en los que practicamos no tiene una restriccién de tiempo a la que los atacantes tengan que adherirse. En las evaluaciones de equipo rojo de la vida real, si el atacante se estd tomando su tiempo dulce para extraer datos, representan un riesgo para ser detectados y ser expulsados de su acceso inicial o incluso ser capturados. Aqui es donde un poco de reconocimiento es util. Durante el Recon, el atacante puede tener una lista de usuarios especificos que tienen prioridad para enumerar primero y es posible que esos usuarios ayuden al atacante a elevar el acceso y no necesiten enumerar a otros usuarios, Esto reduce el tiempo, asi como el ruido y los registros que se crearén cuando el atacante enumere a los usuarios. Esto se resuelve utilizando Invoke-UserHunter. Ayuda al atacante a buscar 0, como su nombre indica, a "cazar" a esos usuarios especificos. Aceptard nombres de usuario y si el atacante tiene una lista prdcticn de nombres de usuario, también lo aceptaré amablemente. También acepta el grupo de dominios y las listas de hosts. Utiliza una combinacién de Get-NetSessions y Get- NetLoggedon contra cada servidor y luego compara el resultado con el conjunto de usuarios de destino. Por otra parte, plantea la cuestién de la cantidad de ruide que generard. Pero darle un ntimero menor de nombres de usuario en la lista 0 incluso darle un solo nombre de usuario ayudaré al atacante a reducir el ruido significativamente. Vale la pena sefialar que Invoke-UserHunter se ejecutard sin ningtin privilegio de administrador. Pasando ala demostracién, el atacante ejecuta Invoke-UserHunter directamente sin ningun usuario u opcidn, Se ejecutard contra todos los usuarios que pueda encontrar que generalmente es el Administrador. Se puede observar que la informacién extraida es bastante basica pero til en el caso de perfilar a un usuario. avoke-UserHunter Cena IGNITE PTs ass DCL. ignite. local cca Se Ree) Una caracteristica bastante ingeniosa que fue lo suficientemente interesante como para agregar fue la funcién CheckAcess. Esta caracteristica permite al atacante comprobar el acceso de administrador local de ese usuario en particular o Ia lista de usuarios que proporcioné. En la demostracién, el atacante probé el acceso del administrador que sin sorpresa llega a ser verdadero. kAccess Te ee prear eet) Curt mer Get-NetDomain Cuando el atacante necesita extraer la informacién relacionada con el dominio directamente del servidor de destino, Get-NetDomain la cubre. Prdcticamente extrae los datos de dominio que incluyen el nombre del bosque, los controladores de dominio con hijos (que podrian configurarse en un servidor de entorno real). Luego estd el Nombre de los padres con RidRoleOwner, que es un objeto DC que contiene el rol maestro de identificador relative ,..!D) y PdcRoleOwner otro objeto DC que contiene el rol de emulador PDC para ese dominio espectfico. Get-Ne eu Parties cae emerge Pameriins t nay En caso de que el atacante quisiera ir en contra de un dominio especifico, puede usar una opcién de dominio proporcionando el nombre del dominio exacto que esté buscando y Get- NetDomain extraerd los datos para ese dominio en particular. ree DCL. ignite. 10 ee eee hs heme mtey Pemre mel Piemtist Get-NetDomainController El siguiente en la alineacién, tenemos el Get-NetDomainController. Esto proporciona la informacién del dispositive servidor en particular en lugar del dominio. Cuando un atacante desea extraer los datos sobre el equipo del controlador de dominio, se puede utilizar esta herramienta, Extrae la informacién del bosque, con Ia hora y la fecha configuradas en el servidor. IT le dice a la versién del sistema operativo que puede ayudar a restringir la busqueda de exploits del kernel para el atacante. A continuacién, el atacante tiene los datos de direccionamiento IP con las conexiones entrantes y salientes. Get-NetDomainCont roller OPE eae ea ton a! er ete : 4/11/2021 10:45: 213062 Pinaceae eg Muar Sere mel ve Bee eat tec eas ae arabe Sent URS ec Laie atn est unreal aU De forma similar a Get-NetDomain, el atacante puede configurar Get-NetDomainController para que se dirija a un dominio especifico. El escenario en el que el atacante podria estar buscando varios dominios configurados con la configuracién de varios servidores para que el atacante pueda usar la opcién -Domain para apuntar a ese controlador de dominio espectfico dentro del dominio. ignite. loca Cea a gnite.local Tee a meet) Ere Oe Se aC Beth Get-NetComputer Lo que parece ser una opcién bastante simple puede convertirse en una de las herramientas més utilizadas para extraer una gran cantidad de datos del controlador de dominio 0 incluso de un solo dispositivo. Si el atacante ejecuta Get-NetComputer directamente en el equipo del controlador de dominio como se ha demostrado, revelard los nombres de equipo de todos los dispositivos conectados en el dominio. pubes Continuands, si el atacante de je usar -Ping Option, puede obtener Ia lista de todos los dispositivos que se pueden hacer ping desde la méquina desde la que esté ejecutando Get- NetComputer. Si el atacante no desea extraer los datos un pardmetro a la vez, hay una opcién para extraer todos los datos de la maquina. Esto se puede hacer con la opcién FullData, pero tenga en cuenta que una gran cantidad de extraccién de datos conduce a grandes posibilidades de ser detectados. Cee eases ee cae scarl Seatac Presta pein objectclass jast logont imestanp Sereeean nee) See tae dspath iapeessy4 ee Orr) Siirst to. erases Baatrsag itaceter reg iscorepropagationdata Searcumtre es jast logon Perens Cem a) PE ices ees eee restr seed eee) Petes reeks aaa eel er Ferree rerun epee ec eres sper Siac ° Eiears BU seee rene 147 cere oe Ramat el eae ene oad PIE Ee Ho eee eet eae ie eee rcs Ne ao EYP YpLye ere eee vc S-1-5-21-501555289-2168925624-2051597760-1000 fog 0 805306369 PUA ye Nee ren EPPEr Teleco reed ry ene ese Cet aed ry See RO ae Sat RR eas Perera eerie eerie, Pitt eae te et tony POM MerECe)) 12/31/1600 ean ee oe Melee earn oor nee SCOPLIPLPIE ea UGS MB EEL Us SZ oc ene ea ea] CN=RAS and TAS Servers ,CN=Users, DC=ignite,oc=local Py ERUPT DEE TETESe ANY 0 RE ocal a 532480 PEYOTE 516 cries Ea rn BR) PRs ne Rr eee et eee tcc Sober are d| 8 LYE AOS Rabu Neco reer ene fe ey BES /c. 7B USeEC Tae) Bee ee TELE B CT YE SET Zea Beeb) fy Ademds, si el atacante decide usar la opcién -OperatingSystem con Get-NetComputer y proporcionar el Nombre del sistema operative como parémetro, puede extraer todas las mdquinas que ejecutan ese sistema operativo especifico. Get-UserProperty El siguiente en la lista es el UserProperty. Hasta ahora, el atacante puede extraer a los usuarios y muy poca informacién sobre ellos. Esto era limitado, pero este problema se resuelve utilizando UserProperty. Con él, el atacante puede apuntar a esos detalles de nicho sobre cualquier propiedad en particular. Parte dela informacién extraible es verificar el acceso a nivel de administrador, la hora de la contrasefia, la fecha de cambio de contrasefia, la descripcién del usuario, verificar de qué grupo forman parte los diferentes usuarios y mucho mds. isamaccountname Sassy Crises] See cerca] Para apuntar a una propiedad especifica, el atacante puede usar la apcién Propiedades » especificar la propiedad sobre la que desea preguntar. Para la manifestacién, la propi que se pregunté aqu{ fue badpwdcount. Esto le informa al atacante sobre los intentos fallides que se realizaron contra todos los usuarios, Get-UserProperty piedades badpwd nee keen easy Peeing ener sd El atacante puede centrarse en Ia propiedad logoncount para comprender cudles de los usuarios estén inactivos y cudles de ellos estén actives. En un escenario de la vida real, los usuarios inactivos pueden ser los usuarios de una red de ex empleados que el administrador ha pasado por alto. Esto puede crear un problema, ya que en primer lugar estas cuentas no se adheririan a cambiar su contrasefia, también el ataque montado en estas cuentas no levantaré banderas siendo estos usuarios legitimos, ene en y ees Sees Get-NetForest Ademés de la informacién del dominio y la informacién del usuario, el atacante también puede obtener informacién sobre los bosques y puede haber varios bosques dentro de un dominio. Para obtener informacién sobre el bosque en el dominio del usuario actual es utilizar Get-NetForest. ignit CReteale ees era ise a ‘or estDnsZones ,DC=ignite, DC ee) peo on,DC=ignite, ; Pees e etn Latics ETE ere ersCal Tbacl at stion, DC=ignite, DC=Tocal | Los bosques suelen tener diferentes catdlogos globales que pueden ayudar al atacante a obtener informacién precaria sobre el dominio. Esto se puede observar en la siguiente demostracién de extraccién de todos los catélogos globales del bosque actual utilizando Get-NetForestCatalog. tPorestCatalog mas Ce Pensa ameriats ieee Lolo emer arc tus Bat aiet Get-NetForestDomain Pasando de los catdlogos, el atacante también puede trabajar en la extraccién de los diversos dominios del bosque en el que se encuentra el usuario actual. Esto se puede horer ejecutando Get-NetForestDomain como se muestra en la demostracién. Get-NetForestDonain Wier jetForestDomain : ignite-local eters Peers emer ieee ereattastigs Ne Name Get-NetLoggedon Eso es suficiente Forest, volviendo a los usuarios en la méquina local o remota, el atacante puede aprovechar el médulo NetLoggedon. Cabe sefialar que los derechos administrativos son necesarios para utilizar este médulo. Este médulo ejecuta la !lamada NetWkstaUserEnum Win32API para extraer los usuarios que actualmente han iniciado sesién, Si el atacante tiene un poco de prisa, puede enumerar todos los usos que han iniciado sesién para todas las méquinas de! dominio utilizando Get-DomainComputer y, a continuacién, ejecutando Get-NetLoggedon en esos datos, Esto se puede concatenar usando una tuberia. Get naincomputer En esta demostracién, sin embargo, se muestra cémo enumerar los usuarios que han iniciado sesién en un equipo determinado con la ayuda de la opcién ComputerName y proporcionando el Nombre. Get-NetLoggedon ~ComputerNane DCL eo are name wkuil_logon_domain wkui1_oth_domai IGNITE IGNITE IGNITE IGNITE IGNITE Get-DomainPolicy Entre otra informacién, la Politica de Dominio de un Dominio también puede revelar informacién bastante buena, El atacante puede usar Get-Domain para extraer la directiva del dominio actual. Lee la directiva de dominio predeterminada 0 la directiva de controlador de dominio para el dominio actual o un controlador de dominio/dominio especificado. Para centrarse mds en un dominio en particular, la opcién Dominio. Para extraer dominio 0 controlador de dominio mediante la opcién de origen o la opcién Servidor para enlazar a un servidor de Active Directory determinado cet STEEL Tien ee Caeeemerer 5 a fees Sete ees then © g exe ene irre Y Perr retE oct Para enumerar los detalles de Kerberos, el atacante puede intentar ir tras la directiva de Kerberos, que contiene datos como la antigtiedad maxima del ticket, la edad maxima de renovacién y varios clientes de validacién de tickets. Este tipo de informacién puede ser util si elatacante estd tratando de realizar un ataque de forja de tickets o un ataque similar. Seas Cea sy Para extraer los datos relacionados con el acceso al sistema, como los datos de contrasefia que extrajimos anteriormente, como la antigiiedad de la contrasefia, la complejidad de la contrasefia y Ia longitud de la contrasejia, etc. rainPolley’ Bel Peers RO eremeruee ears) itestnies lubes ea aera reerea) Get-NetOU Las unidades organizativas son la unidad mds pequefia del sistema Active Directory. OU se abrevia de es Unidad Organizativa. Las unidades organizativas son contenedores para usuarios, grupos y equipos, y existen dentro de un dominio. Las unidades organizative tiles cuando un administrador desea implementar la configuracién de directiva de grupo en un subconjunto de usuarios, grupos y equipos dentro de su dominio. La unidad organizativa también permite a los administradores delegar tareas de administracién a usuarios/grupos sin tener que convertirlo en administrador del directorio. Para enumerar, ejecute el siguiente comando en PowerShell ass Teseeakss Se puede observar que hay 4 unidades organizativas en el servidor de destino. A saber, tecnologia, VPN, ventas y recursos humanos. Get-NetGroup Durante la enumeracién que el atacante estd intentando realizar extrayendo el grupo, la informacién es una de las mds importantes que el atacante puede enumerar. Para obtener todos los grupos del dominio actual, el atacante puede usar Get-NetGroup como se ha demostrado 2. | Get-Neta: Secey rk Configuration Oper: cern eats Bae cos ones oe aeons V_Admrin Sasa aa Seeks Seen peer etree Bemunsinelogs eos cei Seem Cured earner Pre-windows 2000 Compatible A sate orizat ion Lic CR nee Mc Sie aun EE eral eee etme eset Enterprise Read-only Domain Controllers Cloneable Domain Controllers Ss eat Cuando el atacante requiere extraer los grupos que consisten en la palabra clave admin, ya que pueden ser importantes 0 pueden contener alguna informacién sobre el administrador, ya que esto daria todo tipo de grupos de administradores como se demuestra advin® eye poe C Une WC eae Pree ees Pec cis aes ee Cae rnS ieee Supongomos que el atacante desea comprobar Ia pertenencia de un usuario en particular, entonces puede usar la opcién UserName. Esto también se puede verificar como se muestra en la imagen a continuacién. El atacante extrajo la informacién para el usuario de Yashika shika CSE ro eee EON tne Roba tnel et SCC Bee Wena Para apuntar a un dominio especifico, el atacante puede usar la opcién Dominio con el nombre de dominio proporcionado en contra como se muestra en la demostracién n ignite Pes Caines fee arenes feats ee serra Sa estat trata me rss ean teeta atta aac Dee iagiey as ee meres feria ty Seti aaa Event Log Reader: oases Pooh ets fecaerrrtans RoSneeen rurale sree at area ate eer eerie rane Reena rane beers Greene wtih Reamer iret en Cc) comcast} ‘only Domain Controllers een ee te ea ie ae a Cloneable Donain Control le Protected Users (Sana Ademds, si el atacante desea extraer todos los datos relacionados con los grupos que trabajan en el dominio, puede usar la opcién FullData y extraer a todos los usuarios co detalles de su grupo. En la demostracién, se puede observar que la informacién enumerada, ‘como que hay un administrador en este dominio que forma parte del grupo de administradores y luego de otros grupos de usuarios. ‘uLlData cree) Eprtaerigas( i Sid Seer Beer esac henchanged Spero s rs ieee a Eo Perires gia cca AAA Pree aiaate) eee Ta Sea cacacs axe een ees a ay Piet Pita PAYEE ee ated Sees rears Hay un nombre de miembro Japneet que es miembro del Tech Group y buscando més informacién sobre los grupos de usuarios, se puede observar que es un usuario con el nombre de geet que también forma parte del grupo Tech. Pees Pebeetas iscri Eeurtce fear PaUeRy Sera] Sree eats erro Orr Cae letra rr saeae UIs 7 23/2020 4:54:43 PM, een PLU Ve eC SEL ee Me eeniat ie are CUEYplirs eee ription Pear es Pieters : Oe ea Pasar de la enumeracién de grupo basada en el usuario a la enumeracién basada en grupo proporcionando el nombre del grupo como se muestra en Ia imagen siguiente. El atacante también puede usar varias opciones para apuntar a un grupo en particular y enumerar todos los datos sobre ese grupo, como se muestra en la demostracién. eer oa croup ies Een Sere Peas ree ny 4/7/2021 1:42 Cena: one Eets728 GEOR TE ea) Pee s ree rarer ; ihe 5.0 teiearat Designated administrators of the ¢ Cesar eines fare aa Peeve ane SCE ag Sune ot Ep rere Soper Beret Orriereyst Jobjecteategory Saeed ener at tar Hay mds soluciones posibles para que el atacante optimice su proceso de enumeracién al proporcionar un montén de opciones y parémetros para apuntar a la informacién exacta Esto incluye una opcién de nombre de grupo en particular y una opcién de dominio. Get-NetGroup -GroupNane *admin* -bomain ignite Cea) es Parties Pee tates sera neraearcnne Sern cca BEES con athe ie Get-NetGroupMember En la enumeracién, si el atacante llega a una etapa en la que ha enumerado correctamente los nombres de grupo, puede usarlo en colaboracién con Get-NetGroupMember para extraer los miembros de ese grupo. En la demostracién, extrajimos los miembros del grupo Administradores de dominio i. | Get-NetGroupMember -GroupNane “Administradores de domin nee ee Ce eet eu Resor Sa oe CT Co ferry ro ET ‘oupName Dear ae Cogs arin Como se discutié anteriormente, Get-NetGroupMember también admite algunas opciones para ejecutarse, como Recurse. Ayuda al atacante a extraer cantidades significativas de datos sobre todos los usuarios del grupo que proporcionaron. Como se puede observar en las capturas de pantalla de la ejecucién de Get-NetGroupMember con y sin Recurse, hay una diferencia significativa entre ambos. i. | Get-NetGroupMenber -GroupNane “Aduinistradores" -Recurse ears a upvenber cee eres aera oa Treen gts Easter i SO eee ee cription Deere one eerste Rene ater) reat Peet enzo ears eeeraets eee coy moa Get-NetGPO La directiva de grupo es muy interesante para averiguar cémo se configura el dominio y qué conjunto de reglas y directivas disefia el administrador para gobernar en el dominio. Esto se puede enumerar mediante Get-NetGPO. Extraerd toda la informacién relativa a las directivas de grupo que estén configuradas en el sistema de destino. eee sn tan eae eoane Bes) Besar Bey sererd parr Peat Samet Pie tives Crate Mem EE 2 Vest eee Percy oct eg Cap RE LLNS Eer Cee E Ter Ys Brier Vineticay cra tag| Reena Ermer Ta oases ft ee es Tc] agian eed Showinadvancedviewonly : True Peer SeCELIeN Ceceee as erat i MCL Cree Nt MEE UE LL aEPEO THOS BRE rier imulietnrecr es lnalt Irie 9 Pe ees vist eu toms siya an esa oat 20 PRG yrierORuld threo inet Tries Pema tots cae gpct esyspath ieee CUT ee INOS er econ teet errre me nrs : ¢N={3182F340-0160-1102-945F-00c04F8984F9} ,CN=Policies ,CN=syst Wreregcie| rae er Seems a instancetype 4 Cutest DUAN Rote teen acaba ced Gaittasctsony Becton ee eg Mel Tor aCe Ins lusncreated AEST) Breset Berra Rearvars eat mene ae TET Cree nner CREB ELE (2 Werte les BVarU ena es vant aeee Wer r nary frre ured ume ree) uttasaets ie LC nee es EsaRieacanne heres Scere ureters aa Pemerue| 155719 dscorepropagationdata IELIEAY 2) cena UA VEL MEP ED OES aCe ean abl yee renee Lag OR a eat inet asaya Trea 0 cn el et eaten crise peoaiste tse 5c eee J baer BXe Ea \\ignite. local \sysvol \ignite. local \Policies\{6AC1786C-016F-111 (earn OS erh et Nanya at Nate aE al ee ieee LOWE ea Nereis 6 presence i Eates til SESy Ar arte eee deers ea OTT Como se puede observar en Ia iteracién anterior de la ejecucién de Get-NetGPO, la cantidad de informacién es abrumadora. Por lo tanto, para obtener una seleccién de salida limpia y facil de entender, se puede usar para obtener esos nombres especificos de las politicas | Get-necero (Sree er rer era pear seve displaynane Peetieec mini PS Sree near ice oe mosiss Buscar-GPOLocation Obtener Ia ubicacién del GPO es una buena manera de mapear las habilidades de un usuario especifico. Toma el nombre de usuario que se le proporciona y comprueba los permiso” “a esos usuarios. Esto significa que devolverd las ubicaciones que son accesibles para es usuario. En esta demostracién, utilizamos el usuario Yashika y elegimos la opcién detallada también para elaborar el resultado y sacarle el maximo partido rar Pear tests rear ryeere terse rte a Invoke-EnumerateLocalAdmin Invoke-EnumerateLocalAdmin hace exactamente lo que dicen los nombres. Buscé a los administradores locales para el dominio. En nuestra demostracién, vemos que hemos extraido el administrador, los administradores de empresa y los administradores de dominio para nuestro dominio ignite. local ‘avoke-ErumesateLocaiadmin Ga PEee eel fees Get-NetProcess Enumerar el proceso en ejecucién es una de las cosas que el atacante debe hacer. Puede decir mucho sobre la maquina objetivo. Puede extraer informacién sobre cualquier servicio que pueda ser vulnerable. Puede saber si algtin proceso se estd ejecutando con privilegios elevados, También le dice al ID de proceso del proceso para que si el atacante tiene acceso a ese proceso, pueda jugar con él, como detener o reiniciar dicho proceso. Get-n SP tc ena ee ccs eee ocess Ey Rye ran ois] fuk NUR rany eid oa. NT_AUTHORITY ec ies NTL aay Sad Invoke-ShareFinder Cualquier atacante sin experiencia puede decir por qué es necesario enumerar los recursos compartidos cuando eso se puede hacer externamente mediante la enumeracién SMB, Pero un atacante experimentado sabré que algunas acciones no son visibles para todos. Se puede configurar en funcién de si ese recurso compartido en particular es visible y accesible para todo 0 algin usuario especifico. Por lo tanto, para enumerar los recursos compartidos de un dominio, utilice Invoke-ShareFinder. nvoke-ShareFinder PNAC nese te Se aa re ere NV Pecan) ares rete It share r SUC aac [ S ivi eel Capt er eer Invoke-FileFinder Buscar en la méquina que el atacante tiene un punto de apoyo inicial no es una tarea tan dificil, Pero para buscar un archivo especifico a través de la red en el dominio se puede hacer usando Invoke FileFinder. Buscard archivos confidenciales como los archivos de credenciales y otros archivos que pueden llevar a un compromiso grave. nvoke-PileFinder et Ease LastaccessTime rage) feesterer 2021 8:01:42 eerer a eS OT star) Administrator \AppData\Local\Mic Dem eet ae eT Cinergy Cities eae a/11/2021 4 Lyon) Bs! Camera OnE ciae URE CUT Pee SSL po eh Aa Invoke-ACLScanner eee aS Sameer See Las listas de control de acceso o ACL se pueden analizar en un dominio que devolverd los permisos débiles en los archivos. Tenga en cuenta que el permiso de dominio puede ser un poco di ser dificil de explotar. Sin embargo, esto no significa que ningtin atacante no deba il de entender y el permiso que puede encontrar usando Invoke-ACLScanner puede verificarlos. En términos mds simples, Invoke-ACLScanner encuentra los permisos que tienen los usuarios y el grupo que son posibles sujetos a explotacién. Determina esto separando el permiso predeterminado y mostrando Ia lista de permisos que no son predeterminados o nuevos definidos por el administrador. Invoke: “uSeanner ResolveGUID: See neers an id Feta Aries erate ae ee ee eee sat) ers aes ote ea ars ul seas ee eat Hirercrsny aaa i tyeference pCaur cris Greatechild, Delet ere tae CCCs Prrataal ers object la ring bea erences ene ecag an ver rea ice Cs el cae Capea aro eran en Re ete er None oe ea ars ul Find-LocalAdminAccess Find-LocalAdminAccess también estd bastante autodefinido. Se enumeran los equipos del dominio local que tienen acceso a los usuarios que tienen acceso de administrador local. Comprueba si el usuario tiene acceso de administrador local mediante Test-AdminAccess. Luego busca la opcién Credencial, Si se pasa, utiliza Invoke-Userlmpersonation para suplantar al usuario especificado antes de la enumeracién. Get-NetSession Por fin, es hora de arrojar algo de luz sobre las Sesiones que se generan dentro de un Dominio. Esto se puede enumerar con la ayuda de la herramienta Get-NetSession. Al ejecutar esto, el atacante puede extraer la informacién de sesién para la maquina local o remota, Esta funcién ejecuta la llamada NetSessionEnum Win32AP! para extraer la informacién de la sesién. Se puede usar desnudo como se demostré o se puede usar con una opcién ComputerName para apuntar a un host especifico. ernest Conclusi6n Active Directory es extenso y puede ser confuso para los profesionales de seguridad novatos. Proporcionamos este recurso detallado para que pueda enumerar su implementacién de Active Directory y comprender la informacién que un atacante puede extraer. También ayudaré a nuestros Blue Teamers a comprender cémo se puede extraer este tipo de informacién y qué tipo de alertas deben configurar para restringir al atacante. Autor: Pavandeep Singh es escritor técnico, investigador y probador de penetracién, Puede ser contactado en Twitter y Linkedin f FACEBOOK (EN INGLES. v TWITTER @ PINTEREST in LINKEDIN «PREVIOUS POST NEXT POST» Evasién de defensa: registro de eventos de Wireshark para Pentester: Sniffing de Windows (T1562.002) contrasefias One thought on "Enumeracién de Active Directory: PowerView mella julio 12, 2021 4 las 10:08 pm éCémo puedo configurar el mismo o al menos similar a su laboratorio para las pruebas? Los comentarios estén cerrados, Buscar... Buscar

También podría gustarte