Page cover

📘Conciencia situacional

En cualquier situación, ya sea en nuestra vida diaria o durante un proyecto como una prueba de penetración de red, siempre es importante orientarnos en el espacio y el tiempo. No podemos funcionar y reaccionar de manera efectiva sin comprender nuestro entorno actual. Necesitamos esta información para tomar decisiones informadas sobre nuestros próximos pasos para operar de manera proactiva en lugar de reactiva. Cuando aterrizamos en un sistema Windows o Linux con la intención de escalar privilegios a continuación, hay varias cosas que siempre debemos buscar para planificar nuestros próximos movimientos. Es posible que encontremos otros hosts a los que podamos acceder directamente, protecciones implementadas que deban eludirse o descubramos que ciertas herramientas no funcionarán contra el sistema en cuestión.


Información de la red

La recopilación de información de red es una parte crucial de nuestra enumeración. Podemos descubrir que el host tiene una conexión dual y que comprometer el host puede permitirnos movernos lateralmente a otra parte de la red a la que no podíamos acceder anteriormente. La conexión dual significa que el host o servidor pertenece a dos o más redes diferentes y, en la mayoría de los casos, tiene varias interfaces de red físicas o virtuales. Siempre debemos consultar las tablas de enrutamiento para ver información sobre la red local y las redes que la rodean. También podemos recopilar información sobre el dominio local (si el host es parte de un entorno de Active Directory), incluidas las direcciones IP de los controladores de dominio. También es importante utilizar el comando arp para ver el caché ARP de cada interfaz y ver otros hosts con los que el host se ha comunicado recientemente. Esto podría ayudarnos con el movimiento lateral después de obtener las credenciales. Podría ser un buen indicador de a qué hosts se están conectando los administradores a través de RDP o WinRM desde este host.

Esta información de red puede ayudarnos directa o indirectamente con la escalada de privilegios locales. Puede llevarnos por otro camino hacia un sistema al que podemos acceder o en el que podemos escalar privilegios o revelar información que podemos usar para el movimiento lateral para ampliar nuestro acceso después de escalar privilegios en el sistema actual.

Interfaz(es), dirección(es) IP, información DNS

C:\htb> ipconfig /all

Windows IP Configuration

   Host Name . . . . . . . . . . . . : WINLPE-SRV01
   Primary Dns Suffix  . . . . . . . :
   Node Type . . . . . . . . . . . . : Hybrid
   IP Routing Enabled. . . . . . . . : No
   WINS Proxy Enabled. . . . . . . . : No
   DNS Suffix Search List. . . . . . : .htb

