Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/shellkraft/ledger
Scripting y AutomatizaciónPost-ExplotaciónPruebas de PenetraciónComando y ControlUtilidades y FrameworksRed TeamingRespuesta a IncidentesAnálisis de Registros
GitHubshellkraft/ledger

Ledger

Un script de Aggressor que rastrea los cambios operativos realizados durante un ejercicio de red team. Te proporciona un registro de auditoría completo de lo que se cambió y de lo que aún queda por limpiar.

Ver Repositorio
27161hace 4 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Ledger — Script agresor de seguimiento de cambios operativos

Ledger es un script agresor de Cobalt Strike que registra cada cambio operativo realizado durante un compromiso. Cada servicio que habilitas, regla de firewall que abres, cuenta que creas o clave de registro que tocas queda registrada con una puntuación de riesgo, atribución al operador y estado de limpieza. Al final del compromiso tienes un rastro de auditoría completo de lo que se cambió y de lo que aún necesita limpieza.


Por qué

Los compromisos de red team dejan artefactos. Se habilitan servicios, se crean cuentas, se abren reglas de firewall, se modifican claves de registro. Sin un registro estructurado es fácil olvidarlos, especialmente en compromisos largos o cuando varios operadores trabajan simultáneamente.

Ledger te ofrece un diario en curso con:

  • Puntuación de riesgo por entrada y por host
  • Seguimiento de limpieza para que no quede nada atrás
  • Atribución por operador mediante el registro de eventos de Cobalt Strike
  • Exportación a JSON o texto plano para informes posteriores a la acción
  • Avisos automáticos de baliza muerta cuando hay cambios sin limpiar pendientes

Instalación

  1. Copia ledger.cna al directorio de scripts de Cobalt Strike.
  2. En la barra de menús: Cobalt Strike → Script Manager → Load → selecciona ledger.cna.
  3. Aparecerá un menú Ledger en la barra de menús.
  4. El alias dirty ya está disponible en cada consola de Beacon.

Uso

Todos los comandos se ejecutan desde una consola de Beacon usando el alias dirty.


Registrar un cambio (sin ejecución)

dirty <CATEGORY> <command> [comment] [score]

comment y score son opcionales. Si se omiten, se usan valores predeterminados sensatos según la categoría.

dirty RPC "sql-enablerpc lon-db-1 lon-db-2"
dirty DEFENDER "add-exclusion C:\windows\temp" "Payload staging" 8
dirty GROUP "net group 'Domain Admins' svc_backup /add /domain"
dirty USER "net user backdoor P@ssw0rd! /add"
dirty SCHEDULED_TASK "schtasks /create /tn updater /tr C:\temp\beacon.exe /sc onlogon"
image

Ejecutar y registrar en un solo paso

dirty exec <CATEGORY> <command> [comment] [score]

Registra el cambio y ejecuta inmediatamente el comando en el beacon: un solo paso en lugar de dos.

dirty exec RPC "sql-enablerpc lon-db-1 lon-db-2"
dirty exec USER "net user backdoor P@ssw0rd! /add"
dirty exec DEFENDER "sc config WinDefend start= disabled"
dirty exec FIREWALL "netsh advfirewall set allprofiles state off"

Limitaciones de dirty exec

dirty exec usa brun internamente, que ejecuta un binario directamente sin un envoltorio cmd.exe /c. Esto significa:

  • Funciona con ejecutables reales: net, sc, reg, nltest, whoami, ipconfig, etc.
  • No funciona con funciones integradas de Beacon: sleep, cd, ls, pwd, download, upload, execute-assembly, inject, etc. Para esas, ejecuta el comando de Beacon normalmente y usa dirty <CATEGORY> <command> por separado para registrarlo.
  • No funciona con funciones integradas del shell que requieren cmd.exe: dir, echo, set, type, tuberías (|), redirecciones (>), etc. Regístralas manualmente con dirty CATEGORY "shell <command>".
  • Los alias BOF personalizados cargados desde otros archivos .cna no se despacharán correctamente a través de dirty exec.

Ver el diario

dirty show
dirty show DEFENDER
dirty show DESKTOP-ABC123

Muestra todas las entradas registradas. El filtro opcional coincide con comando, comentario, categoría, nombre de host y nombre de usuario.

image

Resumen de puntuación

dirty score

Muestra un resumen de riesgo por host con puntuación agregada, recuento de limpieza pendiente y una barra visual. Los hosts se ordenan de mayor a menor puntuación.


Marcar entradas como limpiadas

dirty clean <id>
dirty clean all
dirty clean host <hostname>

La coincidencia de nombre de host no distingue mayúsculas y admite coincidencias parciales: DESKTOP coincide con DESKTOP-FGN4LPG.


Exportar

dirty export text
dirty export json
dirty export text DEFENDER
dirty export json DESKTOP-ABC

Las exportaciones se escriben en el directorio que contiene ledger.cna e incluyen un resumen de puntuación por host al principio seguido del registro de cambios completo. Los botones del menú Ledger en la barra de menús activan exportaciones sin filtro directamente.


Ayuda

dirty help

Categorías y puntuaciones predeterminadas

CategoríaPuntuación predeterminadaComentario predeterminado
REGISTRY2Registro modificado
FIREWALL3Regla de firewall modificada
SERVICE3Configuración de servicio cambiada
RPC4Cambios realizados en RPC
WINRM4WinRM habilitado
SMB4Firma SMB cambiada
DCOM4DCOM habilitado
RDP5RDP habilitado
SCHEDULED_TASK5Tarea programada creada
DEFENDER6Configuración de Defender cambiada
GROUP6Membresía de grupo modificada
USER7Cuenta de usuario modificada
ACL8ACL modificada
SPN8SPN modificado
DOMAIN_ADMIN9Grupo de administradores de dominio modificado
TRUST9Relación de confianza modificada

Cualquier categoría no listada se acepta con una puntuación predeterminada de 3.


Umbrales de riesgo

Por entrada

EtiquetaPuntuación
LOW< 5
MEDIUM5 – 7
HIGH8+

Agregado (por host)

EtiquetaPuntuación
LOW< 5
MEDIUM5 – 9
HIGH10 – 14
CRITICAL15+

Aviso de baliza muerta

Cuando una baliza muere con entradas de Ledger sin limpiar pendientes, Ledger envía una advertencia roja al registro de eventos de Cobalt Strike visible para todos los operadores conectados:

image

La advertencia se dispara una vez por baliza y se restablece automáticamente si la baliza se recupera y vuelve a conectarse. Las balizas vinculadas (hijas) y las balizas eliminadas explícitamente por un operador quedan excluidas. El tiempo del aviso se escala con el ajuste de sueño de la baliza: un sueño de 60s se dispara después de ~2 minutos, un sueño de 5m después de ~10 minutos.


Formato de exportación

Texto

LEDGER EXPORT -- 2026-05-21 19:50:34

HOST SCORE SUMMARY
================================================================================
Host  Risk  Score  Pending  Bar
--------------------------------------------------------------------------------
DESKTOP-RLP4KBJ (sally *)  CRITICAL  +21  2 pend  [##########]
DESKTOP-FGN4LPG (Admin)  CRITICAL  +18  0 pend  [#########]
================================================================================

CHANGE LOG
================================================================================
Descargar herramienta