Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Ledger — 레드팀 작전 중 이루어진 운영 변경 사항을 추적하는 공격자 스크립트입니다. 변경된 내용과 아직 정리해야 할 항목에 대한 전체 감사 추적을 제공합니다. | Kitploit
도구/GitHubGitHub/shellkraft/ledger
Scripting & AutomationPost-ExploitationPenetration TestingCommand and ControlUtilities & FrameworksRed TeamingIncident ResponseLog Analysis
GitHubshellkraft/ledger

Ledger

레드팀 작전 중 이루어진 운영 변경 사항을 추적하는 공격자 스크립트입니다. 변경된 내용과 아직 정리해야 할 항목에 대한 전체 감사 추적을 제공합니다.

저장소 보기
2713개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Ledger — 운영 변경 추적 공격자 스크립트

Ledger는 Cobalt Strike 공격자 스크립트로, 작업 중 이루어진 모든 운영 변경 사항을 추적합니다. 활성화한 모든 서비스, 뚫은 방화벽 규칙, 생성한 계정, 건드린 레지스트리 키가 위험 점수, 운영자 기여도, 정리 상태와 함께 기록됩니다. 작업 종료 시 변경된 사항과 여전히 정리해야 할 사항에 대한 완전한 감사 추적이 생성됩니다.


이유

레드 팀 작업은 아티팩트를 남깁니다. 서비스가 활성화되고, 계정이 생성되고, 방화벽 규칙이 열리고, 레지스트리 키가 수정됩니다. 구조화된 로그가 없으면 이러한 내용을 잊기 쉽습니다. 특히 장기 작업이나 여러 운영자가 동시에 작업할 때 더욱 그렇습니다.

Ledger는 다음을 포함한 실행 저널을 제공합니다:

  • 항목별 및 호스트별 위험 점수
  • 아무것도 남지 않도록 정리 추적
  • Cobalt Strike 이벤트 로그를 통한 운영자별 기여도
  • 사후 보고서를 위한 JSON 또는 일반 텍스트 내보내기
  • 정리되지 않은 변경 사항이 남아 있을 때 자동 데드 비컨 경고

설치

  1. ledger.cna를 Cobalt Strike 스크립트 디렉터리에 복사합니다.
  2. 메뉴 표시줄에서: Cobalt Strike → Script Manager → Load → ledger.cna를 선택합니다.
  3. 메뉴 표시줄에 Ledger 메뉴가 나타납니다.
  4. 이제 모든 Beacon 콘솔에서 dirty 별칭을 사용할 수 있습니다.

사용법

모든 명령은 dirty 별칭을 사용하여 Beacon 콘솔에서 실행됩니다.


변경 사항 기록 (실행 없음)

root@kitploit:~
dirty <CATEGORY> <command> [comment] [score]

comment와 score는 선택 사항입니다. 생략하면 카테고리에 따라 적절한 기본값이 사용됩니다.

root@kitploit:~
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

실행 및 기록을 한 번에

root@kitploit:~
dirty exec <CATEGORY> <command> [comment] [score]

변경 사항을 기록하고 즉시 비컨에서 명령을 실행합니다 — 두 단계 대신 한 단계로.

root@kitploit:~
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"

dirty exec의 제한 사항

dirty exec는 내부적으로 brun을 사용하며, 이는 cmd.exe /c 래퍼 없이 바이너리를 직접 실행합니다. 의미하는 바는:

  • 실제 실행 파일에 작동: net, sc, reg, nltest, whoami, ipconfig 등.
  • Beacon 내장 명령에는 작동하지 않음: sleep, cd, ls, pwd, download, upload, execute-assembly, inject 등. 이러한 경우 Beacon 명령을 정상적으로 실행하고 별도로 dirty <CATEGORY> <command>를 사용하여 기록하십시오.

저널 보기

root@kitploit:~
dirty show
dirty show DEFENDER
dirty show DESKTOP-ABC123

모든 기록된 항목을 표시합니다. 선택적 필터는 명령, 설명, 카테고리, 호스트 이름 및 사용자 이름과 일치합니다.

image

점수 요약

root@kitploit:~
dirty score

집계 점수, 대기 중인 정리 개수 및 시각적 막대가 포함된 호스트별 위험 요약을 표시합니다. 호스트는 점수가 높은 순으로 정렬됩니다.


항목을 정리됨으로 표시

root@kitploit:~
dirty clean <id>
dirty clean all
dirty clean host <hostname>

호스트 이름 일치는 대소문자를 구분하지 않으며 부분 일치를 지원합니다 — DESKTOP이 DESKTOP-FGN4LPG와 일치합니다.


내보내기

root@kitploit:~
dirty export text
dirty export json
dirty export text DEFENDER
dirty export json DESKTOP-ABC

내보내기는 ledger.cna가 포함된 디렉터리에 작성되며 상단에 호스트 점수 요약과 전체 변경 로그가 포함됩니다. Ledger 메뉴 표시줄 버튼은 필터링되지 않은 내보내기를 직접 트리거합니다.


