Netwrix 1Secure는 데이터와 아이덴티티 전반에 걸쳐 통합된 가시성을 제공합니다 - 14일간 무료로 전체 액세스가 가능합니다.무료 평가판 시작

리소스 센터블로그

Ntds.dit 파일에서 비밀번호 해시 추출

Ntds.dit 파일에서 비밀번호 해시 추출

Sep 26, 2025

Ntds.dit 파일은 모든 Active Directory 비밀번호 해시를 저장하므로, 이를 추출하고 해독(크랙)하며 자격 증명을 악용해 전체 도메인 제어를 획득할 수 있는 공격자에게는 최우선 표적이 됩니다. 일반적으로 사용되는 기법에는 볼륨 섀도 복사본과 PowerSploit이 포함됩니다. 방어를 위해서는 특권 그룹에 대한 엄격한 통제와 재인증, 의심스러운 접근에 대한 모니터링, 그리고 탐지·차단·노출 감소를 수행하는 도구를 활용한 다층 보호가 필요합니다.

Pass-the-Hash (PtH) 및 Pass-the-Ticket (PtT) 같은 자격 증명 기반 공격에 많은 관심이 쏠리면서, 더 심각하고 효과적인 공격은 종종 간과됩니다. 그중 하나의 공격은 Active Directory 도메인 컨트롤러에서 Ntds.dit 파일을 유출하는 것입니다. 이 위협이 무엇을 의미하는지, 공격이 어떻게 수행될 수 있는지, 그리고 조직을 어떻게 보호할 수 있는지 살펴보겠습니다.

Ntds.dit 파일이란 무엇인가요?

Ntds.dit 파일은 사용자 개체, 그룹 및 그룹 멤버십에 대한 정보를 포함해 Active Directory 데이터를 저장하는 데이터베이스입니다. 특히 이 파일에는 도메인의 모든 사용자에 대한 비밀번호 해시도 함께 저장됩니다. 이러한 해시를 추출한 사이버 범죄자는 Mimikatz 같은 도구를 사용하여 PtH 공격을 수행할 수 있으며, 또는 Hashcat 같은 도구로 오프라인에서 비밀번호를 크랙할 수도 있습니다. 실제로 공격자가 해시를 추출하기만 하면 도메인의 어떤 사용자로도 행세할 수 있으며, 여기에는 도메인 관리자도 포함됩니다.

Ntds.dit 파일에 대한 공격은 어떻게 작동하나요?

첫 번째 단계는 Ntds.dit의 복사본을 확보하는 것입니다. 하지만 이 파일은 AD에서 지속적으로 사용되기 때문에 잠금 상태이며, 따라서 생각보다 간단하지 않습니다. 파일을 단순히 복사하려고 하면 다음과 같은 오류 메시지가 표시됩니다:

Image

Windows에 내장된 기능이나 PowerShell 라이브러리를 사용하면 이 장애물을 우회하는 방법이 여러 가지 있습니다. 예를 들어 공격자는 다음과 같이 할 수 있습니다:

  1. VSSAdmin 명령을 통해 볼륨 섀도 복사본 사용
  2. PowerSploit 침투 테스트 PowerShell 모듈 사용
  3. Active Directory의 일부로 제공되는 NTDSUtil 진단 도구를 활용하세요
  4. 도메인 컨트롤러가 가상 머신으로 실행 중이라면 스냅샷을 활용하세요

이러한 접근 방식 중 처음 두 가지를 살펴보겠습니다.

VSSAdmin을 사용하여 Ntds.dit 파일을 탈취하기

1단계. 볼륨 섀도 복사본을 생성합니다:

Image

2단계. 볼륨 섀도 복사본에서 Ntds.dit 파일을 가져옵니다:

Image

3단계. 레지스트리 또는 볼륨 섀도 복사본에서 SYSTEM 파일을 복사합니다. 이 파일에는 나중에 Ntds.dit 파일을 복호화하는 데 필요할 부트 키가 포함되어 있습니다:

Image
Image

4단계. 흔적을 지웁니다:

Image

PowerSploit NinjaCopy를 사용해 Ntds.dit 파일을 훔치는 방법

PowerSploit 는 Active Directory 악용에 사용할 수 있는 다양한 기능을 포함한 PowerShell 침투 테스트 프레임워크입니다. Invoke-NinjaCopy 모듈은 원시 볼륨을 읽어서 NTFS 파티션이 된 볼륨에서 파일을 복사하며, 이를 통해 공격자는 모니터링 시스템에 알리지 않고 Active Directory가 잠금한 파일에 접근할 수 있습니다.

Image

2단계. 비밀번호 해시 추출

공격자가 Ntds.dit 파일의 복사본을 확보한 다음, 다음 단계는 여기에서 비밀번호 해시를 추출하는 것입니다. DSInternals는 PowerShell 모듈 을 제공하며, 이를 사용해 Ntds.dit 파일과 상호작용할 수 있습니다. 비밀번호 해시를 추출하기 위해 이를 사용하는 방법은 다음과 같습니다:

