
Cobalt Strike BOF que extrai hives do registro do Windows diretamente de um volume NTFS bruto, analisando metadados NTFS e lendo dados de arquivo diretamente do disco.
RawHive é um BOF do Cobalt Strike para extrair hives selecionados do registro do Windows diretamente de um volume NTFS bruto. Ele ignora as APIs de arquivo normais, percorre os metadados do NTFS para encontrar os registros de arquivos de destino e copia os bytes diretamente do disco.
Atualmente, ele procura por:
C:\Windows\System32\config\SAMC:\Windows\System32\config\SYSTEMC:\Windows\System32\config\SECURITYC:\Windows\NTDS\ntds.dit, se o host for um controlador de domínioPor padrão, ele lê de C:, mas você pode apontar para outra letra de unidade local.
\\.\C:.$MFT.Windows, System32, config e os arquivos de destino..tmp.x86_64-w64-mingw32-gcc e make para compilação.make
Isso compila:
dist/rawhive.x64.o
rawhive.cna carrega o objeto de dist/, então recompile após alterar rawhive.c.
rawhive C:\Windows\Temp
Ler C: explicitamente:
rawhive C C:\Windows\Temp
Ler D: e gravar a saída em C:\Temp:
rawhive d C:\Temp
O volume pode ser escrito como C, c ou C:. O diretório de saída deve já existir.
<host>_<timestamp>_sam.tmp
<host>_<timestamp>_system.tmp
<host>_<timestamp>_security.tmp
<host>_<timestamp>_ntds.tmp
ntds.tmp só é gravado se C:\Windows\NTDS\ntds.dit existir no volume selecionado e RawHive conseguir lê-lo.
outdir does not exist
O diretório que você passou está ausente no destino, ou não é um diretório.
open \\.\C: failed
Provavelmente o Beacon não tem privilégios suficientes, ou o acesso ao volume bruto está bloqueado.
not NTFS
O volume selecionado não parece ser NTFS.
$mft runlist malformed or unsupported NTFS geometry
O layout do volume não é suportado ou está danificado.
output path too long
Use um caminho de diretório de saída mais curto.
