{"id":"GHSA-9v8h-qqgm-4m35","summary":"Brotli: Out-of-bounds write in the Brotli decoder (\"Node2Shell\") also affects the PyPI Brotli package","details":"A buffer overflow vulnerability in the Brotli decoder (c/dec/decode.c) in Google Brotli versions 1.0.3 through 1.2.0 on all platforms allows a remote unauthenticated attacker to corrupt adjacent decoder state memory, disclose sensitive memory contents, cause a denial of service, or potentially execute arbitrary code using a crafted Brotli-compressed stream.\n\nUsers need to update any Brotli libraries or binaries between 1.0.3 through 1.2.0 to the latest available version: 1.0.10 or 1.1.1 or 1.2.1.","modified":"2026-10-23T19:15:07.942958649Z","published":"2026-10-22T15:32:49Z","database_specific":{"cwe_ids":["CWE-252"],"severity":"CRITICAL","github_reviewed":true,"github_reviewed_at":"2026-10-23T19:08:08Z","nvd_published_at":"2026-10-22T14:17:37Z"},"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-111497"},{"type":"WEB","url":"https://github.com/google/brotli/commit/0ed4268a4401abcb4472096340477cf4af7d1a2b"},{"type":"WEB","url":"https://github.com/google/brotli/commit/50a9b70a4d5e1443fc40927952276b68fffa83a0"},{"type":"WEB","url":"https://github.com/google/brotli/commit/b418fa81c48262a86a95332b0bc6d62c30aa78b6"},{"type":"WEB","url":"https://github.com/google/brotli/commit/da9806362874b9bd4b552a3af360b5d6347beb12"},{"type":"WEB","url":"https://www.cve.org/CVERecord?id=CVE-2026-111497"},{"type":"WEB","url":"https://pypi.org/project/brotlicffi"},{"type":"WEB","url":"https://pypi.org/project/Brotli"},{"type":"WEB","url":"https://opensourcemalware.com/blog/node2shell-affects-python"},{"type":"WEB","url":"https://nodejs.org/en/blog/vulnerability/october-2026-security-releases#nodejs-brotli-decoder-out-of-bounds-write-permits-remote-code-execution-cve-2026-111497---high"},{"type":"WEB","url":"https://nodejs.org/en/blog/vulnerability/october-2026-security-releases"},{"type":"WEB","url":"https://github.com/pypa/advisory-database/tree/main/vulns/brotlicffi/PYSEC-2026-4323.yaml"},{"type":"WEB","url":"https://github.com/pypa/advisory-database/tree/main/vulns/brotli/PYSEC-2026-4322.yaml"},{"type":"WEB","url":"https://github.com/google/brotli/releases/tag/v1.2.1"},{"type":"WEB","url":"https://github.com/google/brotli/releases/tag/v1.1.1"},{"type":"WEB","url":"https://github.com/google/brotli/releases/tag/v1.0.10"},{"type":"PACKAGE","url":"https://github.com/google/brotli"}],"affected":[{"package":{"name":"brotli","ecosystem":"PyPI","purl":"pkg:pypi/brotli"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.0.3"},{"fixed":"1.2.1"}]}],"versions":["1.0.4","1.0.6","1.0.7","1.0.8","1.0.9","1.1.0","1.2.0"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-9v8h-qqgm-4m35/GHSA-9v8h-qqgm-4m35.json"}},{"package":{"name":"brotlicffi","ecosystem":"PyPI","purl":"pkg:pypi/brotlicffi"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"1.0.3"},{"fixed":"1.2.1.0"}]}],"versions":["1.0.9.0","1.0.9.1","1.0.9.2","1.1.0.0","1.2.0.0","1.2.0.1","1.2.0.2"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-9v8h-qqgm-4m35/GHSA-9v8h-qqgm-4m35.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N"}]}