Description
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.
Published: 2026-08-18
Score: 7.4 High
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

An attacker who possesses a user account with authority role can change the ACME server endpoint (acme_url) used by Lemur via the PUT /api/1/authorities/ endpoint. Because Lemur’s ACME client follows the URLs returned in the ACME directory, nonce, order, authorization, and finalization responses without checking that the host matches the originally configured directory host, an attacker‑controlled ACME server can instruct Lemur to send authenticated JWS requests to arbitrary internal services or cloud metadata endpoints. This Server‑Side Request Forgery can be used to exfiltrate data from internal systems or to trigger further internal attacks. The vulnerability does not grant global administrative rights; any role that can update an authority is sufficient.

Affected Systems

The issue affects all installations of Netflix Lemur earlier than version 1.9.3, specifically those that allow authority‑role members to edit the acme_url field. It impacts systems where the vulnerable API is exposed to legitimate users and where the ACME client is in use for certificate issuance. The vulnerability is fixed in Lemur v1.9.3 and later.

Risk and Exploitability

An attacker must first authenticate as a valid user with authority privileges, which may be achieved through credential compromise or phishing. Once authenticated, the attacker can issue a request to the PUT /api/1/authorities/ endpoint, set an attacker‑controlled ACME server, and then leverage the unvalidated redirects to force Lemur to contact internal hostnames. The CVSS score of 7.4 indicates a high impact risk. The EPSS score is not available, and the vulnerability is not listed in the CISA KEV catalog, but the lack of a known public exploit does not reduce the potential threat, particularly when the attacker has legitimate account access. The vulnerability can allow disclosure of sensitive internal data or serve as a pivot for further internal attacks.

Generated by OpenCVE AI on August 18, 2026 at 20:55 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Lemur to version 1.9.3 or later to enforce host validation for the ACME flow.
  • Revoke or remove the authority role from any users who do not strictly require ACME configuration capabilities.
  • Audit the current ACME authorities and consider disabling or temporarily suspending the set_acme_client_no_retry endpoint for non‑essential accounts.

Generated by OpenCVE AI on August 18, 2026 at 20:55 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-xpmj-wjcp-6pww Lemur: Server-Side Request Forgery via the ACME client following server-controlled URLs
History

Tue, 18 Aug 2026 21:00:00 +0000

Type Values Removed Values Added
First Time appeared Netflix
Netflix lemur
Vendors & Products Netflix
Netflix lemur

Tue, 18 Aug 2026 19:30:00 +0000

Type Values Removed Values Added
Description 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.
Title Lemur: Server-Side Request Forgery via the ACME client following server-controlled URLs
Weaknesses CWE-918
References
Metrics cvssV3_1

{'score': 7.4, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:L'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-18T19:05:26.621Z

Reserved: 2026-08-04T21:48:08.613Z

Link: CVE-2026-70666

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-18T20:17:23.237

Modified: 2026-08-18T20:17:23.237

Link: CVE-2026-70666

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-18T21:00:04Z

Weaknesses
  • CWE-918

    Server-Side Request Forgery (SSRF)