Moteur de triage DFIR (forensique numérique et réponse aux incidents) Windows en direct, sans dépendance et en moins d'une seconde, pour les intervenants USB.
Moteur de triage DFIR (forensique numérique et réponse aux incidents) Windows en direct, sans dépendances et en moins d'une seconde, conçu pour les intervenants USB rapides.
Lors d'une réponse à incident en direct, le temps et la discrétion sont primordiaux. Les scripts de triage traditionnels souffrent de vulnérabilités critiques :
History via des handles de partage de fichiers Windows (dwShareMode), provoquant le plantage ou l'échec des collecteurs standards à moins de terminer de force le navigateur (détruisant ainsi les preuves en mémoire volatile).OmniTriage résout ce problème proprement : construit de zéro en 100 % bibliothèque standard Python pure (winreg, sqlite3, ctypes, subprocess, hashlib, struct). Pas de pip install, pas de binaires externes, zéro bruit disque, exécution en moins d'une seconde et génération d'un rapport HTML interactif autonome en mode sombre accompagné d'un JSON structuré.
ConsoleHost_history.txt) avec signalement heuristique par mots-clés (IEX, DownloadString, mimikatz, bypass, vssadmin).Win+R).%TEMP%, %APPDATA% et %LOCALAPPDATA% à la recherche de binaires suspects (.exe, .dll, .bat, .ps1, .vbs, .js, .scr)..lnk récents de Windows.USBSTOR).Run et RunOnce de HKCU et HKLM.Startup utilisateur et système.ipconfig /displaydns) pour détecter une infrastructure de commande et contrôle active (par ex. ngrok, duckdns, pastebin, discord webhooks).fDenyTSConnections) et les sessions d'ouverture de session Terminal Services (Event ID 21/24/25).IEX, DownloadString, mimikatz, encodedcommand).structure 10ts) directement depuis le registre Windows. Révèle les chemins historiques d'exécutables malveillants supprimés !schtasks) pour détecter des déclencheurs automatisés suspects s'exécutant depuis %TEMP%, %APPDATA% ou Users\Public.Triage_<HOST>_<TIMESTAMP>.html) sans aucune dépendance CDN (entièrement utilisable hors ligne).Triage_<HOST>_<TIMESTAMP>.json) prêt pour l'ingestion SIEM (Splunk, Elastic, Sentinel).| MITRE ATT&CK ID | Tactic | Technique | OmniTriage Collector |
|---|---|---|---|
| T1059.001 | Execution | PowerShell Command History & ScriptBlocks | execution.py, remote_exec.py |
| T1021 | Lateral Movement | Remote Services (RDP, WinRM) | collectors/remote_exec.py |
| T1071.004 | Command & Control | DNS Domain Resolutions | collectors/dns_cache.py |
| T1204 | Execution | User Execution (RunMRU / UserAssist / ShimCache) | execution.py, shimcache.py |
| T1053.005 | Persistence | Scheduled Task Persistence | collectors/tasks.py |
| T1070 | Anti-Forensics | Indicator Removal on Host (Log Clearing) | collectors/event_logs.py |
| T1543.003 | Persistence | Windows Service Creation (Event 7045) | collectors/event_logs.py |
| T1036 | Defense Evasion | Masquerading in %TEMP% / %APPDATA% | collectors/filesystem.py |
| T1547.001 | Persistence | Registry Run Keys / Startup Folder | collectors/persistence.py |
| T1082 | Discovery | System Information & InstallDate | collectors/sysinfo.py |
| T1049 | Discovery | System Network Connections & Wi-Fi | collectors/network.py |
| T1005 | Collection | Browser Data & Download Logs | collectors/browser.py |
| T1005 | Collection | Browser Data & Download Logs | collectors/browser.py |
OmniTriage/
├── collectors/
│ ├── __init__.py
│ ├── sysinfo.py # OS build, InstallDate/Format date, Uptime (GetTickCount64), RAM
│ ├── execution.py # PowerShell history, RunMRU, UserAssist (ROT13), BAM
│ ├── browser.py # Chrome, Edge, Brave SQLite lock bypass & download records
│ ├── network.py # Wi-Fi SSIDs, USBSTOR device history, active TCP sockets
│ ├── filesystem.py # Executables/scripts in %TEMP%, SHA-256 hashing, Recent .lnk
│ └── persistence.py # Registry Run/RunOnce keys & Startup folder audit
├── reporters/
│ ├── __init__.py
│ ├── json_reporter.py # Normalized JSON serialization
│ └── html_reporter.py # Standalone dark-mode HTML dashboard
├── omnitriage.py # Main CLI orchestrator & banner
├── run_usb_triage.bat # One-click USB rapid response launcher
├── LICENSE # MIT License
└── README.md
git clone https://github.com/prox0959/OmniTriage.git
cd OmniTriage
python omnitriage.py
Copiez le dossier OmniTriage sur une clé USB de réponse à incident. Une fois branchée sur la machine cible, exécutez :
run_usb_triage.bat
Ou directement en ligne de commande :
python omnitriage.py --out D:\Evidence\Case_101
options:
-h, --help show this help message and exit
--out OUT, -o OUT Output directory for reports (default: triage_output)
--quick, -q Quick mode (skips deep file hashing)
--json-only Only produce JSON report
--html-only Only produce interactive HTML dashboard
--no-browser Skip browser history acquisition
--no-fs Skip staging directory filesystem scans
--lang {en,tr} Console output language (default: en)
____ _ _____ _
/ __ \____ ___ ____ (_)__ \_ __(_) __ _ __ _ ___
/ / / / __ `__ \/ __ \/ / / /\/ '__/ / _` |/ _` |/ _ \
/ /_/ / / / / / / / / / / / / | | / / (_| | (_| | __/
\____/_/ /_/ /_/_/ /_/_/ \/ |_|/_/ \__,_|\__, |\___|
|___/
[::] OmniTriage v1.0.0 | Pure Python DFIR Live Triage Engine
[::] Author: Çınar (prox0959) | Zero External Dependencies
[*] Starting live forensic acquisition on target system...
[*] Destination: C:\Forensics\Case_01
[*] Acquiring OS telemetry, InstallDate, and Uptime...
[+] Host: DESKTOP-IR01 | User: analyst
[+] OS: Windows 10 Home (Build: 26200.9457)
[+] Windows Format/Install Date: 2026-07-03 16:31:44
[+] System Uptime: 0d 6h 52m (Boot: 2026-09-24 17:29:51)
[*] Collecting program execution evidence (PowerShell, RunMRU, UserAssist)...
[+] PowerShell history: 89 commands (0 flagged)
[+] RunMRU (Win+R history): 2 items
[+] UserAssist GUI applications: 100 items decoded
[*] Bypassing SQLite locks & harvesting browser history...
[+] Browser activity: 300 URLs, 19 downloads acquired
[*] Harvesting Wi-Fi profiles, USB connection history, and active sockets...
[+] Wi-Fi & Network Profiles: 2 profiles discovered
[+] Historical USB storage devices: 3 drives logged
[+] Active TCP sockets: 139 connections
[*] Scanning staging directories (%TEMP%, %APPDATA%) for suspicious executables...
[+] Executables in %TEMP%: 40 found
[+] Recent shortcut items: 40 items
[*] Auditing autostart persistence mechanisms (Run/RunOnce, Startup)...
[+] Registry Run/RunOnce keys: 20 entries
[+] Startup folder items: 4 files
[*] Compiling forensic reports...
[+] JSON Report written: C:\Forensics\Case_01\Triage_DESKTOP-IR01_20260925_002236.json (193.21 KB)
[+] HTML Dashboard written: C:\Forensics\Case_01\Triage_DESKTOP-IR01_20260925_002236.html (88.56 KB)
=================================================================
[+] Forensic acquisition completed in 0.24 seconds.
=================================================================
Ce logiciel est développé strictement pour la forensique numérique autorisée, la réponse à incident, l'audit système et la recherche éducative. Obtenez toujours une autorisation et un consentement appropriés avant d'acquérir des artefacts sur tout système informatique.
Ce projet est sous licence MIT License - créé par Çınar (@prox0959).