{"id":"CVE-2026-100708","summary":"Froxlor before 2.3.13 Private Key Disclosure via Certificates API","details":"Froxlor before 2.3.13 returns the ssl_key_file column — which stores the raw PEM TLS private-key content — verbatim in the JSON responses of the Certificates.get and Certificates.listing API commands, because the results of the underlying domain_ssl_settings queries are passed through ApiCommand::response() without any field stripping or allowlist. A low-privileged authenticated customer API caller can retrieve the private keys of their own domains' certificates, including Let's Encrypt keys that Froxlor generates server-side and stores root-only (0600) and to which the customer otherwise has no filesystem access; reseller and customers_see_all admin accounts can dump the private keys of other principals through the same sink. Disclosed keys enable domain impersonation, passive decryption of captured TLS traffic, and active machine-in-the-middle attacks.","aliases":["GHSA-6q2v-jjq5-m2c8"],"modified":"2026-09-30T03:31:05.891304277Z","published":"2026-09-26T13:24:02.102Z","database_specific":{"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/100xxx/CVE-2026-100708.json","cna_assigner":"VulnCheck","cwe_ids":["CWE-200"]},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/100xxx/CVE-2026-100708.json"},{"type":"ADVISORY","url":"https://github.com/froxlor/froxlor/security/advisories/GHSA-6q2v-jjq5-m2c8"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-100708"},{"type":"ADVISORY","url":"https://www.vulncheck.com/advisories/froxlor-before-2.3.13-private-key-disclosure-via-certificates-api"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/froxlor/froxlor","events":[{"introduced":"0"},{"fixed":"9051a8c3222c2d1338738a3d2b1fa0f7e0be110a"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"2.3.13"}],"source":["AFFECTED_FIELD","DESCRIPTION"]}}],"versions":["2.3.12","2.3.11","2.3.10","2.3.9","2.3.8","2.3.7","2.3.6","2.3.5","2.3.4","2.3.3","2.3.2","2.3.1","2.3.0","2.3.0-rc1","2.2.0-rc1","2.1.4","2.1.3","2.1.2","2.1.1","2.1.0","2.1.0-rc3","2.1.0-rc2","2.1.0-rc1","2.1.0-beta2","2.1.0-beta1","2.0.24","2.0.23","2.0.22","2.0.21","2.0.20","2.0.19","2.0.18","2.0.17","2.0.16","2.0.15","2.0.14","2.0.13","2.0.12","2.0.11","2.0.10","2.0.9","2.0.8","2.0.7","2.0.6","2.0.5","2.0.4","2.0.3","2.0.2","2.0.1","0.10.33","0.10.32","0.10.31","0.10.30","0.10.29.1","0.10.29","0.10.28","0.10.27","0.10.26","0.10.25","0.10.24","0.10.23.1","0.10.23","0.10.22","0.10.21","0.10.20","0.10.19","0.10.18","0.10.17","0.10.16","0.10.15","0.10.14","0.10.13","0.10.12","0.10.11","0.10.10","0.10.9","0.10.8","0.10.7","0.10.6","0.10.5","0.10.4","0.10.3","0.10.2","0.10.1","0.10.0","0.10.0-rc2","0.10.0-rc1","0.9.39.5","0.9.39.4","0.9.39.3","0.9.39.2","0.9.39.1","0.9.39","0.9.38.8","0.9.38.7","0.9.38.6","0.9.38.5","0.9.38.4","0.9.38.3","0.9.38.2","0.9.38.1","0.9.38","0.9.38-rc2","0.9.38-rc1","0.9.37","0.9.37-rc1","0.9.36","0.9.35.1","0.9.35","0.9.35-rc1","0.9.34.2","0.9.34.1","0.9.33-rc3","0.9.33-rc2","0.9.33-rc1","0.9.32","0.9.32-rc2","0.9.32-rc1","0.9.31-rc1","0.9.30","0.9.30-rc1","0.9.29","0.9.29-rc1","0.9.28.1","0.9.28","0.9.28-rc1","0.9.27","0.9.27-rc1","0.9.26","0.9.26-rc1","0.9.25","0.9.25-rc1","0.9.24","0.9.24-rc1","0.9.23","0.9.23-rc1","0.9.22","0.9.22-rc1","0.9.21","0.9.20.1","0.9.20","0.9.19","0.9.18.1","0.9.18"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-100708.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N"}]}