ETK-2026-2735Zero's internal tracking ID, independent of the CVE number.
waiting for further signalsZero needs more public information before it can validate it.description
auth-framework versions 0.5.0-rc1 through 0.5.0-rc65 and 0.6.0-rc41 through 0.6.0-rc45 mishandle confidential-client authentication during OAuth2 authorization-code exchange. An attacker with a valid authorization code and the target client ID may obtain tokens without knowing that client's registered secret.
mitigation
Upgrade auth-framework to 0.5.0-rc71 or 0.6.0-rc46 or later. Require PKCE for all clients until upgrades are complete to reduce exposure from intercepted authorization codes.
fixed in 0.5.0-rc71, 0.6.0-rc46
outcome
Contextual, not validated: no deterministic check could cover this one, and no technique passed our review.
source signals
Public signals that triggered or updated the pipeline. These are inputs for the deltas above.
- 2026-10-27 07:31Zghsa: trigger signal, started the run
this entry in the feed
GET /api/v1/feed/ETK-2026-2735
{ "etk_id": "ETK-2026-2735", "cve_id": null, "display_id": "ETK-2026-2735", "ghsa_id": "GHSA-35m9-986f-rhmh", "euvd_id": null, "status": "published", "anchor_state": "awaiting_cve", "title": "OAuth2 client-secret validation bypass in auth-framework", "summary": "auth-framework versions 0.5.0-rc1 through 0.5.0-rc65 and 0.6.0-rc41 through 0.6.0-rc45 mishandle confidential-client authentication during OAuth2 authorization-code exchange. An attacker with a valid authorization code and the target client ID may obtain tokens without knowing that client's registered secret.", "mitigation": "Upgrade auth-framework to 0.5.0-rc71 or 0.6.0-rc46 or later. Require PKCE for all clients until upgrades are complete to reduce exposure from intercepted authorization codes.", "vendor": "rust", "product": "rust:auth-framework", "affected": [ { "affected_notes": [], "affected_ranges": [ ">= 0.5.0-rc1, < 0.5.0-rc71" ], "ecosystem": "rust", "fixed_versions": [ "0.5.0-rc71" ], "package_name": "auth-framework", "purl": "pkg:cargo/auth-framework" }, { "affected_notes": [], "affected_ranges": [ ">= 0.6.0-rc41, <= 0.6.0-rc45" ], "ecosystem": "rust", "fixed_versions": [ "0.6.0-rc46" ], "package_name": "auth-framework", "purl": "pkg:cargo/auth-framework" } ], "cwes": [ 287 ], "cvss_score": 7.4, "cvss_src": "cna_vendor", "cvss_vector": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N", "epss_score": null, "epss_percentile": null, "epss_asof": null, "automation": "contextual", "check": false, "check_confidence_basis": null, "exploit": false, "pipeline_minutes": 15.965321033333334, "t0_at": null, "signals": { "trigger_signal": { "at": "2026-10-27T07:31:17+00:00", "days": -0.14661117540509258, "is_lower_bound": true, "measured_at": "2026-10-27T11:02:24.308094+00:00", "url": "https://github.com/ciresnave/auth-framework/security/advisories/GHSA-35m9-986f-rhmh" } } }
published 2026-10-27 07:36Z
last change 2026-10-27 11:00Z
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.