• v3.3.85 70e7f2a9fd

    Administrator released this 2026-06-19 18:45:22 +02:00 | 62 commits to master since this release

    Diagnostics hardening (follow-up to v3.3.84)

    Security hardening for the opt-in read-only diagnostics agent, surfaced by intensive end-to-end testing: a live gateway<->agent integration harness driving all tools, an adversarial redaction/abuse probe, and an independent security audit.

    • Fixed a denial-of-service: the diagnostic log "grep" was compiled into a regular expression and run synchronously in the app's main process, so a catastrophic pattern could freeze the whole app. grep is now a case-insensitive substring filter with "|" alternation (e.g. "error|timeout|502") — provably linear-time, no regex backtracking.
    • Closed a whitelist-integrity gap where inherited object methods (constructor/toString/...) could pass the read-only op guard and return ok. The op lookup is now own-property + string checked.
    • Strengthened secret redaction (defense in depth): basic-auth URL passwords (scheme://user:pass@host), "Authorization: Basic", JWTs, and bare/JSON session values are now scrubbed, on top of the existing API-key / token / cookie / webhook coverage.

    The agent stays opt-in and off by default, read-only, and loopback-bound (reached via an SSH/WireGuard tunnel, which is the confidentiality layer). No other behavior changes.

    Downloads