{"id":"CVE-2016-9909","aliases":["DEBIAN-CVE-2016-9909","EUVD-2017-0060","GHSA-v9v9-xffq-rwr4","MGASA-2017-0001","PYSEC-2017-14","UBUNTU-CVE-2016-9909"],"status":"published","title":"Improper Neutralization of Input During Web Page Generation in html5lib","description":"The serializer in html5lib before 0.99999999 might allow remote attackers to conduct cross-site scripting (XSS) attacks by leveraging mishandling of the \u003c (less than) character in attribute values.","severity":{"version":"3.0","score":6.1,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.0216,"percentile":0.82324,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-79"],"published":"2017-01-03T22:05:03Z","modified":"2026-10-20T10:49:04Z","fixes":[{"ecosystem":"PyPI","package":"html5lib","fixed_in":["0.999999999"],"sources":["ghsa","osv"]},{"ecosystem":"Debian:12","package":"html5lib","fixed_in":["0.999999999-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"html5lib","fixed_in":["0.999999999-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"html5lib","fixed_in":["0.999999999-1"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"PyPI","package":"html5lib","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.999999999"}]}]},{"source":"osv","ecosystem":"Debian:12","package":"html5lib","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.999999999-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"html5lib","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.999999999-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"html5lib","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.999999999-1"}]}]},{"source":"osv","ecosystem":"PyPI","package":"html5lib","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.999999999"}]}],"versions":["0.10","0.11","0.11.1","0.2","0.9","0.90","0.95","0.99","0.999","0.9999","0.99999","0.999999","0.9999999","0.99999999"]},{"source":"osv","ecosystem":"Mageia:5","package":"python-html5lib","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.0b3-7.1.mga5"}]}],"bundled":2},{"source":"osv","ecosystem":"PyPI","package":"html5lib","ranges":[{"type":"GIT","events":[{"introduced":"0"},{"fixed":"9b8d8eb5afbc066b7fac9390f5ec75e5e8a7cab7"}]},{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.999999999"}]}],"versions":["0.10","0.11","0.11.1","0.2","0.9","0.90","0.95","0.99","0.999","0.9999","0.99999","0.999999","0.9999999","0.99999999"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"html5lib","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.999-3build1","0.999-4"]}],"products":[{"vendor":"html5lib","product":"html5lib"}],"references":[{"url":"https://github.com/html5lib/html5lib-python/issues/12","tags":["x_refsource_CONFIRM","x_transferred","Vendor Advisory","advisory","web","report"]},{"url":"https://html5lib.readthedocs.io/en/latest/changes.html#b9","tags":["x_refsource_CONFIRM","x_transferred","Release Notes","advisory","web"]},{"url":"http://www.openwall.com/lists/oss-security/2016/12/06/5","tags":["mailing-list","x_refsource_MLIST","x_transferred","Mailing List","Patch","Third Party Advisory","fix","web","report"]},{"url":"http://www.openwall.com/lists/oss-security/2016/12/08/8","tags":["mailing-list","x_refsource_MLIST","x_transferred","Mailing List","Patch","Third Party Advisory","fix","web"]},{"url":"http://www.securityfocus.com/bid/95132","tags":["vdb-entry","x_refsource_BID","x_transferred","Third Party Advisory","VDB Entry","advisory","web"]},{"url":"https://github.com/html5lib/html5lib-python/commit/9b8d8eb5afbc066b7fac9390f5ec75e5e8a7cab7","tags":["x_refsource_CONFIRM","x_transferred","Patch","fix","web"]},{"url":"https://github.com/html5lib/html5lib-python/issues/11","tags":["x_refsource_CONFIRM","x_transferred","Vendor Advisory","advisory","web","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2016-9909","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-v9v9-xffq-rwr4","tags":["advisory"]},{"url":"https://github.com/pypa/advisory-database/tree/main/vulns/html5lib/PYSEC-2017-14.yaml","tags":["web"]},{"url":"https://web.archive.org/web/20161229134056/http://www.securityfocus.com/bid/95132","tags":["web"]},{"url":"https://security-tracker.debian.org/tracker/CVE-2016-9909","tags":["advisory"]},{"url":"https://github.com/html5lib/html5lib-python","tags":["package"]},{"url":"https://advisories.mageia.org/MGASA-2017-0001.html","tags":["advisory"]},{"url":"https://bugs.mageia.org/show_bug.cgi?id=19912","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2016-9909","tags":["report"]},{"url":"https://www.sourceclear.com/registry/security/cross-site-scripting-xss-/python/sid-3068","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2016-9909","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2016-9909","description":"The serializer in html5lib before 0.99999999 might allow remote attackers to conduct cross-site scripting (XSS) attacks by leveraging mishandling of the \u003c (less than) character in attribute values.","status":"published","published":"2017-02-22T16:00:00Z","modified":"2024-08-06T03:07:31.885Z","updated_at":"2026-11-02T14:33:32.103757Z"}],"euvd":[{"id":"EUVD-2017-0060","description":"The serializer in html5lib before 0.99999999 might allow remote attackers to conduct cross-site scripting (XSS) attacks by leveraging mishandling of the \u003c (less than) character in attribute values.","status":"published","published":"2017-02-22T16:00:00Z","modified":"2024-08-06T03:07:31Z","updated_at":"2026-11-03T02:22:25.285099Z"}],"ghsa":[{"id":"GHSA-v9v9-xffq-rwr4","title":"Improper Neutralization of Input During Web Page Generation in html5lib","description":"The serializer in html5lib before 0.99999999 might allow remote attackers to conduct cross-site scripting (XSS) attacks by leveraging mishandling of the \u003c (less than) character in attribute values.","status":"published","published":"2022-05-17T02:57:58Z","modified":"2024-09-20T21:25:39Z","cvss":[{"version":"4.0","score":5.3,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N","level":"medium"},{"version":"3.0","score":6.1,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T14:38:05.526697Z"}],"nvd":[{"id":"CVE-2016-9909","description":"The serializer in html5lib before 0.99999999 might allow remote attackers to conduct cross-site scripting (XSS) attacks by leveraging mishandling of the \u003c (less than) character in attribute values.","status":"published","published":"2017-02-22T16:59:00.38Z","modified":"2026-06-17T00:56:45.983Z","cvss":[{"version":"3.0","score":6.1,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium","assessor":"primary"},{"version":"2.0","score":4.3,"vector":"AV:N/AC:M/Au:N/C:N/I:P/A:N","level":"medium","assessor":"primary"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T14:03:35.822579Z"}],"osv":[{"id":"CVE-2016-9909","description":"The serializer in html5lib before 0.99999999 might allow remote attackers to conduct cross-site scripting (XSS) attacks by leveraging mishandling of the \u003c (less than) character in attribute values.","status":"published","published":"2017-02-22T16:59:00.38Z","modified":"2026-10-20T10:49:04.20065239Z","cvss":[{"version":"3.0","score":6.1,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T15:44:03.472693Z"},{"id":"DEBIAN-CVE-2016-9909","description":"The serializer in html5lib before 0.99999999 might allow remote attackers to conduct cross-site scripting (XSS) attacks by leveraging mishandling of the \u003c (less than) character in attribute values.","status":"published","published":"2017-02-22T16:59:00.38Z","modified":"2026-09-22T07:02:31.217214702Z","cvss":[{"version":"3.0","score":6.1,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T15:45:28.207321Z"},{"id":"GHSA-v9v9-xffq-rwr4","title":"Improper Neutralization of Input During Web Page Generation in html5lib","description":"The serializer in html5lib before 0.99999999 might allow remote attackers to conduct cross-site scripting (XSS) attacks by leveraging mishandling of the \u003c (less than) character in attribute values.","status":"published","published":"2022-05-17T02:57:58Z","modified":"2024-09-20T21:43:02.859762Z","cvss":[{"version":"3.0","score":6.1,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"},{"version":"4.0","score":5.3,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N","level":"medium"}],"cwes":["CWE-79"],"updated_at":"2026-11-02T15:46:56.981655Z"},{"id":"UBUNTU-CVE-2016-9909","description":"The serializer in html5lib before 0.99999999 might allow remote attackers to conduct cross-site scripting (XSS) attacks by leveraging mishandling of the \u003c (less than) character in attribute values.","status":"published","published":"2017-02-22T16:59:00Z","modified":"2025-10-24T04:45:59Z","cvss":[{"version":"3.0","score":6.1,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T15:54:13.356796Z"},{"id":"MGASA-2017-0001","title":"Updated python-html5lib packages fix security vulnerability","description":"Fixes a potential cross-site scripting vulnerablity: quote attributes\nthat need escaping in legacy browsers. (CVE-2016-9909, CVE-2016-9910)\n","status":"published","published":"2017-01-03T22:05:03Z","modified":"2026-04-16T06:22:59.655520258Z","updated_at":"2026-11-02T15:49:40.103088Z"},{"id":"PYSEC-2017-14","description":"The serializer in html5lib before 0.99999999 might allow remote attackers to conduct cross-site scripting (XSS) attacks by leveraging mishandling of the \u003c (less than) character in attribute values.","status":"published","published":"2017-02-22T16:59:00Z","modified":"2023-11-08T03:58:39.393067Z","updated_at":"2026-11-02T15:52:51.645172Z"}]}}
