Active Directory ACLs/ACEs ์•…์šฉ

Tip

AWS ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ:HackTricks Training AWS Red Team Expert (ARTE)
GCP ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training GCP Red Team Expert (GRTE) Azure ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks ์ง€์›ํ•˜๊ธฐ

๊ฐœ์š”

์œ„์ž„๋œ ๊ด€๋ฆฌ ์„œ๋น„์Šค ๊ณ„์ •(dMSAs)๋Š” Windows Server 2025์™€ ํ•จ๊ป˜ ๋„์ž…๋œ ์ƒˆ๋กœ์šด AD ์ฃผ์ฒด ์œ ํ˜•์ž…๋‹ˆ๋‹ค. ์ด๋Š” ๋ ˆ๊ฑฐ์‹œ ์„œ๋น„์Šค ๊ณ„์ •์„ ๋Œ€์ฒดํ•˜๊ธฐ ์œ„ํ•ด ์„ค๊ณ„๋˜์—ˆ์œผ๋ฉฐ, ์ด์ „ ๊ณ„์ •์˜ ์„œ๋น„์Šค ์ฃผ์ฒด ์ด๋ฆ„(SPN), ๊ทธ๋ฃน ๋ฉค๋ฒ„์‹ญ, ์œ„์ž„ ์„ค์ • ๋ฐ ์‹ฌ์ง€์–ด ์•”ํ˜ธํ™” ํ‚ค๋ฅผ ์ž๋™์œผ๋กœ ๋ณต์‚ฌํ•˜๋Š” ์›ํด๋ฆญ โ€œ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜โ€์„ ํ—ˆ์šฉํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์›ํ™œํ•˜๊ฒŒ ์ „ํ™˜ํ•˜๊ณ  Kerberoasting ์œ„ํ—˜์„ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.

Akamai ์—ฐ๊ตฌ์›๋“ค์€ **msDSโ€‘ManagedAccountPrecededByLink**๋ผ๋Š” ๋‹จ์ผ ์†์„ฑ์ด dMSA๊ฐ€ โ€œ๊ณ„์Šนโ€ํ•˜๋Š” ๋ ˆ๊ฑฐ์‹œ ๊ณ„์ •์„ KDC์— ์•Œ๋ ค์ค€๋‹ค๋Š” ๊ฒƒ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ณต๊ฒฉ์ž๊ฐ€ ํ•ด๋‹น ์†์„ฑ์„ ์“ธ ์ˆ˜ ์žˆ๊ณ  msDSโ€‘DelegatedMSAStateย โ†’โ€ฏ2๋กœ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด, KDC๋Š” ์„ ํƒํ•œ ํ”ผํ•ด์ž์˜ ๋ชจ๋“  SID๋ฅผ ์ƒ์†ํ•˜๋Š” PAC๋ฅผ ๊ธฐ๊บผ์ด ์ƒ์„ฑํ•˜์—ฌ dMSA๊ฐ€ ๋„๋ฉ”์ธ ๊ด€๋ฆฌ์ž ํฌํ•จ ๋ชจ๋“  ์‚ฌ์šฉ์ž๋ฅผ ๊ฐ€์žฅํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

dMSA๋ž€ ์ •ํ™•ํžˆ ๋ฌด์—‡์ธ๊ฐ€?

  • gMSA ๊ธฐ์ˆ  ์œ„์— ๊ตฌ์ถ•๋˜์—ˆ์ง€๋งŒ ์ƒˆ๋กœ์šด AD ํด๋ž˜์Šค **msDSโ€‘DelegatedManagedServiceAccount**๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.
  • ์˜ตํŠธ์ธ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค: Startโ€‘ADServiceAccountMigration์„ ํ˜ธ์ถœํ•˜๋ฉด dMSA๊ฐ€ ๋ ˆ๊ฑฐ์‹œ ๊ณ„์ •์— ์—ฐ๊ฒฐ๋˜๊ณ , ๋ ˆ๊ฑฐ์‹œ ๊ณ„์ •์— msDSโ€‘GroupMSAMembership์— ๋Œ€ํ•œ ์“ฐ๊ธฐ ๊ถŒํ•œ์ด ๋ถ€์—ฌ๋˜๋ฉฐ, msDSโ€‘DelegatedMSAState๊ฐ€ 1๋กœ ์ „ํ™˜๋ฉ๋‹ˆ๋‹ค.
  • Completeโ€‘ADServiceAccountMigration ํ›„, ๋Œ€์ฒด๋œ ๊ณ„์ •์€ ๋น„ํ™œ์„ฑํ™”๋˜๊ณ  dMSA๋Š” ์™„์ „ํžˆ ๊ธฐ๋Šฅ์„ ๋ฐœํœ˜ํ•ฉ๋‹ˆ๋‹ค; ์ด์ „์— ๋ ˆ๊ฑฐ์‹œ ๊ณ„์ •์„ ์‚ฌ์šฉํ–ˆ๋˜ ๋ชจ๋“  ํ˜ธ์ŠคํŠธ๋Š” ์ž๋™์œผ๋กœ dMSA์˜ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๋ถ€์—ฌ๋ฐ›์Šต๋‹ˆ๋‹ค.
  • ์ธ์ฆ ์ค‘์— KDC๋Š” KERBโ€‘SUPERSEDEDโ€‘BYโ€‘USER ํžŒํŠธ๋ฅผ ์‚ฝ์ž…ํ•˜์—ฌ Windows 11/24H2 ํด๋ผ์ด์–ธํŠธ๊ฐ€ dMSA๋กœ ํˆฌ๋ช…ํ•˜๊ฒŒ ์žฌ์‹œ๋„ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

