CVE-2026-61629: CWE-770: Allocation of Resources Without Limits or Throttling in lucasdillmann nginx-ignition
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.
AI Analysis
Technical Summary
In nginx-ignition versions 2.29.0 through 2.40.0, the gin i18n middleware processes the Accept-Language header without limiting its size or format. The golang.org/x/text/language.ParseAcceptLanguage function used internally has quadratic-time complexity when parsing long lists of malformed language tags, especially those containing many underscore characters ('_'). Although a previous fix capped the number of hyphen characters ('-'), underscores are aliased to hyphens internally but remain uncapped, allowing attackers to craft headers that cause excessive CPU usage. A single crafted request can consume about 2.4 seconds of CPU time, and multiple concurrent requests can saturate a multi-core server, causing denial of service. This vulnerability is addressed in nginx-ignition version 2.40.1.
Potential Impact
An unauthenticated attacker can send specially crafted HTTP requests with malicious Accept-Language headers to cause high CPU usage on the nginx-ignition server, leading to denial of service by resource exhaustion. This can saturate server CPU cores and consume significant bandwidth, degrading or disrupting service availability.
Mitigation Recommendations
Upgrade nginx-ignition to version 2.40.1 or later, where this vulnerability is fixed by limiting the processing of underscores in the Accept-Language header. Until upgraded, consider implementing external rate limiting or filtering on Accept-Language headers to mitigate potential abuse.
CVE-2026-61629: CWE-770: Allocation of Resources Without Limits or Throttling in lucasdillmann nginx-ignition
Description
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.
CVSS v3.1
Score 7.5high
Affected software
lucasdillmann
nginx-ignition
pkg:github/lucasdillmann/nginx-ignitionRun on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
In nginx-ignition versions 2.29.0 through 2.40.0, the gin i18n middleware processes the Accept-Language header without limiting its size or format. The golang.org/x/text/language.ParseAcceptLanguage function used internally has quadratic-time complexity when parsing long lists of malformed language tags, especially those containing many underscore characters ('_'). Although a previous fix capped the number of hyphen characters ('-'), underscores are aliased to hyphens internally but remain uncapped, allowing attackers to craft headers that cause excessive CPU usage. A single crafted request can consume about 2.4 seconds of CPU time, and multiple concurrent requests can saturate a multi-core server, causing denial of service. This vulnerability is addressed in nginx-ignition version 2.40.1.
Potential Impact
An unauthenticated attacker can send specially crafted HTTP requests with malicious Accept-Language headers to cause high CPU usage on the nginx-ignition server, leading to denial of service by resource exhaustion. This can saturate server CPU cores and consume significant bandwidth, degrading or disrupting service availability.
Mitigation Recommendations
Upgrade nginx-ignition to version 2.40.1 or later, where this vulnerability is fixed by limiting the processing of underscores in the Accept-Language header. Until upgraded, consider implementing external rate limiting or filtering on Accept-Language headers to mitigate potential abuse.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-07-10T17:38:57.110Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 6ab13ff155bf5e2cf5064d27
Added to database: 09/21/2026, 14:32:17 UTC
Last enriched: 09/21/2026, 14:46:47 UTC
Last updated: 09/22/2026, 00:42:10 UTC
Views: 13
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.