CVE-2025-54799

unknown
Published 2025-08-06 Β· Modified 2026-02-04
CVSS v3
β€”
CVSS v4 NEW
β€”
not yet in upstream
VIR risk
β€”

Description

Let's Encrypt client and ACME library written in Go (Lego). In versions 4.25.1 and below, the github.com/go-acme/lego/v4/acme/api package (thus the lego library and the lego cli as well) don't enforce HTTPS when talking to CAs as an ACME client. Unlike the http-01 challenge which solves an ACME challenge over unencrypted HTTP, the ACME protocol requires HTTPS when a client communicates with the CA to performs ACME functions. However, the library fails to enforce HTTPS both in the original discover URL (configured by the library user) and in the subsequent addresses returned by the CAs in the directory and order objects. If users input HTTP URLs or CAs misconfigure endpoints, protocol operations occur over HTTP instead of HTTPS. This compromises privacy by exposing request/response details like account and request identifiers to network attackers. This was fixed in version 4.25.2.

Predictions

Exploit likelihood
20%
Patch ETA
β€”

Heuristic predictions, AS-IS, for prioritization only.

Mitigations

Mitigation details

Source: Debian Security Tracker Β· View original β†— Β· DFSG

CVE-2025-54799 NameCVE-2025-54799 DescriptionLet's Encrypt client and ACME library written in Go (Lego). In versions 4.25.1 and below, the github.com/go-acme/lego/v4/acme/api package (thus the lego library and the lego cli as well) don't enforce HTTPS when talking to CAs as an ACME client. Unlike the http-01 challenge which solves an ACME challenge over unencrypted HTTP, the ACME protocol…

Workaround

CA endpoint should enforce HTTPS instead of HTTP.

CVE-2025-54799

NameCVE-2025-54799
DescriptionLet's Encrypt client and ACME library written in Go (Lego). In versions 4.25.1 and below, the github.com/go-acme/lego/v4/acme/api package (thus the lego library and the lego cli as well) don't enforce HTTPS when talking to CAs as an ACME client. Unlike the http-01 challenge which solves an ACME challenge over unencrypted HTTP, the ACME protocol requires HTTPS when a client communicates with the CA to performs ACME functions. However, the library fails to enforce HTTPS both in the original discover URL (configured by the library user) and in the subsequent addresses returned by the CAs in the directory and order objects. If users input HTTP URLs or CAs misconfigure endpoints, protocol operations occur over HTTP instead of HTTPS. This compromises privacy by exposing request/response details like account and request identifiers to network attackers. This was fixed in version 4.25.2.
SourceCVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
Debian Bugs1110531

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
golang-github-xenolf-lego (PTS)bullseye3.2.0-3.1vulnerable
bookworm4.9.1-1vulnerable
trixie4.9.1-2vulnerable
forky4.9.1-4vulnerable
sid4.35.2-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
golang-github-xenolf-legosource(unstable)4.35.2-11110531

Notes

[trixie] - golang-github-xenolf-lego <no-dsa> (Minor issue)
[bookworm] - golang-github-xenolf-lego <no-dsa> (Minor issue)
[bullseye] - golang-github-xenolf-lego <ignored> (minor; need both client and server misconfigured unlikely)
https://github.com/go-acme/lego/security/advisories/GHSA-q82r-2j7m-9rv4
Fixed by: https://github.com/go-acme/lego/commit/238454b5f74f3cfcbb244ff0d0dc914a4ad44b96 (v4.25.2)
Workaround: CA endpoint should enforce HTTPS instead of HTTP.

Home - Debian Security - Source (Git)

Apply commands

text workaround
Notes
[trixie] - golang-github-xenolf-lego <no-dsa> (Minor issue)[bookworm] - golang-github-xenolf-lego <no-dsa> (Minor issue)[bullseye] - golang-github-xenolf-lego <ignored> (minor; need both client and server misconfigured unlikely)https://github.com/go-acme/lego/security/advisories/GHSA-q82r-2j7m-9rv4Fixed by: https://github.com/go-acme/lego/commit/238454b5f74f3cfcbb244ff0d0dc914a4ad44b96 (v4.25.2)Workaround: CA endpoint should enforce HTTPS instead of HTTP.

OS impact

debian Debian Mixed 5 releases
VersionStatusFixed in
trixie Affected β€”
sid Fixed 4.35.2-1
forky Affected β€”
bullseye Affected β€”
bookworm Affected β€”

Package impact

EcosystemPackageVulnerableFixed
golang Gogithub.com/go-acme/lego<=4.25.1
golang Gogithub.com/go-acme/lego/v3<=4.25.1
golang Gogithub.com/go-acme/lego/v4<4.25.24.25.2

References

Community-verified mitigations for this CVE will appear above when contributors publish them.

Verify integrity in audit chain (admin only). AS-IS.