SeManageVolumePrivilege: ์ž„์˜ ํŒŒ์ผ ์ฝ๊ธฐ๋ฅผ ์œ„ํ•œ ์›์‹œ ๋ณผ๋ฅจ ์•ก์„ธ์Šค

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 ์ง€์›ํ•˜๊ธฐ

๊ฐœ์š”

Windows ์‚ฌ์šฉ์ž ๊ถŒํ•œ: ๋ณผ๋ฅจ ์œ ์ง€ ๊ด€๋ฆฌ ์ž‘์—… ์ˆ˜ํ–‰ (์ƒ์ˆ˜: SeManageVolumePrivilege).

๊ถŒํ•œ ๋ณด์œ ์ž๋Š” ์กฐ๊ฐ ๋ชจ์Œ, ๋ณผ๋ฅจ ์ƒ์„ฑ/์ œ๊ฑฐ, ์œ ์ง€ ๊ด€๋ฆฌ IO์™€ ๊ฐ™์€ ์ €์ˆ˜์ค€ ๋ณผ๋ฅจ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณต๊ฒฉ์ž์—๊ฒŒ ํŠนํžˆ ์ค‘์š”ํ•œ ์ ์€ ์ด ๊ถŒํ•œ์œผ๋กœ ์›์‹œ ๋ณผ๋ฅจ ์žฅ์น˜ ํ•ธ๋“ค(์˜ˆ: \.\C:)์„ ์—ด๊ณ  NTFS ํŒŒ์ผ ACL์„ ์šฐํšŒํ•˜๋Š” ์ง์ ‘ ๋””์Šคํฌ I/O๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์›์‹œ ์•ก์„ธ์Šค๋ฅผ ํ†ตํ•ด ํŒŒ์ผ ์‹œ์Šคํ…œ ๊ตฌ์กฐ๋ฅผ ์˜คํ”„๋ผ์ธ์œผ๋กœ ํŒŒ์‹ฑํ•˜๊ฑฐ๋‚˜ ๋ธ”๋ก/ํด๋Ÿฌ์Šคํ„ฐ ์ˆ˜์ค€์—์„œ ์ฝ๋Š” ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•˜์—ฌ DACL์— ์˜ํ•ด ์ ‘๊ทผ์ด ๊ฑฐ๋ถ€๋œ ๊ฒฝ์šฐ์—๋„ ๋ณผ๋ฅจ ์ƒ์˜ ์–ด๋–ค ํŒŒ์ผ์ด๋“  ๋ฐ”์ดํŠธ ๋‹จ์œ„๋กœ ๋ณต์‚ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ๋ณธ: ์„œ๋ฒ„ ๋ฐ ๋„๋ฉ”์ธ ์ปจํŠธ๋กค๋Ÿฌ์˜ Administrators.

์•…์šฉ ์‹œ๋‚˜๋ฆฌ์˜ค

  • ๋””์Šคํฌ ์žฅ์น˜๋ฅผ ์ฝ์–ด ACL์„ ์šฐํšŒํ•œ ์ž„์˜ ํŒŒ์ผ ์ฝ๊ธฐ(์˜ˆ: %ProgramData%\Microsoft\Crypto\RSA\MachineKeys ๋ฐ %ProgramData%\Microsoft\Crypto\Keys ์•„๋ž˜์˜ ๋จธ์‹  ๊ฐœ์ธํ‚ค, ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ํ•˜์ด๋ธŒ, DPAPI ๋งˆ์Šคํ„ฐํ‚ค, SAM, VSS๋ฅผ ํ†ตํ•œ ntds.dit ๋“ฑ ๋ฏผ๊ฐํ•œ ์‹œ์Šคํ…œ ๋ณดํ˜ธ ์ž๋ฃŒ ํƒˆ์ทจ).
  • raw device์—์„œ ๋ฐ”์ดํŠธ๋ฅผ ์ง์ ‘ ๋ณต์‚ฌํ•˜์—ฌ ์ž ๊ธด/๊ถŒํ•œ ์žˆ๋Š” ๊ฒฝ๋กœ(C:\Windows\System32\โ€ฆ) ์šฐํšŒ.
  • AD CS ํ™˜๊ฒฝ์—์„œ CA์˜ ํ‚ค ์ž๋ฃŒ(๋จธ์‹  ํ‚ค ์Šคํ† ์–ด)๋ฅผ ํƒˆ์ทจํ•ด โ€œGolden Certificatesโ€๋ฅผ ๋ฐœ๊ธ‰ํ•˜๊ณ  PKINIT๋ฅผ ํ†ตํ•ด ์–ด๋–ค ๋„๋ฉ”์ธ ์ฃผ์ฒด๋„ ๊ฐ€์žฅ(impersonate)ํ•  ์ˆ˜ ์žˆ์Œ. ์•„๋ž˜ ๋งํฌ ์ฐธ์กฐ.

