{"id":"CVE-2026-61629","summary":"nginx ignition has  ParseAcceptLanguage `_` separator bypass that enables ~75x CPU amplification via Accept-Language header in i18nMiddleware","details":"nginx ignition is a user interface for the nginx web server. In versions 2.29.0 through 2.40.0, the gin i18n middleware in nginx-ignition's API server runs in front of every HTTP request and calls `golang.org/x/text/language.ParseAcceptLanguage` on the raw `Accept-Language` header without imposing any size or shape filter. The underlying parser has quadratic-time behaviour on long lists of malformed language tags. The CVE-2022-32149 guard that golang.org/x/text added in v0.3.8 caps the number of `-` characters in the input at 1000, but it does not cap `_` characters even though the parser's internal scanner aliases `_` to `-` before parsing. A single unauthenticated GET request with an `Accept-Language` header built out of `_` separators burns about 2.4 seconds of server CPU on the host running nginx-ignition; ten concurrent attackers saturate a ten-core box for the duration of the attack while consuming ~10 MiB/s of upstream bandwidth. Version 2.40.1 fixes this issue.","aliases":["GHSA-jr34-h97m-9hpx"],"modified":"2026-09-22T03:45:31.290962217Z","published":"2026-09-21T14:22:34.126Z","database_specific":{"cwe_ids":["CWE-770"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/61xxx/CVE-2026-61629.json","cna_assigner":"GitHub_M"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/61xxx/CVE-2026-61629.json"},{"type":"FIX","url":"https://github.com/lucasdillmann/nginx-ignition/commit/0c988fc1277c7d291725e8373313f8486fa1b31a"},{"type":"FIX","url":"https://github.com/lucasdillmann/nginx-ignition/commit/cbaf0fc16ed873f7178a2ca9b0d00a696e44b485"},{"type":"ADVISORY","url":"https://github.com/lucasdillmann/nginx-ignition/security/advisories/GHSA-jr34-h97m-9hpx"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-61629"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/lucasdillmann/nginx-ignition","events":[{"introduced":"268a7816033a9df678538c594013af709dbf63be"},{"fixed":"0c988fc1277c7d291725e8373313f8486fa1b31a"}],"database_specific":{"extracted_events":[{"introduced":"2.29.0"},{"fixed":"2.40.1"}],"source":"AFFECTED_FIELD"}}],"versions":["2.40.0","2.39.0","2.38.0","2.37.0","2.36.1","2.36.0","2.35.3","2.35.2","2.35.1","2.35.0","2.34.0","2.33.0","2.32.0","2.31.2","2.31.1","2.31.0","2.30.0","2.29.1","2.29.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-61629.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}]}