Skip to content
Fencer Vulns
medium 6.1

CVE-2016-9909 json

Improper Neutralization of Input During Web Page Generation in html5lib

published 2017-02-22 9 y ago modified 2026-06-17 4 mo ago also GHSA-v9v9-xffq-rwr4 , PYSEC-2017-14 , EUVD-2017-0060

cvss
6.1
version 3.0, NVD
cisa kev
Not listed
not in CISA's catalog
epss
2.2%
EPSS 2.2% chance of exploitation in 30 days, percentile 82%
public exploits
0
none known

Summary

The serializer in html5lib before 0.99999999 might allow remote attackers to conduct cross-site scripting (XSS) attacks by leveraging mishandling of the < (less than) character in attribute values.

Patch / fix

  • pypi html5lib 0.999999999
  • html5lib Debian 14, Debian 13, Debian 12 0.999999999-1

debian advisories DEBIAN-CVE-2016-9909

  • python-html5lib Arch Linux 0.999999999-1

arch linux advisories AVG-100

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2016-9909 updated cvss 6.1

python-html5lib: XSS due to unquoted attributes that need escaping in legacy browsers

  • Red Hat All currently supported Red Hat products
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

Exploit prediction

2.16% chance of exploitation in the next 30 days, higher than 82% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
NVD 3.0 6.1 CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
NVD 2.0 4.3 AV:N/AC:M/Au:N/C:N/I:P/A:N
GitHub 3.0 6.1 CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N

Affected packages

ecosystem package affected fixed in
pypi html5lib
<0.999999999
0.999999999

Classification

Weakness
  • CWE-79 Improper Neutralization of Input During Web Page Generation

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.