๊ณต๊ฒฉ ์š”๊ตฌ ์‚ฌํ•ญ

  1. ์ตœ์†Œ ํ•˜๋‚˜์˜ Windows Server 2025 DC๊ฐ€ ํ•„์š”ํ•˜์—ฌ dMSA LDAP ํด๋ž˜์Šค์™€ KDC ๋กœ์ง์ด ์กด์žฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  2. OU์— ๋Œ€ํ•œ ๊ฐ์ฒด ์ƒ์„ฑ ๋˜๋Š” ์†์„ฑ ์“ฐ๊ธฐ ๊ถŒํ•œ(๋ชจ๋“  OU) โ€“ ์˜ˆ: Create msDSโ€‘DelegatedManagedServiceAccount ๋˜๋Š” ๋‹จ์ˆœํžˆ Create All Child Objects. Akamai๋Š” ์‹ค์ œ ํ™˜๊ฒฝ์˜ 91%๊ฐ€ ๋น„๊ด€๋ฆฌ์ž์—๊ฒŒ ์ด๋Ÿฌํ•œ โ€œ๋ฌดํ•ดํ•œโ€ OU ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•œ๋‹ค๊ณ  ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.
  3. Kerberos ํ‹ฐ์ผ“์„ ์š”์ฒญํ•˜๊ธฐ ์œ„ํ•ด ๋„๋ฉ”์ธ์— ๊ฐ€์ž…๋œ ํ˜ธ์ŠคํŠธ์—์„œ ๋„๊ตฌ(ํŒŒ์›Œ์…ธ/Rubeus)๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ. ํ”ผํ•ด์ž ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ์ œ์–ด๋Š” ํ•„์š”ํ•˜์ง€ ์•Š์œผ๋ฉฐ, ๊ณต๊ฒฉ์€ ๋Œ€์ƒ ๊ณ„์ •์„ ์ง์ ‘ ๊ฑด๋“œ๋ฆฌ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‹จ๊ณ„๋ณ„: BadSuccessor*๊ถŒํ•œ ์ƒ์Šน

  1. ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” dMSA ์ฐพ๊ธฐ ๋˜๋Š” ์ƒ์„ฑํ•˜๊ธฐ
Newโ€‘ADServiceAccount Attacker_dMSA `
โ€‘DNSHostName ad.lab `
โ€‘Path "OU=temp,DC=lab,DC=local"

๋‹น์‹ ์ด ์“ธ ์ˆ˜ ์žˆ๋Š” OU ๋‚ด์—์„œ ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ–ˆ๊ธฐ ๋•Œ๋ฌธ์—, ๋‹น์‹ ์€ ์ž๋™์œผ๋กœ ๋ชจ๋“  ์†์„ฑ์„ ์†Œ์œ ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

  1. ๋‘ ๊ฐœ์˜ LDAP ์“ฐ๊ธฐ๋กœ โ€œ์™„๋ฃŒ๋œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜โ€ ์‹œ๋ฎฌ๋ ˆ์ด์…˜:
  • msDSโ€‘ManagedAccountPrecededByLink = DN์„ ํ”ผํ•ด์ž์˜ ๊ฒƒ์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค (์˜ˆ: CN=Administrator,CN=Users,DC=lab,DC=local).
  • msDSโ€‘DelegatedMSAState = 2๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค (๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์™„๋ฃŒ).

