CVE-2026-70666 json
Lemur: Server-Side Request Forgery via the ACME client following server-controlled URLs
published 2026-08-18 2 mo ago modified 2026-10-22 17 d ago also GHSA-xpmj-wjcp-6pww , PYSEC-2026-3680 , EUVD-2026-61155
- cvss
- 7.4
- 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 12%
- public exploits
- 0
- none known
Summary
Lemur manages TLS certificate creation. Prior to 1.9.3, an authority-role member could update acme_url through PUT /api/1/authorities/ without revalidation and direct setup_acme_client_no_retry to an attacker-controlled ACME server. ACME directory and order responses contain newNonce, newOrder, authorizations, and finalize URLs chosen by that server. The Lemur ClientV2 followed those URLs without requiring their host to match the configured directory host, allowing JWS-signed requests to internal services or cloud metadata endpoints. The issue required an ACME authority and a user authorized for that authority, but did not require global administrator privileges. The fix revalidates updates and introduces _PinnedClientNetwork to enforce a single allowed host for the complete ACME flow. This issue is fixed in version 1.9.3.
Patch / fix
- pypi lemur 1.9.3
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 2 mo ago
Exploit prediction
0.22% chance of exploitation in the next 30 days, higher than 12% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.4 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:L |
| OSV | 3.1 | 7.4 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:L |
| GitHub | 3.1 | 7.4 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/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
- Weakness
-
- CWE-918 Server-Side Request Forgery
References
-
github.com
/Netflix/lemur/commit/6dcb19b6d6004e97796d6a0344b130b2ba57f050
web
-
github.com
/Netflix/lemur/security/advisories/GHSA-xpmj-wjcp-6pww
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-xpmj-wjcp-6pww
advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-70666
advisory
Sources
- CVE List CVE-2026-70666
- GitHub Advisory GHSA-xpmj-wjcp-6pww
- NVD CVE-2026-70666
- OSV PYSEC-2026-3680
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.