Image

3단계. 비밀번호 해시를 사용해 공격을 완료합니다.

공격자가 Ntds.dit 파일에서 비밀번호 해시를 추출하면, Mimikatz 같은 도구를 사용해 패스-더-해시(PtH) 공격을 수행할 수 있습니다. 또한 Hashcat 같은 도구를 사용해 비밀번호를 크랙하고 해당 비밀번호의 평문 값을 얻을 수도 있습니다. 공격자가 이러한 자격 증명을 확보하면, 그 자격 증명을 이용해 할 수 있는 일에는 제한이 없습니다.

조직은 Ntds.dit 파일에 대한 공격을 어떻게 방어할 수 있나요?

이 공격으로부터 조직을 보호하는 가장 좋은 방법은 도메인 컨트롤러에 로그인할 수 있는 사용자의 수를 제한하는 것입니다. 여기에는 Domain Admins 및 Enterprise Admins 같은 고도로 권한이 부여된 그룹의 구성원뿐만 아니라 Print Operators, Server Operators, Account Operators 같은 상대적으로 권한이 낮은 그룹의 구성원도 포함됩니다. 또한 이러한 모든 그룹의 구성원은 엄격하게 제한하고, 변경 사항이 있는지 지속적으로 모니터링하며, 자주 재인증해야 합니다.

또한 볼륨 섀도 복사본에서 파일을 검색(가져오기)하지 못하게, 경고를 발령하는 것은 물론이고 아예 차단할 수 있는 모니터링 소프트웨어를 사용하는 것도 고려해 보세요.

Netwrix 솔루션이 어떻게 도움이 될 수 있나요

Netwrix는 Ntds.dit 암호 추출 공격에 대응하기 위한 다계층 접근 방식을 제공합니다.

Ntds.dit 파일을 훔치려는 시도 감지

Netwrix Threat Manager 는 Ntds.dit 암호 추출 공격을 탐지하는 데 효과적인 도구입니다. Ntds.dit 파일에 대해 다음을 포함하여 예기치 않은 액세스 이벤트를 지속적으로 찾습니다.

  • 파일 시스템에서 파일에 대한 직접 액세스 — Ntds.dit 파일은 사용 중인 동안 Active Directory가 잠그므로, 공격자는 일반적으로 Active Directory 서비스를 중지하지 않고서는 해당 파일을 가져올 수 없습니다. AD 서비스는 Local System으로 실행되므로, 사용자 계정에 의한 성공 및 차단된 액세스 이벤트를 모두 모니터링하면 원치 않는 액세스 시도에 대한 의미 있는 통찰을 제공할 수 있습니다.
  • 볼륨 섀도 복사본을 통한 Ntds.dit 파일 액세스 — Ntds.dit 파일이 잠겨 있더라도 공격자는 전체 드라이브의 섀도 복사본을 생성한 다음, 해당 섀도 복사본에서 Ntds.dit 파일을 추출할 수 있습니다.

Ntds.dit 파일에 대한 액세스를 차단

Netwrix Threat Prevention 파일 시스템에서 Ntds.dit 파일에 대한 직접 액세스와 볼륨 섀도 복사본을 통해 해당 파일에 액세스하는 것을 모두 차단할 수 있습니다. 따라서 공격자가 파일 잠금을 해제하기 위해 Active Directory를 중지하더라도, 그리고 완전한 관리자 권한을 가지고 있더라도, 파일에 직접 액세스할 수 없습니다.

공격 표면(attack surface) 영역을 사전에 줄이세요

Netwrix Access Analyzer Domain Admins 및 Server Operators와 같은 도메인 컨트롤러에 액세스 권한이 있는 관리 그룹을 검토하고 제어하는 데 도움이 됩니다. 이러한 그룹의 구성원을 면밀하게 제한함으로써 공격자가 Ntds.dit 파일에 액세스할 위험을 줄일 수 있습니다.

Netwrix Threat Manager 무료 체험을 신청하세요

공유하기

더 알아보기

저자 소개

Jeff Warren

최고 제품 책임자

Jeff Warren은 Netwrix의 제품 포트폴리오를 총괄하며, 보안에 초점을 둔 제품 관리 및 개발 분야에서 10년이 넘는 경험을 바탕으로 기여하고 있습니다. Netwrix에 합류하기 전 Jeff는 Stealthbits Technologies에서 제품 조직을 이끌었으며, 소프트웨어 엔지니어로서의 경험을 활용해 혁신적이고 엔터프라이즈 규모의 보안 솔루션을 개발했습니다. 직접적인 실행 중심의 접근 방식과 까다로운 보안 과제를 해결하는 데 강점을 지닌 Jeff는 실제로 효과가 있는 실용적인 솔루션을 구축하는 데 집중하고 있습니다. 그는 델라웨어 대학교에서 정보 시스템(Information Systems) 학사 학위를 취득했습니다.