Skip to content
Heist/ feed
HighFix available

nginx ignition has ParseAcceptLanguage `_` separator bypass that enables ~75x CPU amplification via Accept-Language header in i18nMiddleware

Type: advisorySource: OSV2 source records

### Summary 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. ### Affected versions `dillmann.com.br/nginx-ignition` v2.40.0 and (per code inspection of `main`) earlier 2.x versions whose `api/common/server/i18n.go` middleware routes the `Accept-Language` header through `language.ParseAcceptLanguage` without imposing its own size or character filter. Verified on: - the official `dillmann/nginx-ignition:latest` Docker image at v2.40.0 (E2E below) - `main` at commit `faef4c99442b329cfa4ee8879bdba41c22866a18` by reading `api/common/server/i18n.go` (the middleware is unchanged) ### Privilege required Unauthenticated. The middleware is registered on the global gin router that serves both the

Announced Group revision 1
Original source ↗

GO-2026-6539

Revision 1

nginx ignition has ParseAcceptLanguage `_` separator bypass that enables ~75x CPU amplification via Accept-Language header in i18nMiddleware in github.com/lucasdillmann/nginx-ignition

nginx ignition has ParseAcceptLanguage `_` separator bypass that enables ~75x CPU amplification via Accept-Language header in i18nMiddleware in github.com/lucasdillmann/nginx-ignition

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: osv:GO-2026-6539

github.com/lucasdillmann/nginx-ignition

Source reference: /affected/0/package/name

Affected versions
Not stated in this record
Fixed versions
0.0.0-20260526022344-0c988fc1277c

Source reference: /affected/0/ranges

Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "ranges": [
      {
        "type": "SEMVER",
        "events": [
          {
            "introduced": "0.0.0-20260126024607-cbaf0fc16ed8"
          },
          {
            "fixed": "0.0.0-20260526022344-0c988fc1277c"
          }
        ]
      }
    ],
    "package": {
      "name": "github.com/lucasdillmann/nginx-ignition",
      "purl": "pkg:golang/github.com/lucasdillmann/nginx-ignition",
      "ecosystem": "Go"
    },
    "database_specific": {
      "source": "https://vuln.go.dev/ID/GO-2026-6539.json"
    },
    "ecosystem_specific": {}
  }
]
Related CVEs
CVE-2026-61629

Source reference: /aliases

Publisher severity

No explicit severity was provided.

Linked CVE context

These ratings describe the referenced vulnerabilities and products. They are not a severity rating for every application using this dependency.

CVE-2026-61629 · High

github.com/lucasdillmann/nginx-ignition

Event
#23379 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement

GHSA-jr34-h97m-9hpx

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: osv:GHSA-jr34-h97m-9hpx

github.com/lucasdillmann/nginx-ignition

Source reference: /affected/0/package/name

Affected versions
Not stated in this record
Fixed versions
0.0.0-20260526022344-0c988fc1277c

Source reference: /affected/0/ranges

Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "ranges": [
      {
        "type": "SEMVER",
        "events": [
          {
            "introduced": "0.0.0-20260126024607-cbaf0fc16ed8"
          },
          {
            "fixed": "0.0.0-20260526022344-0c988fc1277c"
          }
        ]
      }
    ],
    "package": {
      "name": "github.com/lucasdillmann/nginx-ignition",
      "purl": "pkg:golang/github.com/lucasdillmann/nginx-ignition",
      "ecosystem": "Go"
    },
    "database_specific": {
      "source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-jr34-h97m-9hpx/GHSA-jr34-h97m-9hpx.json"
    }
  }
]
Related CVEs
CVE-2026-61629

Source reference: /aliases

Publisher severity

high

Source reference: /database_specific/severity

Linked CVE context

These ratings describe the referenced vulnerabilities and products. They are not a severity rating for every application using this dependency.

Event
#23411 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement