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
memory-forensic — Percorra qualquer dump de memória. Encontre o que está oculto. Forense de kernel Linux + Windows a partir de um único binário Rust estático — sem necessidade de Python. | Kitploit
Ferramentas/GitHubGitHub/securityronin/memory-forensic
Gerenciamento de Indicadores de Comprometimento (IOC)Forensia de MemóriaForensia de RedeRecuperação de DadosAnálise de MalwareForensia DigitalAnálise de BináriosInteligência de AmeaçasResposta a Incidentes

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 →
Escape de Contêiner
GitHubsecurityronin/memory-forensic

memory-forensic

Percorra qualquer dump de memória. Encontre o que está oculto. Forense de kernel Linux + Windows a partir de um único binário Rust estático — sem necessidade de Python.

Ver RepositórioSite
12131há 1 mêsAinda não revisado
Compartilhar

License: Apache-2.0 CI Rust 1.75+ Platform unsafe: bounded Sponsor

memory-forensic

Um kit de ferramentas de forense de memória que cria perfis dos kernels do Windows por conta própria — e é verificado de forma cruzada, processo a processo, contra o Volatility 3.

mem4n6 lê todos os formatos de dump comuns (LiME, AVML, ELF core, dumps de crash do Windows, arquivos de hibernação, save-states do VMware, kdump, raw…) e percorre processos, threads, módulos, conexões de rede e memória injetada — a partir de um único binário estático que você compila uma vez e copia para qualquer lugar, com sem Python, sem runtime, sem catálogo de símbolos pré-carregado. No Windows, ele cria seu próprio perfil: localiza ntoskrnl na memória física, lê seu GUID PDB do registro CodeView, resolve o ISF correspondente do Volatility 3, recupera a base do kernel sob o KASLR moderno e reconstrói PsActiveProcessHead a partir da tabela de símbolos — a mesma cadeia de autoperfilamento usada pelo Volatility 3 e MemProcFS, reimplementada em Rust.

Como o padrão para uma ferramenta de evidência é a correção, o percorredor de processos é verificado de forma cruzada contra uma implementação de referência independente — Volatility 3 — em uma imagem real de 2 GB do Windows 10 (uma referência que concorda é uma forte evidência, não uma prova; os bytes brutos são a fonte da verdade):

windows.pslist em DESKTOP-SDN1RPT.memmem4n6 vs Volatility 3
Processos coincidentes94 / 94 PIDs compartilhados — PID, PPID, nome e hora de criação exatos
Perdidos (vol3 encontrou, mem4n6 não)0
Falsos positivos (mem4n6 encontrou, vol3 não)0

mem4n6 corresponde exatamente ao Volatility 3 — incluindo a recuperação de 11 processos órfãos causados por um smear de aquisição ao vivo por meio de uma varredura bidirecional de ActiveProcessLinks. Um segundo oráculo independente (MemProcFS) confirma um subconjunto limpo — sua process_list de 77 processos está totalmente contida no conjunto do mem4n6, com zero processos exclusivos do MemProcFS (detalhes). Consulte docs/validation.md para a análise diferencial completa e as etapas de reprodução.

Início rápido

Instale com cargo install mem4n6 ou baixe um binário estático pré-compilado na última versão — as compilações Linux são static-PIE (musl: copie para qualquer lugar, sem glibc), acompanhadas de macOS, Windows e um checksums.txt SHA-256.

Ou compile a partir do código-fonte (aproximadamente um comando):```bash git clone https://github.com/SecurityRonin/memory-forensic.git cd memory-forensic && cargo build --release ./target/release/mem4n6 --help

Essa compilação de desenvolvimento vincula a libc dinamicamente; para reproduzir localmente o binário totalmente estático da release, adicione o alvo musl: `rustup target add x86_64-unknown-linux-musl && cargo build --release --target x86_64-unknown-linux-musl`.```bash
# Inspect any dump — format, ranges, embedded metadata (no symbols needed)
mem4n6 info win10.mem

