
선택된 Windows 레지스트리 하이브를 원시 NTFS 볼륨에서 직접 추출하는 Cobalt Strike BOF로, NTFS 메타데이터를 파싱하고 디스크에서 직접 파일 데이터를 읽습니다.
RawHive는 원시 NTFS 볼륨에서 직접 선택된 Windows 레지스트리 하이브를 가져오는 Cobalt Strike BOF입니다. 일반 파일 API를 건너뛰고 NTFS 메타데이터를 탐색하여 대상 파일 레코드를 찾은 다음 디스크에서 직접 바이트를 복사합니다.
현재 다음을 찾습니다:
C:\Windows\System32\config\SAMC:\Windows\System32\config\SYSTEMC:\Windows\System32\config\SECURITYC:\Windows\NTDS\ntds.dit (호스트가 도메인 컨트롤러인 경우)기본적으로 C:에서 읽지만 다른 로컬 드라이브 문자를 지정할 수 있습니다.
\\.\C:)을 엽니다.$MFT를 찾습니다.Windows, System32, config 및 대상 파일의 디렉터리 인덱스를 탐색합니다..tmp 파일로 씁니다.x86_64-w64-mingw32-gcc 및 make.make
다음을 빌드합니다:
dist/rawhive.x64.o
rawhive.cna는 dist/에서 객체를 로드하므로 rawhive.c를 변경한 후 다시 빌드하세요.
rawhive C:\Windows\Temp
C:를 명시적으로 읽기:
rawhive C C:\Windows\Temp
D:를 읽고 출력을 C:\Temp에 쓰기:
rawhive d C:\Temp
볼륨은 C, c 또는 C:로 쓸 수 있습니다. 출력 디렉터리는 이미 존재해야 합니다.
<host>_<timestamp>_sam.tmp
<host>_<timestamp>_system.tmp
<host>_<timestamp>_security.tmp
<host>_<timestamp>_ntds.tmp
ntds.tmp는 선택한 볼륨에 C:\Windows\NTDS\ntds.dit가 존재하고 RawHive가 읽을 수 있는 경우에만 기록됩니다.
outdir does not exist
전달한 디렉터리가 대상에 없거나 디렉터리가 아닙니다.
open \\.\C: failed
Beacon에 충분한 권한이 없거나 원시 볼륨 액세스가 차단되었을 수 있습니다.
not NTFS
선택한 볼륨이 NTFS가 아닌 것으로 보입니다.
$mft runlist malformed 또는 unsupported NTFS geometry
볼륨 레이아웃이 지원되지 않거나 손상되었습니다.
output path too long
더 짧은 출력 디렉터리 경로를 사용하세요.