์ฐธ๊ณ : ๋ณด์กฐ ๋„๊ตฌ์— ์˜์กดํ•˜์ง€ ์•Š๋Š” ํ•œ NTFS ๊ตฌ์กฐ๋ฅผ ํŒŒ์‹ฑํ•  ํŒŒ์„œ๊ฐ€ ์—ฌ์ „ํžˆ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ƒ์šฉ ๋„๊ตฌ ์ค‘ ๋‹ค์ˆ˜๋Š” ์›์‹œ ์•ก์„ธ์Šค๋ฅผ ์ถ”์ƒํ™”ํ•ฉ๋‹ˆ๋‹ค.

์‹ค์ „ ๊ธฐ๋ฒ•

  • ์›์‹œ ๋ณผ๋ฅจ ํ•ธ๋“ค์„ ์—ด๊ณ  ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ฝ๊ธฐ:
Click to expand ```powershell # PowerShell โ€“ read first MB from C: raw device (requires SeManageVolumePrivilege) $fs = [System.IO.File]::Open("\\.\\C:",[System.IO.FileMode]::Open,[System.IO.FileAccess]::Read,[System.IO.FileShare]::ReadWrite) $buf = New-Object byte[] (1MB) $null = $fs.Read($buf,0,$buf.Length) $fs.Close() [IO.File]::WriteAllBytes("C:\\temp\\c_first_mb.bin", $buf) ```
// C# (compile with Add-Type) โ€“ read an arbitrary offset of \\.\nusing System;
using System.IO;
class R {
static void Main(string[] a){
using(var fs = new FileStream("\\\\.\\C:", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)){
fs.Position = 0x100000; // seek
var buf = new byte[4096];
fs.Read(buf,0,buf.Length);
File.WriteAllBytes("C:\\temp\\blk.bin", buf);
}
}
}
  • Use an NTFS-aware tool to recover specific files from raw volume:
  • RawCopy/RawCopy64 (์‚ฌ์šฉ ์ค‘์ธ ํŒŒ์ผ์˜ ์„นํ„ฐ ์ˆ˜์ค€ ๋ณต์‚ฌ)
  • FTK Imager or The Sleuth Kit (์ฝ๊ธฐ ์ „์šฉ ์ด๋ฏธ์ง•, ์ดํ›„ ํŒŒ์ผ ์นด๋น™)
  • vssadmin/diskshadow + shadow copy, then copy target file from the snapshot (VSS๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด; ์ข…์ข… ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์ด ํ•„์š”ํ•˜์ง€๋งŒ SeManageVolumePrivilege๋ฅผ ๊ฐ€์ง„ ๋™์ผํ•œ ์šด์˜์ž์—๊ฒŒ ํ”ํžˆ ์ œ๊ณต๋จ)

