Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
memory-forensic — Parcourez n'importe quel dump mémoire. Trouvez ce qui est caché. Forensique du noyau Linux + Windows à partir d'un seul binaire Rust statique — aucun Python requis. | Kitploit
Outils/GitHubGitHub/securityronin/memory-forensic
Gestion des Indicateurs de Compromission (IOC)Criminalistique MémoireCriminalistique RéseauRécupération de DonnéesAnalyse de MalwareCriminalistique NumériqueAnalyse de BinairesRenseignement sur les MenacesRéponse aux IncidentsÉvasion de Conteneur
GitHub
12131il y a 1 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
securityronin/memory-forensic

memory-forensic

Parcourez n'importe quel dump mémoire. Trouvez ce qui est caché. Forensique du noyau Linux + Windows à partir d'un seul binaire Rust statique — aucun Python requis.

Voir le dépôtSite web
Partager

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

memory-forensic

Une boîte à outils de forensique mémoire qui profile elle-même les noyaux Windows — et qui est recoupée, processus par processus, avec Volatility 3.

mem4n6 lit tous les formats de dump courants (LiME, AVML, core ELF, crash dumps Windows, fichiers d'hibernation, save-states VMware, kdump, raw…) et parcourt les processus, threads, modules, connexions réseau et mémoire injectée — depuis un seul binaire statique que vous compilez une fois et copiez n'importe où, avec pas de Python, pas d'environnement d'exécution, pas de catalogue de symboles pré-étagé. Sur Windows, il construit son propre profil : il localise ntoskrnl en mémoire physique, lit son GUID PDB depuis l'enregistrement CodeView, résout le ISF Volatility-3 correspondant, retrouve la base du noyau sous le KASLR moderne, et reconstruit PsActiveProcessHead à partir de la table des symboles — la même chaîne d'auto-profiling que Volatility 3 et MemProcFS utilisent, réimplémentée en Rust.

Parce que le niveau d'exigence pour un outil de preuve est la justesse, le parcours des processus est recoupé avec une implémentation de référence indépendante — Volatility 3 — sur une image Windows 10 réelle de 2 Go (un accord de référence est une preuve solide, pas une démonstration ; les octets bruts sont la vérité de terrain) :

windows.pslist sur DESKTOP-SDN1RPT.memmem4n6 vs Volatility 3
Processus correspondants94 / 94 PID partagés — PID, PPID, nom, heure de création exacts
Manqués (vol3 trouvés, pas mem4n6)0
Faux positifs (mem4n6 trouvés, pas vol3)0

mem4n6 correspond exactement à Volatility 3 — y compris la récupération de 11 processus orphelins dus à un étalement d'acquisition à chaud, via un parcours bidirectionnel de ActiveProcessLinks. Un second oracle indépendant (MemProcFS) confirme un sous-ensemble propre — son process_list de 77 processus est entièrement contenu dans l'ensemble de mem4n6, avec zéro processus exclusif à MemProcFS (détails). Voir docs/validation.md pour le différentiel complet et les étapes de reproduction.

Démarrage rapide

Installez avec cargo install mem4n6, ou récupérez un binaire statique précompilé depuis la dernière version — les builds Linux sont en statique-PIE (musl : copie n'importe où, pas de glibc), avec macOS, Windows, et un checksums.txt SHA-256 à côté.

Ou compilez depuis les sources (~une commande) :```bash git clone https://github.com/SecurityRonin/memory-forensic.git cd memory-forensic && cargo build --release ./target/release/mem4n6 --help

Cette build de développement lie libc dynamiquement ; pour reproduire localement le binaire entièrement statique de la release, ajoutez la cible 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

Les fichiers de symboles sont au format JSON ISF — les mêmes packs qu'utilise Volatility 3, donc un cache de symboles existant fonctionne tel quel.


Pourquoi mem4n6

mem4n6Volatility 3MemProcFSMemNixFS
DéploiementRust · binaire statique uniquePython · interpréteur + dépendancesC(+Rust) · bibliothèquesC++ · montage de système de fichiers
Auto-profilage Windows (scan → GUID PDB → symboles)✅✅✅n/a — dumps Linux
DTB sans en-tête via le boot low stub + base du noyau à granularité de page✅PML4 auto-référencé + analyse d'image✅ low stubn/a — Linux
Mode symboles hors ligne / air-gapped✅ --offlinepack ISF ou réseausymboles / réseau✅ BTF-from-dump
Sans panique sur les dumps non fiables (unsafe interdit; unwrap/expect interdits sur les chemins de parsing)✅——— (C++)
Recoupé avec Volatility 3✅ (docs/validation.md)— (la référence)——

mem4n6 est, à notre connaissance, la seule implémentation Rust de la chaîne complète dump → scan du noyau → PDB-GUID → résolution de symboles → DTB. La lignée technique — le serveur de symboles de WinDbg, pdbparse de Brendan Dolan-Gavitt, Rekall, Volatility 3, et MemProcFS d'Ulf Frisk — est bien établie ; mem4n6 la réimplémente en clean-room et valide le résultat par rapport à la référence. MemNixFS apporte cette même idée de mémoire comme système de fichiers aux dumps Linux — montage et parcours, avec des symboles dérivés du BTF propre au noyau lorsqu'aucun ISF n'existe ; les cellules n/a ci-dessus marquent une différence de périmètre (images Linux et une UX de système de fichiers, contre le walker CLI de mem4n6 validé sous Windows), pas une lacune. Le point d'ancrage boot low-stub / PROCESSOR_START_BLOCK s'appuie sur le Getting Physical d'Alex Ionescu à la REcon 2017.


Installation```bash

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

---

## Référence rapide```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
Télécharger l’outil