
Abhängigkeitsfreie, sekundenschnelle Windows-Live-DFIR-Triage-Engine (Digital Forensics & Incident Response) für USB-Responder.
Abhängigkeitsfreie, subsekundenschnelle Live-DFIR-Triage-Engine (Digitale Forensik und Incident Response) für Windows, entwickelt für schnelle USB-Responder.
Bei der Live-Incident-Response sind Zeit und Tarnung alles. Traditionelle Triage-Skripte leiden unter kritischen Schwachstellen:
History-Datenbanken über Windows-Dateifreigabe-Handles (dwShareMode), wodurch Standard-Collector abstürzen oder fehlschlagen, es sei denn, der Browser wird gewaltsam beendet (wodurch flüchtige Speicherbeweise zerstört werden).OmniTriage löst dies sauber: von Grund auf in 100 % reiner Python-Standardbibliothek entwickelt (winreg, sqlite3, ctypes, subprocess, hashlib, struct). Kein pip install, keine externen Binärdateien, null Festplattengeräusche, Ausführung in unter 1 Sekunde und Erstellung eines interaktiven, eigenständigen Dark-Mode-HTML-Berichts neben strukturiertem JSON.
ConsoleHost_history.txt) mit heuristischer Schlüsselwortmarkierung (IEX, DownloadString, mimikatz, bypass, vssadmin).Win+R-Dialogs).%TEMP%, %APPDATA% und %LOCALAPPDATA% nach verdächtigen Binärdateien (.exe, .dll, .bat, .ps1, .vbs, .js, .scr)..lnk-Verknüpfungsaktivität.USBSTOR).HKCU- und HKLM-Run- und RunOnce-Autostart-Schlüssel.Startup-Verzeichnisse.ipconfig /displaydns), um aktive Command-&-Control-Infrastruktur zu erkennen (z. B. ngrok, duckdns, pastebin, discord webhooks).fDenyTSConnections) und Terminaldienste-Anmeldesitzungen (Event ID 21/24/25).IEX, DownloadString, mimikatz, encodedcommand).10ts-Struktur) direkt aus der Windows-Registry. Deckt historische Pfade gelöschter Malware-ausführbarer Dateien auf!schtasks), um verdächtige automatisierte Auslöser zu erkennen, die aus %TEMP%, %APPDATA% oder Users\Public heraus ausgeführt werden.Triage_<HOST>_<TIMESTAMP>.html) ohne CDN-Abhängigkeiten (vollständig offline nutzbar).Triage_<HOST>_<TIMESTAMP>.json), bereit für SIEM-Ingestion (Splunk, Elastic, Sentinel).| MITRE ATT&CK ID | Taktik | Technik | OmniTriage-Collector |
|---|---|---|---|
| T1059.001 | Ausführung | PowerShell-Befehlshistorie & ScriptBlocks | execution.py, remote_exec.py |
| T1021 | Laterale Bewegung | Remote-Dienste (RDP, WinRM) | collectors/remote_exec.py |
| T1071.004 | Command & Control | DNS-Domainauflösungen | collectors/dns_cache.py |
| T1204 | Ausführung | Benutzerausführung (RunMRU / UserAssist / ShimCache) | execution.py, shimcache.py |
| T1053.005 | Persistenz | Persistenz geplanter Aufgaben | collectors/tasks.py |
| T1070 | Anti-Forensik | Entfernung von Indikatoren auf dem Host (Protokolllöschung) | collectors/event_logs.py |
| T1543.003 | Persistenz | Erstellung von Windows-Diensten (Event 7045) | collectors/event_logs.py |
| T1036 | Verteidigungsumgehung | Maskerade in %TEMP% / %APPDATA% | collectors/filesystem.py |
| T1547.001 | Persistenz | Registry-Run-Schlüssel / Startup-Ordner | collectors/persistence.py |
| T1082 | Entdeckung | Systeminformationen & InstallDate | collectors/sysinfo.py |
| T1049 | Entdeckung | Systemnetzwerkverbindungen & WLAN | collectors/network.py |
| T1005 | Sammlung | Browserdaten & Download-Protokolle | collectors/browser.py |
| T1005 | Sammlung | Browserdaten & Download-Protokolle | 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
Kopieren Sie den Ordner OmniTriage auf ein Incident-Response-USB-Laufwerk. Wenn es an einen Zielrechner angeschlossen wird, führen Sie aus:
run_usb_triage.bat
Oder direkt über die Kommandozeile:
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.
=================================================================
Diese Software wurde ausschließlich für autorisierte digitale Forensik, Incident Response, Systemauditierung und Bildungsforschung entwickelt. Holen Sie stets eine ordnungsgemäße Autorisierung und Zustimmung ein, bevor Sie Artefakte auf einem Computersystem erfassen.
Dieses Projekt ist unter der MIT-Lizenz lizenziert – verfasst von Çınar (@prox0959).