Cyber Security Academy · 강의

권한 상승과 도메인 장악

초기 거점에서 Domain Admin까지의 과정을 알아봅니다.

레슨 4/413개 단계

권한 상승과 도메인 장악은(는) CoddyKit의 무료 Cyber Security Academy 강의입니다. 이것은 4개 중 4번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Cyber Security Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Cyber Security Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

발판에서 도메인 관리자까지

발판 자체가 최종 목표인 경우는 드뭅니다. AD 점검의 목표는 일반적으로 도메인 관리자 권한을 얻는 경로, 더 정확히는 Tier 0(DC와 인증 인프라)을 통제할 수 있는 경로를 보여 주는 것입니다.

AD에서 권한 상승은 로컬 권한 상승, 자격 증명 탈취, 디렉터리 구성 오류를 연쇄적으로 이용하여 가장 중요한 자산에 도달하는 방식으로 이루어집니다.

먼저 로컬 권한 상승

호스트에서 낮은 권한의 셸을 얻었다면 일반적으로 자격 증명을 덤프하기 위해 로컬 SYSTEM 권한이 필요합니다. 일반적인 로컬 권한 상승 경로는 다음과 같습니다.

  • 인용되지 않은 서비스 경로와 취약한 서비스 권한
  • 쓰기 가능한 서비스 바이너리 또는 DLL 하이재킹
  • AlwaysInstallElevated MSI 정책
  • SeImpersonatePrivilege를 악용하는 토큰 가장(Potato 계열)
# Enumerate local escalation paths
winPEAS.exe

# SeImpersonate abuse
PrintSpoofer.exe -i -c cmd.exe

수집하고 이동하기

SYSTEM 권한을 얻으면 캐시된 자격 증명을 덤프하고 다른 시스템으로 이동합니다. 새로 얻은 자격 증명마다 접근할 수 있는 호스트와 더 높은 권한이 늘어날 수 있습니다.

반복 과정은 다음과 같습니다. 덤프 → BloodHound에서 접근 가능한 대상 식별 → 측면 이동 → 다시 덤프. 권한이 높은 자격 증명이 나타날 때까지 반복하십시오.

# Map shortest path to Domain Admins from owned principals
# In BloodHound: mark nodes Owned, then run
# 'Shortest Paths to Domain Admins from Owned Principals'

ACL 기반 권한 상승

잘못 구성된 ACL은 악용 코드가 필요 없는 안정적인 권한 상승 경로입니다. 권한이 높은 개체에 대한 권한을 가진 주체를 제어한다면 자신에게 접근 권한을 부여할 수 있습니다.

  • 사용자에 대한 ForceChangePassword 권한이 있으면 해당 사용자의 비밀번호를 재설정할 수 있습니다.
  • 사용자에 대한 GenericWrite 권한이 있으면 SPN을 설정하여 Kerberoasting을 수행하거나 RBCD를 설정할 수 있습니다.
  • 그룹에 대한 WriteDacl 권한이 있으면 자신을 그룹에 추가할 수 있습니다.
  • 권한이 높은 그룹에 대한 AddMember 권한은 직접적인 권한 상승으로 이어집니다.
# PowerView: add self to a group you can WriteDacl
Add-DomainObjectAcl -TargetIdentity 'Domain Admins' -PrincipalIdentity attacker -Rights All
Add-DomainGroupMember -Identity 'Domain Admins' -Members attacker

위임 악용

위임 구성 오류를 이용하면 가치가 높은 사용자를 가장하는 방식으로 효과적으로 권한을 상승시킬 수 있습니다.

  • 비제한 위임: PrinterBug 또는 PetitPotam을 사용하여 DC가 인증하도록 강제하고, DC의 TGT를 캡처한 다음 DCSync를 수행합니다.
  • 리소스 기반 제한 위임: 컴퓨터에 대한 쓰기 권한이 있으면 제어하는 계정을 해당 컴퓨터의 msDS-AllowedToActOnBehalfOfOtherIdentity에 추가하고 S4U를 통해 모든 사용자를 가장할 수 있습니다.
# RBCD takeover (Impacket)
rbcd.py -delegate-to TARGET$ -delegate-from FAKE$ -action write corp/user:pass
getST.py -spn cifs/target.corp -impersonate Administrator corp/FAKE$

ADCS 공격(ESC 경로)

Active Directory 인증서 서비스는 인증서 기반 권한 상승을 가능하게 합니다. 잘못 구성된 템플릿을 이용하면 낮은 권한의 사용자가 누구로든 인증할 수 있는 인증서를 등록할 수 있습니다.

  • ESC1: 템플릿에서 요청자가 제공하는 SAN과 클라이언트 인증 EKU를 허용합니다.
  • ESC8: 웹 등록 엔드포인트로 NTLM 릴레이를 수행합니다.

DA에 매핑된 인증서는 지속성이 높으며 비밀번호를 재설정해도 유지됩니다.

