{"api_version":"1","generated_at":"2026-04-22T21:27:02+00:00","cve":"CVE-2019-12452","urls":{"html":"https://cve.report/CVE-2019-12452","api":"https://cve.report/api/cve/CVE-2019-12452.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2019-12452","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2019-12452"},"summary":{"title":"CVE-2019-12452","description":"types/types.go in Containous Traefik 1.7.x through 1.7.11, when the --api flag is used and the API is publicly reachable and exposed without sufficient access control (which is contrary to the API documentation), allows remote authenticated users to discover password hashes by reading the Basic HTTP Authentication or Digest HTTP Authentication section, or discover a key by reading the ClientTLS section. These can be found in the JSON response to a /api request.","state":"PUBLIC","assigner":"cve@mitre.org","published_at":"2019-05-29 19:29:00","updated_at":"2021-07-28 00:44:00"},"problem_types":["CWE-522"],"metrics":[],"references":[{"url":"https://docs.traefik.io/configuration/api/#security","name":"https://docs.traefik.io/configuration/api/#security","refsource":"MISC","tags":["Exploit","Vendor Advisory"],"title":"Page Not Found","mime":"text/html","httpstatus":"404","archivestatus":"404"},{"url":"https://github.com/containous/traefik/issues/4917","name":"https://github.com/containous/traefik/issues/4917","refsource":"MISC","tags":["Exploit","Third Party Advisory"],"title":"Authentication hashes are available through the API · Issue #4917 · traefik/traefik · GitHub","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://github.com/containous/traefik/pull/4918","name":"https://github.com/containous/traefik/pull/4918","refsource":"MISC","tags":["Exploit","Patch","Third Party Advisory"],"title":"Remove authentication hashes from API by ldez · Pull Request #4918 · traefik/traefik · GitHub","mime":"text/html","httpstatus":"200","archivestatus":"200"},{"url":"https://www.cve.org/CVERecord?id=CVE-2019-12452","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2019-12452","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[{"cve_year":"2019","cve_id":"12452","vulnerable":"1","versionEndIncluding":"1.7.11","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"containous","cpe5":"traefik","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"},{"cve_year":"2019","cve_id":"12452","vulnerable":"1","versionEndIncluding":"1.7.11","cpe1":"cpe","cpe2":"2.3","cpe3":"a","cpe4":"traefik","cpe5":"traefik","cpe6":"*","cpe7":"*","cpe8":"*","cpe9":"*","cpe10":"*","cpe11":"*","cpe12":"*","cpe13":"*"}],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"CVE_data_meta":{"ASSIGNER":"cve@mitre.org","ID":"CVE-2019-12452","STATE":"PUBLIC"},"affects":{"vendor":{"vendor_data":[{"product":{"product_data":[{"product_name":"n/a","version":{"version_data":[{"version_value":"n/a"}]}}]},"vendor_name":"n/a"}]}},"data_format":"MITRE","data_type":"CVE","data_version":"4.0","description":{"description_data":[{"lang":"eng","value":"types/types.go in Containous Traefik 1.7.x through 1.7.11, when the --api flag is used and the API is publicly reachable and exposed without sufficient access control (which is contrary to the API documentation), allows remote authenticated users to discover password hashes by reading the Basic HTTP Authentication or Digest HTTP Authentication section, or discover a key by reading the ClientTLS section. These can be found in the JSON response to a /api request."}]},"problemtype":{"problemtype_data":[{"description":[{"lang":"eng","value":"n/a"}]}]},"references":{"reference_data":[{"url":"https://github.com/containous/traefik/issues/4917","refsource":"MISC","name":"https://github.com/containous/traefik/issues/4917"},{"url":"https://github.com/containous/traefik/pull/4918","refsource":"MISC","name":"https://github.com/containous/traefik/pull/4918"},{"url":"https://docs.traefik.io/configuration/api/#security","refsource":"MISC","name":"https://docs.traefik.io/configuration/api/#security"}]}},"nvd":{"publishedDate":"2019-05-29 19:29:00","lastModifiedDate":"2021-07-28 00:44:00","problem_types":["CWE-522"],"metrics":{"baseMetricV3":{"cvssV3":{"version":"3.0","vectorString":"CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H","attackVector":"NETWORK","attackComplexity":"HIGH","privilegesRequired":"LOW","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH","baseScore":7.5,"baseSeverity":"HIGH"},"exploitabilityScore":1.6,"impactScore":5.9},"baseMetricV2":{"cvssV2":{"version":"2.0","vectorString":"AV:N/AC:M/Au:S/C:P/I:N/A:N","accessVector":"NETWORK","accessComplexity":"MEDIUM","authentication":"SINGLE","confidentialityImpact":"PARTIAL","integrityImpact":"NONE","availabilityImpact":"NONE","baseScore":3.5},"severity":"LOW","exploitabilityScore":6.8,"impactScore":2.9,"acInsufInfo":false,"obtainAllPrivilege":false,"obtainUserPrivilege":false,"obtainOtherPrivilege":false,"userInteractionRequired":false}},"configurations":{"CVE_data_version":"4.0","nodes":[{"operator":"OR","children":[],"cpe_match":[{"vulnerable":true,"cpe23Uri":"cpe:2.3:a:traefik:traefik:*:*:*:*:*:*:*:*","versionStartIncluding":"1.7.0","versionEndIncluding":"1.7.11","cpe_name":[]}]}]}},"legacy_mitre":{"record":{"CveYear":"2019","CveId":"12452","Ordinal":"150789","Title":"CVE-2019-12452","CVE":"CVE-2019-12452","Year":"2019"},"notes":[{"CveYear":"2019","CveId":"12452","Ordinal":"1","NoteData":"types/types.go in Containous Traefik 1.7.x through 1.7.11, when the --api flag is used and the API is publicly reachable and exposed without sufficient access control (which is contrary to the API documentation), allows remote authenticated users to discover password hashes by reading the Basic HTTP Authentication or Digest HTTP Authentication section, or discover a key by reading the ClientTLS section. These can be found in the JSON response to a /api request.","Type":"Description","Title":null},{"CveYear":"2019","CveId":"12452","Ordinal":"2","NoteData":"2019-05-29","Type":"Other","Title":"Published"},{"CveYear":"2019","CveId":"12452","Ordinal":"3","NoteData":"2019-05-29","Type":"Other","Title":"Modified"}]}}}