Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
LogFileParser — Analisador para $LogFile em NTFS | Kitploit
Ferramentas/GitHubGitHub/jschicht/logfileparser
Forensia de DiscoAnálise ForenseRecuperação de DadosForensia DigitalAnálise de BináriosAnálise de Logs
GitHubjschicht/logfileparser

LogFileParser

Analisador para $LogFile em NTFS

Ver Repositório
2182924há 4 mesesRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Recursos Decodifica e extrai registros $LogFile e entradas de transação. Decodifica alterações de atributos NTFS. Opcionalmente resolve toda a informação da lista de dataruns disponível no $LogFile. Opção: "Reconstruct data runs". Recupera transações do espaço slack dentro do $LogFile. Escolha reconstruir cabeçalhos ausentes ou danificados de transações encontradas no slack. Opção: "Rebuild header". Opcionalmente também afina o resultado com um valor de nível de erro LSN. Opção: "LSN error level". Registra em csv e importa para base de dados sqlite com várias tabelas. Opcionalmente importa a saída csv do mft2csv para a base de dados. Escolha entre 6 formatos de timestamp diferentes. Escolha a precisão do timestamp: None, MilliSec e NanoSec. Escolha o separador de precisão em milissegundos. Escolha o separador de precisão em nanossegundos. Escolha o ajuste de região para timestamps. O padrão é apresentar timestamps em UTC 0.0. Escolha o separador de saída. Opção: "Set separator". Saída UNICODE ou ANSI configurável. Opção "Unicode". Tamanho de registro MFT configurável (1024 ou 4096). Opção "MFT record size". Opcionalmente decodifica transações individuais ou transações parciais (fragmento). Opção para reconstruir RCRD's a partir de transações únicas ou múltiplas (fragmentos). Opção para configurar $LogFile corrompido. Útil com RCRD's carved como entrada. Opção para ignorar fixups (para $LogFile corrompido, tipicamente carved da memória). Saída verbosa detalhada em debug.log. Lista configurável separada por vírgulas de lsn's para acionar informação ultra verbosa sobre transações específicas em debug.log. Configuração para SO de 32 bits. Configuração para extração de dados binários de atualizações de dados residentes. sql autogerado para importar a saída para base de dados MySql. Opção para ignorar todo o processamento sqlite3 para acelerar o parsing total. Modo de linha de comandos opcional. Suporta errorlevel adequado para scripting em lote.

Contexto O NTFS foi concebido como um sistema de ficheiros recuperável. Isto é feito através do registo de todas as transações que alteram a estrutura do volume. Assim, qualquer alteração a um ficheiro no volume exigirá que algo seja também registado no $LogFile, para que possa ser revertido em caso de falha do sistema em qualquer momento. Portanto, muita informação é escrita neste ficheiro, e como é circular, significa que novas transações estão a sobrescrever registos mais antigos no ficheiro. Assim, é algo limitado quanto de dados históricos podem ser recuperados deste ficheiro. Novamente, isso dependeria do tipo de volume e do tamanho do $LogFile. No systemdrive de um sistema frequentemente utilizado, provavelmente obterá apenas algumas horas de histórico, enquanto um disco externo/secundário com ficheiros de backup provavelmente conterá mais informação histórica. E um ficheiro de 2MB conterá muito menos histórico do que um de 256MB. Então, em que intervalo de tamanho pode este ficheiro ser configurado? Qualquer coisa a partir de 256 KB. Configurar o tamanho para 2 GB pode ser feito assim, "chkdsk D: /L:2097152". Como um logfile de grande dimensão impacta o desempenho está fora do âmbito deste texto. Definir abaixo de 2048 normalmente não é possível. No entanto, é possível através de patching da untfs.dll: http://code.google.com/p/mft2csv/wiki/Tiny_NTFS

Introdução Este parser irá decodificar e extrair muita informação de transação do $LogFile em NTFS. São gerados vários csv's, bem como uma base de dados sqlite chamada ntfs.db contendo toda a informação relevante. A saída é extremamente detalhada e de muito baixo nível, o que significa que requer algum conhecimento decente de NTFS para a compreender. Os tipos de transação Redo atualmente tratados com decodificação de saída significativa são:

InitializeFileRecordSegment CreateAttribute DeleteAttribute UpdateResidentValue UpdateNonResidentValue UpdateMappingPairs SetNewAttributeSizes AddindexEntryRoot DeleteindexEntryRoot AddIndexEntryAllocation DeleteIndexEntryAllocation WriteEndOfIndexBuffer SetIndexEntryVcnRoot SetIndexEntryVcnAllocation UpdateFileNameRoot UpdateFileNameAllocation SetBitsInNonresidentBitMap ClearBitsInNonresidentBitMap OpenNonresidentAttribute OpenAttributeTableDump AttributeNamesDump DirtyPageTableDump TransactionTableDump UpdateRecordDataRoot UpdateRecordDataAllocation CompensationlogRecord

