
ACEshark es una utilidad diseñada para la extracción y análisis rápidos de configuraciones de servicios de Windows y Entradas de Control de Acceso, eliminando la necesidad de herramientas como accesschk.exe u otros binarios no nativos.
ACEshark es una utilidad diseñada para la extracción y el análisis rápidos de configuraciones de servicios de Windows y entradas de control de acceso (Access Control Entries), eliminando la necesidad de herramientas como accesschk.exe u otros binarios no nativos.
binpath de un servicio y reiniciarlo).Al ejecutar ACEshark se inicia un servidor HTTP/HTTPS que actúa como receptor de las configuraciones de servicios y las entradas de control de acceso. Genera un pequeño script extractor basado en las opciones especificadas, que el usuario ejecuta en la máquina objetivo. ACEshark recupera y procesa los datos, proporcionando un análisis detallado.
ACEshark genera un archivo de registro por cada configuración de servicios extraída, lo que permite regenerar los informes si es necesario.


git clone https://github.com/t3l3machus/ACEshark
cd ACEshark
pip3 install -r requirements.txt
Estás listo.
Nota: Si el copiado automático del script extractor al portapapeles falla, puede que necesites instalar un mecanismo de copiado/pegado, como sudo apt-get install xclip o sudo apt-get install xselect.
ACEshark.py [-h] [-s SERVER_ADDRESS] [-p PORT] [-c CERTFILE] [-k KEYFILE] [-f FILE_INPUT] [-i] [-g] [-a] [-x CUSTOM_MODE] [-lg] [-gs] [-e] [-z CONFIG_FILENAME] [-d DELIMITER] [-q] [-v]
ACEshark es una utilidad diseñada para la extracción y el análisis rápidos de configuraciones de servicios de Windows y entradas de control de acceso, eliminando la necesidad de herramientas como accesschk.exe u otros binarios no nativos.
opciones:
-h, --help muestra este mensaje de ayuda y sale
OPCIONES BÁSICAS:
-s SERVER_ADDRESS, --server-address SERVER_ADDRESS
La IP de tu servidor o nombre de dominio. Esta opción no puede usarse con -f.
-p PORT, --port PORT Puerto del servidor HTTP / HTTPS (por defecto: 80 / 443).
-c CERTFILE, --certfile CERTFILE
Opcional: Ruta al certificado TLS para habilitar HTTPS.
-k KEYFILE, --keyfile KEYFILE
Opcional: Ruta a la clave privada del certificado TLS.
-f FILE_INPUT, --file-input FILE_INPUT
ACEshark crea archivos de registro cada vez que ejecutas el script extractor en una máquina (almacenados en ~/.ACEshark). Usa esta opción para regenerar un análisis de configuración de servicios desde un archivo de registro. Esta
opción no puede usarse con -s.
MODOS:
-i, --interesting-only
Lista solo aquellos ACEs de servicios que potencialmente pueden ser abusados por tu usuario, según su SID y pertenencia a grupos, con al menos privilegios (WRITE_PROPERTY AND CONTROL_ACCESS) o GENERIC_ALL.
-g, --great-candidates
Similar a --interesting-only pero con criterios más estrictos. Un servicio se etiqueta como gran candidato para escalada de privilegios si el START_TYPE del servicio es == DEMAND_START Y TYPE ==
WIN32_OWN_PROCESS y tu usuario tiene privilegios (WRITE_PROPERTY AND CONTROL_ACCESS) O GENERIC_ALL.
-a, --audit Modo auditoría. Analiza todos los ACEs de servicios sin buscar servicios abusables específicos del usuario (salida larga). Esta opción también degrada el script extractor, omitiendo la obtención del
SID del usuario actual y la información de pertenencia a grupos. Por defecto, los derechos WRITE_PROPERTY y CONTROL_ACCESS se resaltan para simplificar cuando están presentes.
-x CUSTOM_MODE, --custom-mode CUSTOM_MODE
Proporciona una lista separada por comas de enteros que representan los derechos de acceso genéricos a buscar. Solo se listarán los ACEs de servicios que tu usuario pueda abusar, según su SID y pertenencia
a grupos que coincidan con los derechos proporcionados. Usa -lg para listar todos los derechos de acceso genéricos predefinidos.
-lg, --list-generic Lista todos los derechos de acceso genéricos predefinidos.
MODIFICACIONES DEL EXTRACTOR:
-gs, --get-service Esta opción modifica el script extractor para usar Get-Service al listar los servicios disponibles. Aunque es más limpio, puede no funcionar con una cuenta con pocos privilegios. El enfoque predeterminado con Get-ChildItem,
aunque menos elegante, tiene más probabilidades de éxito en la mayoría de los casos.
-e, --encode Genera un script extractor de configuración de servicios codificado en Base64 en lugar de PowerShell sin procesar.
-z CONFIG_FILENAME, --config-filename CONFIG_FILENAME
Cambia el nombre de archivo temporal usado para almacenar la configuración de servicios extraída antes de transferir los datos vía HTTP (por defecto: sc.txt).
-d DELIMITER, --delimiter DELIMITER
Cambia el valor del delimitador usado para la serialización de la configuración de servicios (por defecto: #~). Usa esta opción con precaución. Rara vez es necesaria.
SALIDA:
-q, --quiet No imprime el banner al inicio.
-v, --verbose También imprime el SID del usuario y la información de pertenencia a grupos (no aplicable en modo Auditoría).