Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/securityronin/memory-forensic
Gestión de Indicadores de Compromiso (IOC)Forensia de MemoriaForensia de RedRecuperación de DatosAnálisis de MalwareForensia DigitalAnálisis de BinariosInteligencia de AmenazasRespuesta a Incidentes

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Escape de Contenedores
GitHubsecurityronin/memory-forensic

memory-forensic

Recorre cualquier volcado de memoria. Encuentra lo que está oculto. Forensia del kernel de Linux + Windows desde un único binario Rust estático — no se requiere Python.

Ver RepositorioSitio web
12132hace 1 mesAún no revisado
Compartir

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

memory-forensic

Un kit de herramientas de análisis forense de memoria que perfila los kernels de Windows por sí mismo — y se contrasta proceso por proceso contra Volatility 3.

mem4n6 lee todos los formatos de volcado comunes (LiME, AVML, ELF core, volcados de Windows, archivos de hibernación, estados de guardado de VMware, kdump, raw…) y recorre procesos, hilos, módulos, conexiones de red y memoria inyectada — desde un único binario estático que compilas una vez y copias donde quieras, sin Python, sin runtime, sin catálogo de símbolos preparado de antemano. En Windows construye su propio perfil: localiza ntoskrnl en la memoria física, lee su GUID PDB del registro CodeView, resuelve el ISF correspondiente de Volatility 3, recupera la base del kernel bajo el KASLR moderno y reconstruye PsActiveProcessHead a partir de la tabla de símbolos — la misma cadena de autoperfilado que usan Volatility 3 y MemProcFS, reimplementada en Rust.

Dado que el listón para una herramienta de evidencia es la corrección, el enumerador de procesos se contrasta contra una implementación de referencia independiente — Volatility 3 — sobre una imagen real de Windows 10 de 2 GB (una referencia que coincide es una evidencia sólida, no una prueba; los bytes brutos son la verdad fundamental):

windows.pslist en DESKTOP-SDN1RPT.memmem4n6 vs Volatility 3
Procesos coincidentes94 / 94 PIDs compartidos: PID, PPID, nombre y tiempo de creación exactos
No detectados (vol3 los encontró, mem4n6 no)0
Falsos positivos (mem4n6 los encontró, vol3 no)0

mem4n6 coincide con Volatility 3 exactamente — incluida la recuperación de 11 procesos huérfanos por un smear de adquisición en vivo mediante un recorrido bidireccional de ActiveProcessLinks. Un segundo oráculo independiente (MemProcFS) confirma un subconjunto limpio — su process_list de 77 procesos está completamente contenido en el conjunto de mem4n6, con cero procesos exclusivos de MemProcFS (detalles). Consulta docs/validation.md para el diferencial completo y los pasos de reproducción.

Inicio rápido

Instala con cargo install mem4n6, o descarga un binario estático precompilado de la última versión — las compilaciones de Linux son static-PIE (musl: cópialo a cualquier lado, sin glibc), junto con macOS, Windows y un checksums.txt SHA-256.

O compílalo desde el código fuente (~un comando):```bash git clone https://github.com/SecurityRonin/memory-forensic.git cd memory-forensic && cargo build --release ./target/release/mem4n6 --help

Esa compilación de desarrollo enlaza libc dinámicamente; para reproducir localmente el binario totalmente estático del release, añade el objetivo 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 — los mismos paquetes que usa Volatility 3, por lo que una caché de símbolos existente funciona tal cual.


Por qué mem4n6

mem4n6Volatility 3MemProcFSMemNixFS
DespliegueRust · binario estático únicoPython · intérprete + dependenciasC(+Rust) · bibliotecasC++ · montaje de sistema de archivos
Autoperfilado de Windows (escaneo → GUID de PDB → símbolos)✅✅✅n/d — volcados de Linux
DTB sin cabecera mediante el stub bajo de arranque + base del kernel a nivel de página✅PML4 autorreferencial + escaneo de imagen✅ stub bajon/d — Linux
Modo de símbolos sin conexión / aislado✅ --offlinepaquete ISF o redsímbolos / red✅ BTF desde volcado
Sin pánicos en volcados no confiables (unsafe denegado; unwrap/expect denegados en rutas de análisis)✅——— (C++)
Verificado de forma cruzada con Volatility 3✅ (docs/validation.md)— (la referencia)——

mem4n6 es, hasta donde sabemos, la única implementación en Rust de la cadena completa volcado → escaneo del kernel → GUID de PDB → resolución de símbolos → DTB. El linaje de la técnica — el servidor de símbolos de WinDbg, pdbparse de Brendan Dolan-Gavitt, Rekall, Volatility 3 y MemProcFS de Ulf Frisk — está bien establecido; mem4n6 lo reimplementa en sala limpia y valida el resultado contra la referencia. MemNixFS lleva esa misma idea de memoria como sistema de archivos a los volcados de Linux — montar y explorar, con símbolos derivados del propio BTF del kernel cuando no existe ISF; las celdas n/a de arriba marcan una diferencia de alcance (imágenes Linux y una UX de sistema de archivos, frente al recorredor CLI validado para Windows de mem4n6), no una carencia. El anclaje del stub bajo de arranque / PROCESSOR_START_BLOCK sigue la conferencia Getting Physical de Alex Ionescu en REcon 2017.


Instalación```bash

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

---

## Referencia 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
Descargar herramienta