Typical sensitive paths to target:

  • %ProgramData%\Microsoft\Crypto\RSA\MachineKeys\
  • %ProgramData%\Microsoft\Crypto\Keys\
  • C:\Windows\System32\config\SAM, SYSTEM, SECURITY (๋กœ์ปฌ ๋น„๋ฐ€)
  • C:\Windows\NTDS\ntds.dit (๋„๋ฉ”์ธ ์ปจํŠธ๋กค๋Ÿฌ โ€“ shadow copy๋ฅผ ํ†ตํ•ด)
  • C:\Windows\System32\CertSrv\CertEnroll\ (CA certs/CRLs; ๊ฐœ์ธ ํ‚ค๋Š” ์œ„์˜ machine key store์— ์ €์žฅ๋จ)

AD CS tieโ€‘in: Forging a Golden Certificate

๋งŒ์•ฝ machine key store์—์„œ Enterprise CA์˜ ๊ฐœ์ธ ํ‚ค๋ฅผ ์ฝ์„ ์ˆ˜ ์žˆ๋‹ค๋ฉด, ์ž„์˜์˜ ์ฃผ์ฒด์— ๋Œ€ํ•ด clientโ€‘auth ์ธ์ฆ์„œ๋ฅผ ์œ„์กฐํ•˜๊ณ  PKINIT/Schannel์„ ํ†ตํ•ด ์ธ์ฆํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ํ”ํžˆ Golden Certificate๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ฐธ๊ณ :

AD CS Domain Persistence

(์„น์…˜: โ€œForging Certificates with Stolen CA Certificates (Golden Certificate) โ€“ DPERSIST1โ€).

Detection and hardening

  • SeManageVolumePrivilege (Perform volume maintenance tasks)์˜ ํ• ๋‹น์„ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ด€๋ฆฌ์ž์—๊ฒŒ๋งŒ ์—„๊ฒฉํžˆ ์ œํ•œํ•˜์‹ญ์‹œ์˜ค.
  • Sensitive Privilege Use์™€ \.\C:, \.\PhysicalDrive0 ๊ฐ™์€ ๋””๋ฐ”์ด์Šค ๊ฐ์ฒด์— ๋Œ€ํ•œ ํ”„๋กœ์„ธ์Šค ํ•ธ๋“ค ์˜คํ”ˆ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜์‹ญ์‹œ์˜ค.
  • ์›์‹œ ํŒŒ์ผ ์ฝ๊ธฐ๋กœ๋ถ€ํ„ฐ ํ‚ค ์ž๋ฃŒ๊ฐ€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํ˜•ํƒœ๋กœ ๋ณต๊ตฌ๋˜์ง€ ์•Š๋„๋ก HSM/TPM ๊ธฐ๋ฐ˜ CA ํ‚ค ๋˜๋Š” DPAPI-NG๋ฅผ ์šฐ์„  ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.
  • ์—…๋กœ๋“œ, ์ž„์‹œ ๋ฐ ์ถ”์ถœ ๊ฒฝ๋กœ๋ฅผ ์‹คํ–‰ ๋ถˆ๊ฐ€๋Šฅ(non-executable)ํ•˜๊ณ  ๋ถ„๋ฆฌ๋œ ์ƒํƒœ๋กœ ์œ ์ง€ํ•˜์‹ญ์‹œ์˜ค(์›น ์ปจํ…์ŠคํŠธ ๋ฐฉ์–ด๋กœ์„œ ์ด ์ฒด์ธ ํ›„-์•…์šฉ๊ณผ ์ž์ฃผ ๊ฒฐํ•ฉ๋จ).

References

  • Microsoft โ€“ Perform volume maintenance tasks (SeManageVolumePrivilege): https://learn.microsoft.com/previous-versions/windows/it-pro/windows-10/security/threat-protection/security-policy-settings/perform-volume-maintenance-tasks
  • 0xdf โ€“ HTB: Certificate (SeManageVolumePrivilege used to read CA key โ†’ Golden Certificate): https://0xdf.gitlab.io/2025/10/04/htb-certificate.html

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 ์ง€์›ํ•˜๊ธฐ