# Find vulnerable templates
Certify.exe find /vulnerable

# Request a cert impersonating an admin (ESC1)
Certify.exe request /ca:CA01\corp-CA /template:VulnTemplate /altname:Administrator

모든 해시를 훔치는 DCSync

디렉터리 변경 복제 권한을 가진 주체를 제어하게 되면 DC를 가장하여 표준 복제 프로토콜을 통해 krbtgt를 포함한 모든 계정의 해시를 가져올 수 있습니다. DC에서 코드가 실행될 필요는 없습니다.

# Mimikatz DCSync of krbtgt
lsadump::dcsync /domain:corp.local /user:krbtgt

# Impacket secretsdump
secretsdump.py corp/admin@dc01 -just-dc

도메인 장악 확립

krbtgt와 DA 수준의 해시를 확보하면 도메인을 장악할 수 있습니다. 지속성을 확보하는 방법은 다음과 같습니다.

  • 골든 티켓: krbtgt 해시로 TGT를 위조합니다.
  • DCShadow: 악성 디렉터리 변경을 적용하기 위해 가짜 DC를 등록합니다.
  • AdminSDHolder: 매시간 보호 그룹에 다시 적용되는 ACL 템플릿에 백도어를 심습니다.
  • ADCS를 통한 인증서 기반 지속성

최종 단계 탐지

영향이 큰 작업은 탐지 가능한 신호를 생성합니다.

  • DC가 아닌 출발지 IP에서 수행된 DCSync: 복제 GUID가 포함된 이벤트 4662
  • 인증 강제 도구는 비정상적인 컴퓨터 계정 인증을 유발합니다.
  • AdminSDHolder ACL 변경(이벤트 5136)
  • 요청자와 일치하지 않는 SAN을 포함한 비정상적인 인증서 등록

Tier 0 방어

도메인 장악을 막으려면 아키텍처 수준의 방어가 필요합니다.

  • 엄격한 계층형 관리: Tier 0 관리자는 Tier 0 호스트에만 로그온합니다.
  • 복제 권한을 제한하고 DCSync 권한을 가진 주체를 감사하십시오.
  • ADCS 템플릿을 강화하고, 등록 승인을 활성화하며, PetitPotam 및 릴레이 경로에 보안 업데이트를 적용하십시오.
  • AdminSDHolder ACL을 수정하고 보호 그룹 변경을 모니터링하십시오.
  • krbtgt를 두 번 변경하는 절차서를 미리 준비하십시오.

영향 보고

도메인 장악과 관련된 발견 사항은 전체 공격 연쇄를 기록하십시오. 획득한 각 권한, 이를 가능하게 한 구성 오류, 그리고 최소한의 수정 방법을 문서화해야 합니다. 개별 지점만 수정하기보다 연쇄를 가장 이른 단계에서 끊는 해결책(예: ACL 경로 수정)을 우선순위로 정하십시오.

점검을 종료하기 전에 위조 티켓, 악성 위임, 점검용 인증서를 정리하십시오.

간단 확인

도메인 장악에 대한 이해를 확인하십시오.

복습

최초의 발판에서 완전한 도메인 통제에 이르는 경로를 살펴보았습니다.

  • 로컬 권한 상승으로 자격 증명을 덤프할 수 있으며, BloodHound가 내부 이동 경로를 안내합니다.
  • ACL 구성 오류, 위임 악용, ADCS ESC 경로를 이용하면 악용 코드 없이도 권한을 상승시킬 수 있습니다.
  • DCSync는 krbtgt를 추출하며, 골든 티켓과 AdminSDHolder는 지속성을 제공합니다.
  • 계층화, 복제 권한 감사, ADCS 강화로 공격 연쇄를 끊을 수 있습니다.

이로써 Active Directory 및 Kerberos 과정을 마칩니다.

무료로 시작

AI 튜터와 함께 Cyber Security Academy을(를) 배우세요 — 무료

브라우저에서 실제 코드를 작성하고 실행하며, 24/7 AI 튜터로부터 즉각적인 도움을 받고, 웹이나 앱에서 중단한 부분부터 계속 학습하세요.

코스
76
레슨
303

자주 묻는 질문

“권한 상승과 도메인 장악” 강의는 무료인가요?

네 — “권한 상승과 도메인 장악” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Cyber Security Academy 강의 전체를 잠금 해제할 수 있습니다. Cyber Security Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“권한 상승과 도메인 장악”에서 뭘 배우나요?

초기 거점에서 Domain Admin까지의 과정을 알아봅니다. 브라우저에서 직접 실행하는 실습 코드로 Cyber Security Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Cyber Security Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Cyber Security Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 4번째 강의입니다.

“권한 상승과 도메인 장악” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Cyber Security Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Cyber Security Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. Active Directory 공격 표면
  2. Kerberos와 Kerberoasting
  3. Pass-the-Hash와 Pass-the-Ticket
  4. 권한 상승과 도메인 장악
← Cyber Security Academy(으)로 돌아가기