도움말

root@kitploit:~
dirty help

카테고리 및 기본 점수

목록에 없는 카테고리는 기본 점수 3으로 허용됩니다.


위험 임계값

항목별

라벨점수
LOW< 5
MEDIUM5 – 7
HIGH8+

집계 (호스트별)

라벨점수
LOW< 5
MEDIUM5 – 9
HIGH10 – 14
CRITICAL15+

데드 비컨 경고

비컨이 정리되지 않은 원장 항목이 남은 상태로 죽으면, Ledger는 연결된 모든 운영자에게 보이는 Cobalt Strike 이벤트 로그에 빨간 경고를 발생시킵니다:

image

경고는 비컨당 한 번 발생하며, 비컨이 복구되어 다시 체크인하면 자동으로 재설정됩니다. 연결된 (자식) 비컨 및 운영자가 명시적으로 종료한 비컨은 제외됩니다. 경고 타이밍은 비컨의 sleep 설정에 따라 조정됩니다 — 60초 sleep은 약 2분 후, 5분 sleep은 약 10분 후에 트리거됩니다.


내보내기 형식

텍스트

root@kitploit:~
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
================================================================================

[000002] 2026-05-21 19:22:56 | neo | GROUP | MEDIUM +6 | CLEANED
  Host          : DESKTOP-FGN4LPG
  User          : Admin
  Process       : HTTP Listener_x64.exe (PID 4716)
  Command       : net group 'Domain Admins' svc_backup /add /domain
  Comment       : Added svc_backup to Domain Admins for lateral movement

JSON

root@kitploit:~
{
  "exported":    "2026-05-21 19:53:19",
  "host_summary": [
    {
      "host":    "DESKTOP-FGN4LPG (Admin)",
      "risk":    "CRITICAL",
      "score":   18,
      "pending": 0
    },
    {
      "host":    "DESKTOP-RLP4KBJ (sally *)",
      "risk":    "CRITICAL",
      "score":   21,
      "pending": 2
    }
  ],
  "entries": [
  {
    "id":             "000004",
    "timestamp":      "2026-05-21 19:31:36",
    "operator":       "neo",
    "beacon_id":      "1607712302",
    "computer":       "DESKTOP-RLP4KBJ",
    "beacon_user":    "sally *",
    "beacon_process": "HTTP Listener_x64.exe (PID 11540)",
    "functionality":  "USER",
    "command":        "net user svc_backup P@ssw0rd123! /add /domain",
    "comment":        "Created service account for persistence",
    "score":          7,
    "risk":           "MEDIUM",
    "cleaned":        false
  }

다중 운영자 사용

기록되고 정리된 모든 항목은 elog를 통해 Cobalt Strike 이벤트 로그로 브로드캐스트되므로, 연결된 모든 운영자가 서로의 변경 사항을 실시간으로 확인할 수 있습니다. 저널은 세션 기간 동안 팀서버 메모리에 저장됩니다.


참고 사항

  • 저널은 메모리 전용이며 팀서버 재시작 시 유지되지 않습니다. 종료 전에 내보내십시오.
  • 내보내기는 ledger.cna가 포함된 디렉터리에 작성됩니다.
  • 점수 재정의가 지원됩니다: dirty USER "net user ..." "my comment" 9 — 마지막 인수가 명시적 점수를 설정합니다.
  • 스크립트를 두 번 로드하면(예: Script Manager를 통해 한 번, 수동으로 한 번) 중복 이벤트 핸들러가 등록됩니다. 출력이 두 번 나타나면 Script Manager를 확인하십시오.
도구 다운로드
  • cmd.exe가 필요한 셸 내장 명령에는 작동하지 않음: dir, echo, set, type, 파이프(|), 리디렉션(>) 등. 이들은 dirty CATEGORY "shell <command>"로 수동 기록하십시오.
  • 다른 .cna 파일에서 로드된 사용자 정의 BOF 별칭은 dirty exec를 통해 올바르게 전달되지 않습니다.
  • 카테고리기본 점수기본 설명
    REGISTRY2레지스트리 수정됨
    FIREWALL3방화벽 규칙 수정됨
    SERVICE3서비스 구성 변경됨
    RPC4RPC 변경 사항 있음
    WINRM4WinRM 활성화됨
    SMB4SMB 서명 변경됨
    DCOM4DCOM 활성화됨
    RDP5RDP 활성화됨
    SCHEDULED_TASK5예약된 작업 생성됨
    DEFENDER6Defender 구성 변경됨
    GROUP6그룹 구성원 수정됨
    USER7사용자 계정 수정됨
    ACL8ACL 수정됨
    SPN8SPN 수정됨
    DOMAIN_ADMIN9도메인 관리자 그룹 수정됨
    TRUST9트러스트 관계 수정됨