{
 "description": "Evidence-bound MITRE ATT&CK techniques observed in CTIPilot entries referencing Node.js and Google Brotli (Node2Shell): out-of-bounds write in the Brotli decoder lets crafted compressed data run code via fetch() and Express 5 or body-parser 2 request bodies (CVSS 4.0 9.2); fixed in Node.js 22.23.4, 24.22.1 and 26.12.1, Brotli 1.2.1 and PyPI Brotli 1.2.1 and brotlicffi 1.2.1.0. Score = number of published entries mapping the technique. Pinned dataset: ATT&CK v20.0.",
 "domain": "enterprise-attack",
 "gradient": {
  "colors": [
   "#ffe766",
   "#ff6666"
  ],
  "maxValue": 1,
  "minValue": 0
 },
 "hideDisabled": false,
 "layout": {
  "layout": "side",
  "showID": true,
  "showName": true
 },
 "legendItems": [],
 "metadata": [
  {
   "name": "source",
   "value": "CTIPilot"
  },
  {
   "name": "entity",
   "value": "CVE-2026-111497"
  },
  {
   "name": "attack_version",
   "value": "20.0"
  }
 ],
 "name": "Node.js and Google Brotli (Node2Shell): out-of-bounds write in the Brotli decoder lets crafted compressed data run code via fetch() and Express 5 or body-parser 2 request bodies (CVSS 4.0 9.2); fixed in Node.js 22.23.4, 24.22.1 and 26.12.1, Brotli 1.2.1 and PyPI Brotli 1.2.1 and brotlicffi 1.2.1.0, CTIPilot coverage",
 "sorting": 3,
 "techniques": [
  {
   "comment": "entries: 2026-10-24/cve-2026-111497-node2shell-brotli-decoder-rce-nodejs-pypi",
   "score": 1,
   "techniqueID": "T1190"
  }
 ],
 "versions": {
  "attack": "20",
  "layer": "4.5",
  "navigator": "5.1.0"
 }
}