ETK-2026-3589Zero's internal tracking ID, independent of the CVE number.
waiting for further signalsZero needs more public information before it can validate it.description
HarnessRouter Docker images before 0.37.16 can retain an earlier public DNS result for a hostname, allowing later browser requests to be redirected to private or local services. An attacker needs control of a hostname's DNS responses and a browser session permitted to visit that hostname. Vendor-hosted browser sessions may still be exposed to split DNS resolution unless hostname access is restricted.
mitigation
Upgrade the HarnessRouter Docker image to 0.37.16 or later. For vendor-hosted browser sessions, require a non-empty allow list of permitted hosts and enforce network egress controls where available.
fixed in 0.37.16
outcome
No artifact: an exploit or check was attempted but could not be produced at this moment.
source signals
Public signals that triggered or updated the pipeline. These are inputs for the deltas above.
- 2026-11-04 02:32Zghsa: trigger signal, started the run
this entry in the feed
GET /api/v1/feed/ETK-2026-3589
{ "etk_id": "ETK-2026-3589", "cve_id": null, "display_id": "ETK-2026-3589", "ghsa_id": "GHSA-3vf8-jg4r-xgcx", "euvd_id": null, "status": "published", "anchor_state": "awaiting_cve", "title": "DNS rebinding in harnessrouter browser host validation", "summary": "HarnessRouter Docker images before 0.37.16 can retain an earlier public DNS result for a hostname, allowing later browser requests to be redirected to private or local services. An attacker needs control of a hostname's DNS responses and a browser session permitted to visit that hostname. Vendor-hosted browser sessions may still be exposed to split DNS resolution unless hostname access is restricted.", "mitigation": "Upgrade the HarnessRouter Docker image to 0.37.16 or later. For vendor-hosted browser sessions, require a non-empty allow list of permitted hosts and enforce network egress controls where available.", "vendor": "other", "product": "other:harnessrouter/harnessrouter (Docker image)", "affected": [ { "affected_notes": [], "affected_ranges": [ "< 0.37.16" ], "ecosystem": "other", "fixed_versions": [ "0.37.16" ], "package_name": "harnessrouter/harnessrouter (Docker image)", "purl": null } ], "cwes": null, "cvss_score": 7, "cvss_src": "ethiack_provisional", "cvss_vector": null, "epss_score": null, "epss_percentile": null, "epss_asof": null, "automation": "deterministic", "check": false, "check_confidence_basis": null, "exploit": false, "pipeline_minutes": 17.800299366666668, "t0_at": null, "signals": { "trigger_signal": { "at": "2026-11-04T02:32:41+00:00", "days": -1.7920662284027777, "is_lower_bound": true, "measured_at": "2026-11-05T21:33:15.564673+00:00", "url": "https://github.com/HarnessRouter/harnessrouter/security/advisories/GHSA-3vf8-jg4r-xgcx" } } }
published 2026-11-05 05:53Z
last change 2026-11-05 21:08Z
Need the technical details behind an entry?
Every entry here shows what we attempted and when. The technical details, the generated exploit that fired it and the evidence behind the verdict are not public. Tell us about your use case and we’ll get back to you about extended API access.