A lista de atributos atualmente suportados: $STANDARD_INFORMATION $ATTRIBUTE_LIST $FILE_NAME $OBJECT_ID $SECURITY_DESCRIPTOR $VOLUME_NAME $VOLUME_INFORMATION $DATA $INDEX_ROOT $INDEX_ALLOCATION $REPARSE_POINT $EA_INFORMATION $EA $LOGGED_UTILITY_STREAM

Portanto, basicamente todos os atributos são suportados.

Explicação das diferentes saídas geradas:

LogFile.csv: O csv principal gerado pelo parser.

LogFile_DataRuns.csv A informação de entrada necessária para reconstruir dataruns

LogFile_DataRunsResolved.csv A saída final dos dataruns reconstruídos

LogFile_INDX_I30.csv Todos os registos de índice extraídos e decodificados (IndexRoot/IndexAllocation)

LogFileJoined.csv O mesmo que LogFile.csv, mas com informação de nome de ficheiro associada a partir do $UsnJrnl ou csv do mft2csv.

MFTRecords.bin $MFT fictício recriado com base nos registos MFT encontrados em transações InitializeFileRecordSegment. Pode usar mft2csv neste (lembre-se de configurar "broken MFT" e "Fixups" corretamente).

LogFile_lfUsnJrnl.csv Registos para o $UsnJrnl que foram decodificados dentro do $LogFile

LogFile_UndoWipe_INDX_I30.csv Todas as operações de undo para limpeza de índices de diretório (INDX).

LogFile_AllTransactionHeaders.csv Todos os cabeçalhos das transações decodificadas.

LogFile_BitsInNonresidentBitMap.csv Todas as operações SetBitsInNonresidentBitMap decodificadas.

LogFile_DirtyPageTable32bit.csv e LogFile_DirtyPageTable64bit.csv Todas as entradas em cada operação DirtyPageTableDump decodificada, tanto para SO de 32 bits como de 64 bits.

LogFile_Mft_ObjectId_Entries.csv Atributos $ObjectId decodificados.

LogFile_ObjIdO.csv Todas as decodificações do ficheiro de sistema $ObjId:$O.

LogFile_OpenAttributeTable.csv Todas as entradas em cada operação OpenAttributeTableDump decodificada.

LogFile_QuotaO.csv Todas as decodificações do ficheiro de sistema $Quota:$O.

LogFile_QuotaQ.csv Todas as decodificações do ficheiro de sistema $Quota:$Q.

LogFile_RCRD.csv Todos os cabeçalhos dos registos RCRD decodificados.

LogFile_ReparseR.csv Todas as decodificações do ficheiro de sistema $Reparse:$R.

LogFile_SecureSDH.csv Todas as decodificações do ficheiro de sistema $Secure:$SDH.

LogFile_SecureSII.csv Todas as decodificações do ficheiro de sistema $Secure:$SII.

LogFile_SecurityDescriptors.csv Security descriptors decodificados. A origem pode ser de $SECURITY_DESCRIPTOR ou $Secure:$SDS.

LogFile_SlackAttributeNamesDump.csv Todas as entradas de transações AttributeNamesDump decodificadas encontradas no espaço slack.

LogFile_SlackOpenAttributeTable.csv Todas as entradas de transações OpenAttributeTableDump decodificadas encontradas no espaço slack.

LogFile_TransactionTable.csv Transações TransactionTableDump decodificadas.

LogFile_Filenames.csv Todos os nomes de ficheiro resolvidos com MftRef, MftRefSeqNo e Lsn.

LogFile_TxfData.csv Dados decodificados de $DATA:$TXF_DATA em $LOGGED_UTILITY_STREAM.

LogFile_UpdateFileName_I30.csv Todas as decodificações de UpdateFileNameRoot e UpdateFileNameAllocation para operações redo e undo.

LogFile_CompensationlogRecord.csv Todas as decodificações de CompensationlogRecord. Não relevante para nt5.x.

Ntfs.db Um ficheiro de base de dados sqlite com tabelas quase equivalentes aos csv's acima. A base de dados contém 5 tabelas: DataRuns IndexEntries LogFile LogFileTmp (tabela temporária usada ao recriar dataruns). UsnJrnl

Baixar ferramenta