
vdm 파일에서 Windows Defender 데이터베이스를 추출하고 압축 해제합니다
- 이 프로그램은 아무런 보증 없이 있는 그대로 배포됩니다.
- 공식 지원은 없습니다. 이 도구가 마음에 드시면 자유롭게 기여해 주세요.
기능
- Windows Defender/Microsoft Security Essentials의 VDM 컨테이너 압축 해제
- 악성 소프트웨어 제거 도구(MRT.exe)에 포함된 VDM 컨테이너 복호화
- 압축 해제 없이 원시 RMDX 컨테이너 추출(-ec 스위치)
- 기본 VDM 파일과 델타 파일 병합(-m 스위치)
- 추출/복호화/병합된 컨테이너에서 모든 PE 이미지를 즉시 추출(-e 스위치):
- VDLL(가상 DLL) 덤프
- VFS(가상 파일 시스템) 콘텐츠 덤프
- 서명 보조 이미지 덤프
- NIS(네트워크 검사 시스템)에서 사용하는 GAPA(일반 애플리케이션 수준 프로토콜 분석기) 이미지 덤프
- 코드를 수정하여 데이터베이스의 특정 유형 청크를 덤프할 수 있음(미구현)
- 어떤 스크립트보다 빠름
MRT에서 추출한 이미지 목록 (버전 5.71.15840.1)
https://gist.githubusercontent.com/hfiref0x/e4b97fb7135c9a6f9f0787c07da0a99d/raw/d91e77f71aa96bdb98d121b1d915dc697ce85e2a/gistfile1.txt
WD에서 추출한 이미지 목록, mpasbase.vdm (버전 1.291.0.0)
https://gist.githubusercontent.com/hfiref0x/38e7845304d10c284220461c86491bdf/raw/39c999e59ff2a924932fe6db811555161596b4a7/gistfile1.txt
NisBase.vdm에서 추출한 NIS 서명 목록 (버전 119.0.0.0)
https://gist.githubusercontent.com/hfiref0x/e9b3f185032fcd2afb31afe7bc9a05bd/raw/9bd9f9cc7c408acaff7b56b810c8597756d55d14/nis_sig.txt
사용법
wdextract file [-e]
wdextract file [-ec]
wdextract baseFile deltaFile -m [-e]
wdextract baseFile -m deltaFile [-e]
- file - VDM 컨테이너 파일 이름(*.vdm 파일 또는 MRT.exe 실행 파일)
- baseFile - 기본 VDM 컨테이너 파일 이름
- deltaFile - 기본 파일과 병합할 델타 파일 이름
- -e 선택적 매개변수, 압축 해제/복호화/병합 후 컨테이너에서 발견된 모든 PE 이미지 청크 추출
- -ec 추가 처리 없이 원시 RMDX 컨테이너 추출(-e 및 -m 옵션과 호환되지 않음)
- -m 기본 VDM 파일과 델타 파일 병합
- -mc 병합된 파일의 체크섬 확인
예:
- wdextract c:\wdbase\mpasbase.vdm
- wdextract c:\wdbase\mpasbase.vdm -e
- wdextract c:\wdbase\mrt.exe
- wdextract c:\wdbase\mrt.exe -e
- wdextract c:\wdbase\mpasbase.vdm -ec
- wdextract c:\wdbase\mpasbase.extracted c:\wdbase\mpasdlta.extracted -m
- wdextract c:\wdbase\mpasbase.extracted c:\wdbase\mpasdlta.extracted -m -e
- wdextract c:\wdbase\mpasbase.extracted -m c:\wdbase\mpasdlta.extracted [-e] [-mc]
참고 사항
- 입력 파일은 소스 디렉터리에 %originalname%.extracted로 압축 해제/복호화됩니다(예: 원본 파일이 c:\wdbase\mpasbase.vdm인 경우 압축 해제된 파일은 c:\wdbase\mpasbase.extracted). 원시 컨테이너는 %originalname%.rdmx로 추출됩니다. 병합된 파일은 %originalname%.merged로 저장됩니다. 이미지 청크는 wdextract 현재 디렉터리에 생성된 "chunks" 디렉터리에 덤프됩니다(예: wdextract가 c:\wdbase에서 실행된 경우 c:\wdbase\chunks 디렉터리). 출력 파일은 항상 기존 파일을 덮어씁니다.
- 병합 명령(-m)을 사용할 때는 이전에 WDExtract로 압축 해제/복호화된 파일을 병합하고 있는지 확인하십시오. 예를 들어 mpasbase.vdm의 델타인 mpasdlta.vdm을 병합하려면 먼저 mpasbase.vdm과 mpasdlta.vdm을 압축 해제한 후에만 병합 결과를 병합해야 합니다.
빌드
- C로 작성된 소스 코드
- Windows SDK 19041 이상이 설치된 MSVS 2022/2026으로 빌드
- 이전 버전의 MSVS 및 SDK로도 빌드 가능
관련 참고 자료 및 도구
N.B.
이 저장소에는 실제 덤프/추출/압축 해제된 바이너리 데이터가 포함되어 있지 않으며 앞으로도 포함되지 않습니다.
타사 코드 사용
ZLIB 데이터 압축 라이브러리 사용 (https://github.com/madler/zlib)
저자
(c) 2019 - 2026 WDEXTRACT 프로젝트