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.
{
"binaries": [
{
"binary_name": "libnginx-mod-http-auth-pam",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-cache-purge",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-dav-ext",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-echo",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-fancyindex",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-geoip",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-geoip2",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-headers-more-filter",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-image-filter",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-ndk",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-perl",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-subs-filter",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-uploadprogress",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-upstream-fair",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-http-xslt-filter",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-mail",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-nchan",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-rtmp",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-stream",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-stream-geoip",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "libnginx-mod-stream-geoip2",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "nginx",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "nginx-common",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "nginx-core",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "nginx-extras",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "nginx-full",
"binary_version": "1.18.0-6ubuntu14.21"
},
{
"binary_name": "nginx-light",
"binary_version": "1.18.0-6ubuntu14.21"
}
]
}{
"binaries": [
{
"binary_name": "libnginx-mod-http-geoip",
"binary_version": "1.24.0-2ubuntu7.18"
},
{
"binary_name": "libnginx-mod-http-image-filter",
"binary_version": "1.24.0-2ubuntu7.18"
},
{
"binary_name": "libnginx-mod-http-perl",
"binary_version": "1.24.0-2ubuntu7.18"
},
{
"binary_name": "libnginx-mod-http-xslt-filter",
"binary_version": "1.24.0-2ubuntu7.18"
},
{
"binary_name": "libnginx-mod-mail",
"binary_version": "1.24.0-2ubuntu7.18"
},
{
"binary_name": "libnginx-mod-stream",
"binary_version": "1.24.0-2ubuntu7.18"
},
{
"binary_name": "libnginx-mod-stream-geoip",
"binary_version": "1.24.0-2ubuntu7.18"
},
{
"binary_name": "nginx",
"binary_version": "1.24.0-2ubuntu7.18"
},
{
"binary_name": "nginx-common",
"binary_version": "1.24.0-2ubuntu7.18"
},
{
"binary_name": "nginx-core",
"binary_version": "1.24.0-2ubuntu7.18"
},
{
"binary_name": "nginx-extras",
"binary_version": "1.24.0-2ubuntu7.18"
},
{
"binary_name": "nginx-full",
"binary_version": "1.24.0-2ubuntu7.18"
},
{
"binary_name": "nginx-light",
"binary_version": "1.24.0-2ubuntu7.18"
}
]
}{
"binaries": [
{
"binary_name": "libnginx-mod-http-geoip",
"binary_version": "1.28.3-2ubuntu1.11"
},
{
"binary_name": "libnginx-mod-http-image-filter",
"binary_version": "1.28.3-2ubuntu1.11"
},
{
"binary_name": "libnginx-mod-http-perl",
"binary_version": "1.28.3-2ubuntu1.11"
},
{
"binary_name": "libnginx-mod-http-xslt-filter",
"binary_version": "1.28.3-2ubuntu1.11"
},
{
"binary_name": "libnginx-mod-mail",
"binary_version": "1.28.3-2ubuntu1.11"
},
{
"binary_name": "libnginx-mod-stream",
"binary_version": "1.28.3-2ubuntu1.11"
},
{
"binary_name": "libnginx-mod-stream-geoip",
"binary_version": "1.28.3-2ubuntu1.11"
},
{
"binary_name": "nginx",
"binary_version": "1.28.3-2ubuntu1.11"
},
{
"binary_name": "nginx-common",
"binary_version": "1.28.3-2ubuntu1.11"
},
{
"binary_name": "nginx-core",
"binary_version": "1.28.3-2ubuntu1.11"
},
{
"binary_name": "nginx-extras",
"binary_version": "1.28.3-2ubuntu1.11"
},
{
"binary_name": "nginx-full",
"binary_version": "1.28.3-2ubuntu1.11"
},
{
"binary_name": "nginx-light",
"binary_version": "1.28.3-2ubuntu1.11"
}
]
}{
"binaries": [
{
"binary_name": "nginx",
"binary_version": "1.4.6-1ubuntu3.9+esm8"
},
{
"binary_name": "nginx-common",
"binary_version": "1.4.6-1ubuntu3.9+esm8"
},
{
"binary_name": "nginx-core",
"binary_version": "1.4.6-1ubuntu3.9+esm8"
},
{
"binary_name": "nginx-extras",
"binary_version": "1.4.6-1ubuntu3.9+esm8"
},
{
"binary_name": "nginx-full",
"binary_version": "1.4.6-1ubuntu3.9+esm8"
},
{
"binary_name": "nginx-light",
"binary_version": "1.4.6-1ubuntu3.9+esm8"
},
{
"binary_name": "nginx-naxsi",
"binary_version": "1.4.6-1ubuntu3.9+esm8"
},
{
"binary_name": "nginx-naxsi-ui",
"binary_version": "1.4.6-1ubuntu3.9+esm8"
}
]
}{
"binaries": [
{
"binary_name": "nginx",
"binary_version": "1.10.3-0ubuntu0.16.04.5+esm9"
},
{
"binary_name": "nginx-common",
"binary_version": "1.10.3-0ubuntu0.16.04.5+esm9"
},
{
"binary_name": "nginx-core",
"binary_version": "1.10.3-0ubuntu0.16.04.5+esm9"
},
{
"binary_name": "nginx-extras",
"binary_version": "1.10.3-0ubuntu0.16.04.5+esm9"
},
{
"binary_name": "nginx-full",
"binary_version": "1.10.3-0ubuntu0.16.04.5+esm9"
},
{
"binary_name": "nginx-light",
"binary_version": "1.10.3-0ubuntu0.16.04.5+esm9"
}
]
}{
"binaries": [
{
"binary_name": "libnginx-mod-http-auth-pam",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-cache-purge",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-dav-ext",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-echo",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-fancyindex",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-geoip",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-headers-more-filter",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-image-filter",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-lua",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-ndk",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-perl",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-subs-filter",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-uploadprogress",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-upstream-fair",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-http-xslt-filter",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-mail",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-nchan",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-rtmp",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "libnginx-mod-stream",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "nginx",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "nginx-common",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "nginx-core",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "nginx-extras",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "nginx-full",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
},
{
"binary_name": "nginx-light",
"binary_version": "1.14.0-0ubuntu1.11+esm4"
}
]
}{
"binaries": [
{
"binary_name": "libnginx-mod-http-auth-pam",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-cache-purge",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-dav-ext",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-echo",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-fancyindex",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-geoip",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-geoip2",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-headers-more-filter",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-image-filter",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-lua",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-ndk",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-perl",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-subs-filter",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-uploadprogress",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-upstream-fair",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-http-xslt-filter",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-mail",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-nchan",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-rtmp",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "libnginx-mod-stream",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "nginx",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "nginx-common",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "nginx-core",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "nginx-extras",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "nginx-full",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
},
{
"binary_name": "nginx-light",
"binary_version": "1.18.0-0ubuntu1.7+esm3"
}
]
}