Ethernet adapter Ethernet1:

   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : vmxnet3 Ethernet Adapter
   Physical Address. . . . . . . . . : 00-50-56-B9-C5-4B
   DHCP Enabled. . . . . . . . . . . : No
   Autoconfiguration Enabled . . . . : Yes
   Link-local IPv6 Address . . . . . : fe80::f055:fefd:b1b:9919%9(Preferred)
   IPv4 Address. . . . . . . . . . . : 192.168.20.56(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.168.20.1
   DHCPv6 IAID . . . . . . . . . . . : 151015510
   DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-27-ED-DB-68-00-50-56-B9-90-94
   DNS Servers . . . . . . . . . . . : 8.8.8.8
   NetBIOS over Tcpip. . . . . . . . : Enabled

Ethernet adapter Ethernet0:

   Connection-specific DNS Suffix  . : .htb
   Description . . . . . . . . . . . : Intel(R) 82574L Gigabit Network Connection
   Physical Address. . . . . . . . . : 00-50-56-B9-90-94
   DHCP Enabled. . . . . . . . . . . : Yes
   Autoconfiguration Enabled . . . . : Yes
   IPv6 Address. . . . . . . . . . . : dead:beef::e4db:5ea3:2775:8d4d(Preferred)
   Link-local IPv6 Address . . . . . : fe80::e4db:5ea3:2775:8d4d%4(Preferred)
   IPv4 Address. . . . . . . . . . . : 10.129.43.8(Preferred)
   Subnet Mask . . . . . . . . . . . : 255.255.0.0
   Lease Obtained. . . . . . . . . . : Thursday, March 25, 2021 9:24:45 AM
   Lease Expires . . . . . . . . . . : Monday, March 29, 2021 1:28:44 PM
   Default Gateway . . . . . . . . . : fe80::250:56ff:feb9:4ddf%4
                                       10.129.0.1
   DHCP Server . . . . . . . . . . . : 10.129.0.1
   DHCPv6 IAID . . . . . . . . . . . : 50352214
   DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-27-ED-DB-68-00-50-56-B9-90-94
   DNS Servers . . . . . . . . . . . : 1.1.1.1
                                       8.8.8.8
   NetBIOS over Tcpip. . . . . . . . : Enabled

Tunnel adapter isatap..htb:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . : .htb
   Description . . . . . . . . . . . : Microsoft ISATAP Adapter
   Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP Enabled. . . . . . . . . . . : No
   Autoconfiguration Enabled . . . . : Yes

Tunnel adapter Teredo Tunneling Pseudo-Interface:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Teredo Tunneling Pseudo-Interface
   Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP Enabled. . . . . . . . . . . : No
   Autoconfiguration Enabled . . . . : Yes

Tunnel adapter isatap.{02D6F04C-A625-49D1-A85D-4FB454FBB3DB}:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Microsoft ISATAP Adapter #2
   Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
   DHCP Enabled. . . . . . . . . . . : No
   Autoconfiguration Enabled . . . . : Yes

Tabla ARP

Tabla de enrutamiento


Enumeración de protecciones

La mayoría de los entornos modernos cuentan con algún tipo de antivirus o servicio de detección y respuesta de endpoints (EDR) en ejecución para supervisar, alertar y bloquear amenazas de forma proactiva. Estas herramientas pueden interferir con el proceso de enumeración. Es muy probable que presenten algún tipo de desafío durante el proceso de escalada de privilegios, especialmente si estamos utilizando algún tipo de herramienta o exploit PoC público. Enumerar las protecciones implementadas nos ayudará a asegurarnos de que estamos utilizando métodos que no se bloquean ni se detectan y nos ayudará si tenemos que crear cargas útiles personalizadas o modificar herramientas antes de compilarlas.

Muchas organizaciones utilizan algún tipo de solución de lista blanca de aplicaciones para controlar qué tipos de aplicaciones y archivos pueden ejecutar determinados usuarios. Esto se puede utilizar para intentar impedir que los usuarios que no sean administradores ejecuten archivos binarios cómo cmd.exe, powershell.exe o tipos de archivos que no necesiten para su trabajo diario. Una solución popular ofrecida por Microsoft es AppLocker . Podemos utilizar el cmdlet GetAppLockerPolicy para enumerar las políticas locales, efectivas (aplicadas) y de dominio de AppLocker. Esto nos ayudará a ver qué archivos binarios o tipos de archivos se pueden bloquear y si tendremos que realizar algún tipo de omisión de AppLocker durante nuestra enumeración o antes de ejecutar una herramienta o técnica para aumentar los privilegios.

En una interacción en el mundo real, es probable que el cliente tenga implementadas protecciones que detecten las herramientas y scripts más comunes (incluidos los presentados en la sección anterior). Existen formas de lidiar con estos problemas, y enumerar las protecciones en uso puede ayudarnos a modificar nuestras herramientas en un entorno de laboratorio y probarlas antes de usarlas contra un sistema cliente. Algunas herramientas EDR detectan o incluso bloquean el uso de binarios comunes como net.exe, tasklist, etc. Las organizaciones pueden restringir qué binarios puede ejecutar un usuario o marcar inmediatamente actividades sospechosas, como que la máquina de un contador muestre binarios específicos que se ejecutan a través de cmd.exe. La enumeración temprana y un conocimiento profundo del entorno del cliente y las soluciones alternativas contra soluciones EDR y AV comunes pueden ahorrarnos tiempo durante una interacción no evasiva y determinar el éxito o el fracaso de una interacción evasiva.

Comprobar el estado de Windows Defender

Lista de reglas de AppLocker

Política de prueba de AppLocker


Caso práctico

Pregunta 1

¿Cuál es la dirección IP de la otra NIC conectada al host de destino?

El comando ipconfig /all muestra que el host tiene dos interfaces activas con direcciones IPv4 asignadas:

1️⃣ Ethernet1

  • IP: 172.16.20.45(IP interna)

  • Máscara: 255.255.254.0

  • Gateway: 172.16.20.1

2️⃣ Ethernet0 2

  • IP: 10.129.43.43 (IP actual)

  • Máscara: 255.255.0.0

  • Gateway: 10.129.0.1

Ambas interfaces están activas, lo que indica que este host está conectado a dos redes diferentes simultáneamente.


Pregunta 2

¿Qué otro ejecutable además de cmd.exe está bloqueado por AppLocker?

Para realizar un escaneo completo de los ejecutables bloqueados por AppLocker en el sistema, lo más sencillo es con este script de powershell:

Eso nos buscará todos los ejecutables bloqueados en la ruta C:\Windows\System32, aunque se puede ajustar para que analice todo el sistema con C:\*\*\*\*\*\*

Encontramos el otro ejecutable bloqueado: powershell_ise.exe

Última actualización

¿Te fue útil?