
Motore di triage DFIR (digital forensics & incident response) live per Windows, senza dipendenze e in meno di un secondo, per supporti USB.
Motore di triage DFIR (digital forensics and incident response) per Windows live, sub-secondo e a dipendenze zero, progettato per responder USB rapidi.
Durante una risposta a incidente live, tempo e stealth sono tutto. Gli script di triage tradizionali soffrono di vulnerabilità critiche:
History tramite handle di condivisione file di Windows (dwShareMode), causando il crash o il fallimento dei collector standard a meno che il browser non venga terminato forzatamente (distruggendo le prove in memoria volatile).OmniTriage risolve tutto questo in modo pulito: costruito da zero in 100% pura libreria standard Python (winreg, sqlite3, ctypes, subprocess, hashlib, struct). Nessun pip install, nessun binario esterno, zero rumore su disco, esecuzione in meno di 1 secondo e generazione di un report HTML interattivo standalone in dark-mode insieme a JSON strutturato.
ConsoleHost_history.txt) con flagging euristico di parole chiave (IEX, DownloadString, mimikatz, bypass, vssadmin).Win+R).%TEMP%, %APPDATA% e %LOCALAPPDATA% alla ricerca di binari sospetti (.exe, .dll, .bat, .ps1, .vbs, .js, .scr)..lnk recenti di Windows.USBSTOR).Run e RunOnce in HKCU e HKLM.Startup utente e di sistema.ipconfig /displaydns) per rilevare infrastrutture Command & Control attive (es. ngrok, duckdns, pastebin, discord webhooks).fDenyTSConnections) e le sessioni di logon Terminal Services (Event ID 21/24/25).IEX, DownloadString, mimikatz, encodedcommand).struttura 10ts) direttamente dal registro di Windows. Scopre percorsi storici di eseguibili malware cancellati!schtasks) per rilevare trigger automatici sospetti eseguiti da %TEMP%, %APPDATA% o Users\Public.Triage_<HOST>_<TIMESTAMP>.html) con zero dipendenze CDN (completamente offline).Triage_<HOST>_<TIMESTAMP>.json) pronto per l'ingestione SIEM (Splunk, Elastic, Sentinel).| MITRE ATT&CK ID | Tattica | Tecnica | Collector OmniTriage |
|---|---|---|---|
| T1059.001 | Execution | Cronologia comandi PowerShell e ScriptBlocks | execution.py, remote_exec.py |
| T1021 | Lateral Movement | Servizi remoti (RDP, WinRM) | collectors/remote_exec.py |
| T1071.004 | Command & Control | Risoluzioni di domini DNS | collectors/dns_cache.py |
| T1204 | Execution | Esecuzione utente (RunMRU / UserAssist / ShimCache) | execution.py, shimcache.py |
| T1053.005 | Persistence | Persistenza tramite Scheduled Task | collectors/tasks.py |
| T1070 | Anti-Forensics | Rimozione di indicatori sull'host (cancellazione log) | collectors/event_logs.py |
| T1543.003 | Persistence | Creazione di servizi Windows (Event 7045) | collectors/event_logs.py |
| T1036 | Defense Evasion | Masquerading in %TEMP% / %APPDATA% | collectors/filesystem.py |
| T1547.001 | Persistence | Chiavi Run del registro / cartella Startup | collectors/persistence.py |
| T1082 | Discovery | Informazioni di sistema e InstallDate | collectors/sysinfo.py |
| T1049 | Discovery | Connessioni di rete di sistema e Wi-Fi | collectors/network.py |
| T1005 | Collection | Dati del browser e log dei download | collectors/browser.py |
| T1005 | Collection | Dati del browser e log dei download | 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
Copia la cartella OmniTriage su una chiavetta USB per incident response. Una volta collegata alla macchina target, esegui:
run_usb_triage.bat
Oppure direttamente da riga di comando:
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.
=================================================================
Questo software è sviluppato esclusivamente per digital forensics autorizzate, incident response, auditing di sistema e ricerca educativa. Ottieni sempre autorizzazione e consenso adeguati prima di acquisire artefatti su qualsiasi sistema informatico.
Questo progetto è distribuito sotto la MIT License - autore Çınar (@prox0959).