# Windows process tree. The ISF is resolved from the kernel's own PDB GUID;
# raw .mem dumps take the page-table base via --cr3 (crash dumps carry their own).
mem4n6 ps --symbols ntkrnlmp.json --cr3 0x1ad000 --tree win10.mem

# Linux process tree from a LiME capture
mem4n6 ps --symbols linux.json --tree memdump.lime

# Air-gapped lab? Never touch the network for symbols:
mem4n6 ps --symbols ntkrnlmp.json --offline win10.mem

Symbol files are ISF JSON — os mesmos pacotes que o Volatility 3 usa, portanto um cache de símbolos existente funciona como está.


Por que mem4n6

mem4n6Volatility 3MemProcFSMemNixFS
DeployRust · binário estático únicoPython · interpretador + dependênciasC(+Rust) · bibliotecasC++ · mount de filesystem
Auto-perfilamento do Windows (scan → PDB GUID → symbols)✅✅✅n/a — dumps Linux
DTB sem cabeçalho via boot low stub + base de kernel em granularidade de página✅self-ref PML4 + varredura de imagem✅ low stubn/a — Linux
Modo de símbolos offline / air-gapped✅ --offlinepacote ISF ou redesymbols / rede✅ BTF do dump
Sem panics em dumps não confiáveis (negação de unsafe; unwrap/expect negados nos caminhos de parsing)✅——— (C++)
Verificação cruzada contra o Volatility 3✅ (docs/validation.md)— (a referência)——

mem4n6 é, tanto quanto sabemos, a única implementação em Rust de toda a cadeia dump → kernel-scan → PDB-GUID → symbol-resolution → DTB. A linhagem da técnica — o servidor de símbolos do WinDbg, o pdbparse de Brendan Dolan-Gavitt, Rekall, Volatility 3 e o MemProcFS de Ulf Frisk — é bem estabelecida; o mem4n6 a reimplementa em clean-room e valida o resultado contra a referência. MemNixFS traz a mesma ideia de memória-como-filesystem para dumps Linux — montar-e-navegar, com símbolos derivados do próprio BTF do kernel quando não existe ISF; as células n/a acima marcam uma diferença de escopo (imagens Linux e uma UX de filesystem, vs o walker de CLI validado para Windows do mem4n6), não uma lacuna. A âncora boot low-stub / PROCESSOR_START_BLOCK segue o Getting Physical de Alex Ionescu na REcon 2017.


Instalação```bash

git clone https://github.com/SecurityRonin/memory-forensic.git cd memory-forensic cargo build --release ./target/release/mem4n6 --help

---

## Referência Rápida```bash
# Show dump format and physical memory ranges
mem4n6 info memdump.dmp

# Process tree with threads and DLLs
mem4n6 ps --symbols ntkrnlmp.json --tree --threads --dlls memdump.dmp

# Network connections (json / csv / table)
mem4n6 net --symbols ntkrnlmp.json --output json memdump.dmp

# Kernel integrity checks (SSDT, IDT, callbacks, hooks)
mem4n6 check --symbols ntkrnlmp.json --ssdt --callbacks memdump.dmp

# Linux syscall hook and malfind scan
mem4n6 check --symbols linux.json --hooks --malfind memdump.lime

# String extraction with YARA rules
mem4n6 strings --rules ./yara-rules/ --min-length 8 memdump.dmp

# Hash lookup against NSRL (known-good) and MalwareBazaar (known-bad)
mem4n6 hash --lookup memdump.dmp

# Extract framebuffer screenshot from live memory dump
mem4n6 framebuf --symbols linux.json --png screen.png memdump.dmp

# Recover files from tmpfs mounts + detect memfd fileless ELF execution
mem4n6 check --symbols linux.json --tmpfs-recovery --memfd memdump.lime

# Detect EDR bypass: direct syscalls, ETW patching, AMSI/DSE bypass
mem4n6 check --symbols ntkrnlmp.json --direct-syscalls --etw-patch --amsi-bypass memdump.dmp

# Novel kernel interface abuse: io_uring, netfilter hooks, perf_event
mem4n6 check --symbols linux.json --io-uring --netfilter --perf-event memdump.lime
Baixar ferramenta