Saltar al contenido
OPS // KITitspentest.sh

PE-POW

PowerUp

Script de PowerShell que enumera y abusa de desconfiguraciones comunes de escalada de privilegios en Windows.

Sitio oficialVolver al catálogo

RESUMEN

PowerUp.ps1, parte del framework PowerSploit (hoy archivado), es un script de PowerShell que revisa un host Windows en busca de una larga lista de desconfiguraciones conocidas de escalada de privilegios local: servicios modificables, rutas de servicio sin comillas, permisos débiles en binarios/configuración de servicios, claves de registro AlwaysInstallElevated, oportunidades de DLL hijacking y más.

Su función Invoke-AllChecks corre toda la enumeración de una vez y reporta qué hallazgos son explotables, y varias funciones que la acompañan (como Invoke-ServiceAbuse) pueden ejecutar la escalada real una vez confirmado un camino viable.

CASOS DE USO

Casos de uso en un engagement

  • 01

    Correr una enumeración local completa de privesc con Invoke-AllChecks tras obtener una shell de bajo privilegio.

  • 02

    Identificar servicios modificables o rutas de servicio sin comillas que permiten a un usuario bajo ejecutar código como SYSTEM.

  • 03

    Detectar AlwaysInstallElevated o permisos débiles de archivo/registro dejados por software de terceros.

  • 04

    Automatizar el abuso de una desconfiguración confirmada una vez que el cliente autoriza la explotación.

PRIMEROS PASOS

En un host Windows con una shell de bajo privilegio ya establecida, para enumerar y opcionalmente abusar de desconfiguraciones comunes de escalada local.

  1. Confirma que el testing de escalada local está autorizado en este host.
  2. Lleva PowerUp.ps1 al objetivo o cárgalo reflectivamente en la sesión actual.
  3. Ejecuta Invoke-AllChecks y revisa qué hallazgos aparecen como explotables.
  4. Valida un hallazgo manualmente antes de usar la función de abuso correspondiente, si la explotación está en alcance.
powershell -ep bypass -c "Import-Module .\PowerUp.ps1; Invoke-AllChecks"

ANTES DE USARLA

Qué revisar antes de lanzarla

El repositorio de PowerSploit está archivado y ya no se mantiene; el script-block logging y AMSI en PowerShell moderno hacen que la ejecución sin modificar sea fácil de detectar y a menudo bloqueada.

Invoke-AllChecks solo reporta lo que está programado para revisar — confirma siempre manualmente antes de confiar en un resultado negativo.

Las funciones de abuso reinician servicios o escriben archivos: úsalas solo cuando el cliente haya autorizado explotación activa, no solo enumeración.

SIGUE EXPLORANDO

Ver toda la fase →