Dredge
How It Works
⚠️ Authorized Testing Only
This tool interacts with live systems and must only be used for testing that has been explicitly authorized by the asset owner. Unauthorized use of this tool to probe, scan, exploit, or otherwise interact with systems you do not have written permission to test is illegal under computer fraud and abuse laws (CFAA, CMA, and international equivalents). pr0t31n does not condone or recommend any unauthorized use. Always obtain a signed Rules of Engagement (RoE) or Statement of Work (SoW) before beginning any assessment.
🛡️ Sensitive Data Handling
This tool collects, processes, or stores data that may include sensitive, personally identifiable, or client-proprietary information — even when sourced from public repositories or non-client-controlled systems. Handle all collected data in accordance with your engagement’s data handling agreement, applicable privacy regulations (GDPR, CCPA, HIPAA), and your organization’s data classification policy. Store findings in encrypted, access-controlled locations and destroy data per the agreed retention schedule.
Dredge is a Windows endpoint security auditor that operates as an analysis engine. It consumes a JSON collection file produced by a separate collector agent deployed on the target Windows endpoint. The collector gathers system state data (registry keys, running processes, installed software, user accounts, group policies, event logs, certificates, network configuration, etc.) and exports it as a structured JSON document. Dredge then analyses this collection offline without requiring direct access to the target system.
The analysis pipeline routes the collection data through 18 specialised analysers, each targeting a distinct security domain: System configuration, OS Hardening, Network settings, User accounts, Active Directory, Running processes, Browser security, Remote management (RDP/WinRM/PSRemoting), Server software, Windows Event Logs, Installed software, Certificates, Compliance baselines (CIS/STIG), Credential exposure, Privilege escalation vectors, Persistence mechanisms, AD Certificate Services (ADCS), Disk/storage encryption, and Hardware inventory.
After the analyser pass, Dredge runs a threat intelligence enrichment step that cross-references findings against static threat indicator lists and optionally queries external threat intelligence APIs. Findings are emitted in the universal pr0t31n schema. When run under Crucible (CRUCIBLE_MANAGED=1), Dredge emits structured protocol tokens for real-time progress and finding delivery. An optional intel_writer module produces supplemental intelligence files, and a cmd_assembler module can generate remediation command scripts.
Phase Pipeline
- Phase 1 — Configuration Loading
- Phase 2 — Analyzer Execution
- Phase 3 — Correlation
- Phase 4 — Report Generation
Security
CLI tool. WinRM credentials used for remote collection. Processes data locally. Threat intelligence API keys (VirusTotal, AbuseIPDB) stored in settings.
Features
Analysers
Analysis
Architecture
Collection
Integration
Intelligence
Output
Security
Use Cases
Windows Endpoint Security Assessment
Comprehensive security audit of a Windows workstation or server as part of a penetration test or security review, covering hardening, credentials, privilege escalation, and persistence.
Active Directory Security Review
Evaluate domain-joined endpoints for AD-specific risks: ADCS ESC vulnerabilities, Kerberoastable accounts, credential exposure, and group policy weaknesses.
Compliance Baseline Verification
Assess Windows endpoints against CIS Benchmarks or DISA STIG baselines, producing a gap report of non-compliant settings with specific remediation guidance.
Incident Response Triage
Analyse a collection from a potentially compromised endpoint for indicators of persistence (registry run keys, scheduled tasks, WMI subscriptions) and credential exposure.
Medical Device Windows Host Assessment
Audit the Windows host component of medical device systems for security hardening, patch level, and compliance with healthcare security requirements.
CLI Reference
Command Examples
Analyze Collection
Analyze pre-collected Windows host data.
WinRM Collection + Analysis
Collect data via WinRM and analyze.
Parse Seatbelt
Parse and analyze Seatbelt output.
Parse BloodHound
Analyze BloodHound data exports.
Finding Nomenclature
Dredge findings are prefixed by analyser domain. Each finding includes the specific Windows configuration or artefact that triggered the detection, the relevant registry key or file path where applicable, and risk-rated remediation guidance. Findings map to compliance frameworks (CIS, STIG, NIST 800-53) where applicable. The tool also produces supplemental intelligence files via the intel_writer module and can generate remediation command scripts via cmd_assembler.
Action Items
Dredge generates action items for privilege escalation and persistence findings — e.g., "Test AlwaysInstallElevated for MSI privilege escalation", "Investigate unquoted service path for service X", "Check if ADCS template allows domain user enrollment with SAN".
Output Files
| File | Format | Description |
|---|---|---|
meta.json |
JSON | Tool identity and engagement metadata |
findings.json |
JSON | Universal findings array v1.1 |
findings.csv |
CSV | CSV mirror of findings |
summary.json |
JSON | Aggregated statistics |
scan.log |
TXT | Human-readable timestamped log |
scan.log.json |
JSONL | Machine-readable JSON log events |
errors.log |
TXT | ERROR-level entries only |
Invocation Methods
| Method | Usage |
|---|---|
| CLI — Direct |
cd /opt/pr0t31n/Dredge && python3 dredge.py [OPTIONS]
Run directly with command-line arguments. |
Integration
Used By
- Crucible (manages)
- Prometheus (reports)
Third-Party Dependencies & Credits
| Tool / Library | Developer | Type | Link |
|---|---|---|---|
| pywinrm | diyan / Ansible community | python | https://github.com/diyan/pywinrm |
| PowerShell | Microsoft | system | https://github.com/PowerShell/PowerShell |
Metadata
| Name | Dredge |
| Category | Analysis |
| Version | 1.8.1 |
| Install Path | /opt/pr0t31n/Dredge |
| Main File | dredge.py |
| GitHub | https://github.com/pr0t31n/Dredge.git |