Setโ€‘ADComputer, ldapmodify ๋˜๋Š” ADSI Edit์™€ ๊ฐ™์€ ๋„๊ตฌ๊ฐ€ ์ž‘๋™ํ•˜๋ฉฐ, ๋„๋ฉ”์ธ ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

  1. dMSA์— ๋Œ€ํ•œ TGT ์š”์ฒญ โ€” Rubeus๋Š” /dmsa ํ”Œ๋ž˜๊ทธ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค:
Rubeus.exe asktgs /targetuser:attacker_dmsa$ /service:krbtgt/aka.test /dmsa /opsec /nowrap /ptt /ticket:<Machine TGT>

๋ฐ˜ํ™˜๋œ PAC์—๋Š” ์ด์ œ SID 500(๊ด€๋ฆฌ์ž) ๋ฐ ๋„๋ฉ”์ธ ๊ด€๋ฆฌ์ž/์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ๊ด€๋ฆฌ์ž ๊ทธ๋ฃน์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  ์‚ฌ์šฉ์ž ๋น„๋ฐ€๋ฒˆํ˜ธ ์ˆ˜์ง‘

์ •์ƒ์ ์ธ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์ค‘์— KDC๋Š” ์ƒˆ๋กœ์šด dMSA๊ฐ€ ์ „ํ™˜ ์ „์— ์ด์ „ ๊ณ„์ •์— ๋ฐœ๊ธ‰๋œ ํ‹ฐ์ผ“์„ ๋ณตํ˜ธํ™”ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ™œ์„ฑ ์„ธ์…˜์„ ์ค‘๋‹จํ•˜์ง€ ์•Š๊ธฐ ์œ„ํ•ด, KDC๋Š” **KERBโ€‘DMSAโ€‘KEYโ€‘PACKAGE**๋ผ๋Š” ์ƒˆ๋กœ์šด ASN.1 ๋ธ”๋กญ ์•ˆ์— ํ˜„์žฌ ํ‚ค์™€ ์ด์ „ ํ‚ค๋ฅผ ๋ชจ๋‘ ๋ฐฐ์น˜ํ•ฉ๋‹ˆ๋‹ค.

์šฐ๋ฆฌ์˜ ๊ฐ€์งœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์ด dMSA๊ฐ€ ํ”ผํ•ด์ž๋ฅผ ๊ณ„์Šนํ•œ๋‹ค๊ณ  ์ฃผ์žฅํ•˜๊ธฐ ๋•Œ๋ฌธ์—, KDC๋Š” ํ”ผํ•ด์ž์˜ RC4-HMAC ํ‚ค๋ฅผ ์ด์ „ ํ‚ค ๋ชฉ๋ก์— ์„ฑ์‹คํžˆ ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค โ€“ dMSA๊ฐ€ โ€œ์ด์ „โ€ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๊ฐ€์กŒ๋˜ ์ ์ด ์—†๋”๋ผ๋„ ๋ง์ž…๋‹ˆ๋‹ค. ์ด RC4 ํ‚ค๋Š” ์†”ํŠธ๊ฐ€ ์—†์œผ๋ฏ€๋กœ ์‚ฌ์‹ค์ƒ ํ”ผํ•ด์ž์˜ NT ํ•ด์‹œ๊ฐ€ ๋˜์–ด ๊ณต๊ฒฉ์ž์—๊ฒŒ ์˜คํ”„๋ผ์ธ ํฌ๋ž˜ํ‚น ๋˜๋Š” โ€œํŒจ์Šค-๋”-ํ•ด์‹œโ€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ์ˆ˜์ฒœ ๋ช…์˜ ์‚ฌ์šฉ์ž๋ฅผ ๋Œ€๋Ÿ‰์œผ๋กœ ์—ฐ๊ฒฐํ•˜๋ฉด ๊ณต๊ฒฉ์ž๊ฐ€ ํ•ด์‹œ๋ฅผ โ€œ๋Œ€๊ทœ๋ชจ๋กœโ€ ๋คํ”„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์–ด BadSuccessor๊ฐ€ ๊ถŒํ•œ ์ƒ์Šน ๋ฐ ์ž๊ฒฉ ์ฆ๋ช… ์†์ƒ ์›์‹œ ๊ธฐ๋Šฅ์ด ๋ฉ๋‹ˆ๋‹ค.

๋„๊ตฌ

์ฐธ๊ณ  ๋ฌธํ—Œ

Tip

AWS ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ:HackTricks Training AWS Red Team Expert (ARTE)
GCP ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training GCP Red Team Expert (GRTE) Azure ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks ์ง€์›ํ•˜๊ธฐ