{"schemaVersion":3,"id":"CVE-2026-102599","aliases":["CGA-8xwx-8489-hpfm","CGA-rxw2-rv4r-9w98","GHSA-2gc4-cqfq-p2gv","CGA-2cx5-jx67-2rg8","CGA-2f6w-qw37-cv62","CGA-2xcg-jgfh-crx5","CGA-3pjv-hp4h-p6jf","CGA-4pvx-g3p7-9gw6","CGA-5965-76hr-xh99","CGA-5pw3-qc24-95q6","CGA-8xw4-4j93-rg43","CGA-9599-mf2p-cpvh","CGA-9mq7-qj8h-hm62","CGA-9w5m-6vm7-3r64","CGA-h57q-jx3f-25xw","CGA-jv9v-xpxh-gp5r","CGA-jx5v-449p-hvxf","CGA-m6gr-c3q4-9x22","CGA-m97m-rh24-hfgj","CGA-p67w-x9mv-ccwp","CGA-pjj9-w6j6-64w4","CGA-ppr7-53pw-p3wj","CGA-q6g5-442j-v399","CGA-r4ww-7mj9-4xpj","CGA-r6xh-mffw-mr72","CGA-vj55-j2cg-vpmr","CGA-vj69-cjg6-q9vg","CGA-wcmv-6qjm-prf9","CGA-x546-65jq-jqmh"],"status":"published","duplicateOf":null,"title":null,"description":"Socket.IO enables bidirectional and low-latency communication for every platform. From Engine.IO 6.6.0 until 6.6.10, a transport upgrade can independently derive an Engine.IO protocol revision from the upgrade request instead of enforcing the revision stored on the existing session. A malicious client can establish a valid session and send an upgrade request with a different or omitted EIO query parameter, attaching a transport with incompatible parser and heartbeat behavior. A crafted heartbeat packet can then trigger an uncaught exception and terminate the Node.js process, including when Engine.IO v3 compatibility is disabled because an omitted EIO value is interpreted as revision 3 on the affected path. This issue is fixed in Engine.IO 6.6.10.","dates":{"published":"2026-10-13T19:05:10.870Z","modified":"2026-10-17T00:39:46.378Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":7.5,"severity":"high","version":"3.1","versionLabel":"v3.1","source":"CVE.org","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","computed":false,"selection":"backend-summary"},"metrics":[{"version":"3.1","versionLabel":"v3.1","source":"OSV · Npm","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","exploitability":10,"impact":6,"computed":true},{"version":"3.1","versionLabel":"v3.1","source":"OSV · Chainguard","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","exploitability":10,"impact":6,"computed":true},{"version":"3.1","versionLabel":"v3.1","source":"CVE.org","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":7.5,"severity":"high","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.00583,"percentile":0.46845,"severity":"low","asOf":"2026-10-19T00:00:00.000Z","change":{"pp":null,"baselineDate":null,"baselineScore":null},"history":[{"date":"2026-10-14T00:00:00.000Z","score":0.00583,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00583,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00583,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00583,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00583,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00583,"percentile":0.46845}],"last30":[{"date":"2026-10-14T00:00:00.000Z","score":0.00583,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00583,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00583,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00583,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00583,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00583,"percentile":0.46845}]},"kev":{"state":"not-listed","entries":[],"listedCount":0,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":false,"entry":null},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[],"exploitCount":0,"weaknesses":[{"id":"CWE-248","name":"Uncaught Exception","description":"An exception is thrown from a function, but it is not caught.","type":"weakness","status":"Draft","abstraction":"Base","likelihoodOfExploit":null,"url":"https://cwe.mitre.org/data/definitions/248.html"}],"affected":[{"vendor":"chainguard","product":"commercial-gitlab-rails-ee-19.2","name":"commercial-gitlab-rails-ee-19.2","label":"commercial-gitlab-rails-ee-19.2","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/commercial-gitlab-rails-ee-19.2","purlType":"apk","versions":[{"text":"< 19.2.7-r1","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 19.2.7-r1","eol":null,"hubHref":null},{"vendor":"chainguard","product":"commercial-gitlab-rails-ee-19.3","name":"commercial-gitlab-rails-ee-19.3","label":"commercial-gitlab-rails-ee-19.3","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/commercial-gitlab-rails-ee-19.3","purlType":"apk","versions":[{"text":"< 19.3.3-r1","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 19.3.3-r1","eol":null,"hubHref":null},{"vendor":"chainguard","product":"commercial-gitlab-rails-ee-19.4","name":"commercial-gitlab-rails-ee-19.4","label":"commercial-gitlab-rails-ee-19.4","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/commercial-gitlab-rails-ee-19.4","purlType":"apk","versions":[{"text":"< 19.4.1-r1","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 19.4.1-r1","eol":null,"hubHref":null},{"vendor":"chainguard","product":"commercial-gitlab-rails-ee-fips-19.2","name":"commercial-gitlab-rails-ee-fips-19.2","label":"commercial-gitlab-rails-ee-fips-19.2","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/commercial-gitlab-rails-ee-fips-19.2","purlType":"apk","versions":[{"text":"< 19.2.7-r1","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 19.2.7-r1","eol":null,"hubHref":null},{"vendor":"chainguard","product":"commercial-gitlab-rails-ee-fips-19.3","name":"commercial-gitlab-rails-ee-fips-19.3","label":"commercial-gitlab-rails-ee-fips-19.3","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/commercial-gitlab-rails-ee-fips-19.3","purlType":"apk","versions":[{"text":"< 19.3.3-r1","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 19.3.3-r1","eol":null,"hubHref":null},{"vendor":"chainguard","product":"commercial-gitlab-rails-ee-fips-19.4","name":"commercial-gitlab-rails-ee-fips-19.4","label":"commercial-gitlab-rails-ee-fips-19.4","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/commercial-gitlab-rails-ee-fips-19.4","purlType":"apk","versions":[{"text":"< 19.4.1-r1","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 19.4.1-r1","eol":null,"hubHref":null},{"vendor":"chainguard","product":"gitlab-rails-ce-19.2","name":"gitlab-rails-ce-19.2","label":"gitlab-rails-ce-19.2","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/gitlab-rails-ce-19.2","purlType":"apk","versions":[{"text":"< 19.2.7-r6","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 19.2.7-r6","eol":null,"hubHref":null},{"vendor":"chainguard","product":"gitlab-rails-ce-19.3","name":"gitlab-rails-ce-19.3","label":"gitlab-rails-ce-19.3","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/gitlab-rails-ce-19.3","purlType":"apk","versions":[{"text":"< 19.3.3-r3","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 19.3.3-r3","eol":null,"hubHref":null},{"vendor":"chainguard","product":"gitlab-rails-ce-19.4","name":"gitlab-rails-ce-19.4","label":"gitlab-rails-ce-19.4","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/gitlab-rails-ce-19.4","purlType":"apk","versions":[{"text":"< 19.4.1-r6","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 19.4.1-r6","eol":null,"hubHref":null},{"vendor":"chainguard","product":"gitlab-rails-ce-fips-19.2","name":"gitlab-rails-ce-fips-19.2","label":"gitlab-rails-ce-fips-19.2","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/gitlab-rails-ce-fips-19.2","purlType":"apk","versions":[{"text":"< 19.2.7-r5","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 19.2.7-r5","eol":null,"hubHref":null},{"vendor":"chainguard","product":"gitlab-rails-ce-fips-19.3","name":"gitlab-rails-ce-fips-19.3","label":"gitlab-rails-ce-fips-19.3","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/gitlab-rails-ce-fips-19.3","purlType":"apk","versions":[{"text":"< 19.3.3-r2","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 19.3.3-r2","eol":null,"hubHref":null},{"vendor":"chainguard","product":"gitlab-rails-ce-fips-19.4","name":"gitlab-rails-ce-fips-19.4","label":"gitlab-rails-ce-fips-19.4","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/gitlab-rails-ce-fips-19.4","purlType":"apk","versions":[{"text":"< 19.4.1-r5","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 19.4.1-r5","eol":null,"hubHref":null},{"vendor":"chainguard","product":"jupyter-base-notebook","name":"jupyter-base-notebook","label":"jupyter-base-notebook","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/jupyter-base-notebook","purlType":"apk","versions":[{"text":"< 7.6.3-r2","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 7.6.3-r2","eol":null,"hubHref":null},{"vendor":"chainguard","product":"redisinsight","name":"redisinsight","label":"redisinsight","ecosystem":"Chainguard","cpePart":null,"purl":"pkg:apk/chainguard/redisinsight","purlType":"apk","versions":[{"text":"< 3.8.0-r7","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 3.8.0-r7","eol":null,"hubHref":null},{"vendor":"wolfi","product":"jupyter-base-notebook","name":"jupyter-base-notebook","label":"jupyter-base-notebook","ecosystem":"Wolfi","cpePart":null,"purl":"pkg:apk/wolfi/jupyter-base-notebook","purlType":"apk","versions":[{"text":"< 7.6.3-r2","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 7.6.3-r2","eol":null,"hubHref":null},{"vendor":"Npm","product":"engine.io","name":"engine.io","label":"engine.io","ecosystem":"Npm","cpePart":null,"purl":"pkg:npm/engine.io","purlType":"npm","versions":[{"text":"≥ 6.6.0, < 6.6.10","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 6.6.0, < 6.6.10","eol":null,"hubHref":null},{"vendor":"socketio","product":"socket.io","name":"socket.io","label":"socket.io","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≥ 6.6.0, < 6.6.10","noFixRecorded":false,"fixedIn":null}],"versionsText":"≥ 6.6.0, < 6.6.10","eol":null,"hubHref":"/vendor/socketio/socketio"}],"affectedCount":17,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://github.com/socketio/socket.io/security/advisories/GHSA-2gc4-cqfq-p2gv","label":"github.com/socketio/socket.io/security/advisories/GHSA-2gc4-cqfq-p2gv","hostname":"github.com","tags":["WEB","X Refsource CONFIRM"]},{"url":"https://github.com/socketio/socket.io/commit/86db1fc3db2cd315a065d64c4e48918ccf9b4729","label":"github.com/socketio/socket.io/commit/86db1fc3db2cd315a065d64c4e48918ccf9b4729","hostname":"github.com","tags":["WEB","X Refsource MISC"]},{"url":"https://github.com/socketio/socket.io","label":"github.com/socketio/socket.io","hostname":"github.com","tags":["PACKAGE"]},{"url":"https://github.com/socketio/socket.io/releases/tag/engine.io@6.6.10","label":"github.com/socketio/socket.io/releases/tag/engine.io@6.6.10","hostname":"github.com","tags":["WEB","X Refsource MISC"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2026-10-13T19:05:10.870Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2026-10-17T00:39:46.378Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":30,"level":"medium","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-19T18:20:17.795Z","stale":false,"partial":false}}