CVE-2026-70667 json
Lemur: SSRF protection in certificate revocation checking bypassable via HTTP redirects and DNS rebinding (incomplete fix for CVE-2026-55162)
published 2026-08-18 2 mo ago modified 2026-10-22 17 d ago also GHSA-f3qq-49m6-rw8f , PYSEC-2026-3676 , EUVD-2026-61151
- cvss
- 6.3
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 7%
- public exploits
- 0
- none known
Summary
Lemur manages TLS certificate creation. Prior to 1.9.3, _validate_revocation_url in lemur/certificates/verify.py checked the original CRL or OCSP URL but the later request could reach a different destination. The CRL requests.get call followed HTTP redirects without validating each Location target, so a public attacker-controlled URL could redirect to loopback, RFC1918, link-local, or instance-metadata addresses. Validation and connection also performed separate DNS resolutions, creating a time-of-check time-of-use window for DNS rebinding on both CRL and OCSP paths. An operator uploading a certificate through POST /api/1/certificates/upload could therefore induce blind internal requests despite the earlier mitigation. The fix disables redirects and pins validated addresses while preserving the correct Host value. This issue is fixed in version 1.9.3.
Patch / fix
- pypi lemur 1.9.3
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 2 mo ago
Exploit prediction
0.18% chance of exploitation in the next 30 days, higher than 7% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/Netflix/lemur/security/advisories/GHSA-54vg-pfh7-jq95 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 6.3 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L |
| OSV | 3.1 | 6.3 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L |
| GitHub | 3.1 | 6.3 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | lemur | <1.9.3 |
1.9.3 |
Affected products
- Netflix lemur
Classification
References
-
github.com
/Netflix/lemur/commit/ed504a830f38a83825b1570302e9f38d6553938a
web
-
github.com
/Netflix/lemur/security/advisories/GHSA-54vg-pfh7-jq95
exploit
-
github.com
/Netflix/lemur/security/advisories/GHSA-f3qq-49m6-rw8f
web
-
github.com
/Netflix/lemur/releases/tag/v1.9.3
web
-
github.com
/Netflix/lemur
package
-
pypi.org
/project/lemur
package
-
github.com
/advisories/GHSA-f3qq-49m6-rw8f
advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-70667
advisory
Sources
- CVE List CVE-2026-70667
- GitHub Advisory GHSA-f3qq-49m6-rw8f
- NVD CVE-2026-70667
- OSV PYSEC-2026-3676
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.