ESC

Output

Plain Text

Default output format. Timestamped log lines (INF/WRN/ERR) report progress, and each finding is printed as a detail block.

smugglex https://target.com
09:15AM WRN smuggling found 1 vulnerability(ies)

=== CL.TE Vulnerability Details ===
Status: VULNERABLE (Confidence: High)
Payload Index: 3
Attack Response: 200
Timing: Normal: 45ms, Attack: 5023ms
Signals: timing-anomaly
HTTP Raw Request:
────────────────────────────────────────────────────────────
POST / HTTP/1.1
...
────────────────────────────────────────────────────────────

When nothing is found, smugglex logs smuggling found 0 vulnerabilities.

JSON (Machine Readable)

Use -f json or --json for clean, structured output suitable for AI agents, scripts, jq, and CI systems.

smugglex --json https://target.com
# or the equivalent:
smugglex -f json https://target.com

Key properties for automation:

  • Stdout is pure JSON — no progress bars, no log lines.
  • Exit code indicates findings: 0 = clean, 1 = vulnerable found, 2 = input/usage error.
  • JSON mode always emits a batch envelope with results[] + summary, even for a single target.
{
  "smugglex_version": "0.3.0",
  "timestamp": "...",
  "results": [
    { "target": "...", "checks": [...] },
    { "target": "...", "checks": [], "error": "URL parse error: ..." },
    ...
  ],
  "summary": {
    "total_targets": 12,
    "vulnerable_targets": 3,
    "total_checks": 84,
    "vulnerable_checks": 5
  }
}

Write to file while keeping stdout clean:

smugglex --json -o report.json https://target.com

Export Payloads

Save vulnerable payloads as raw HTTP requests for manual verification.

smugglex --export-payloads ./payloads https://target.com

Creates files named <proto>_<host>_<check>_<index>.txt — for example payloads/https_target_com_cl-te_3.txt — each containing the raw HTTP request.