CVE-2019-16935: XSS
A reflected cross-site scripting (XSS) vulnerability was found in Python XML-RPC server. The servertitle field is not sufficiently sanitized allowing malicious JavaScript to be injected. Successful exploitation would allow a remote attacker to execute JavaScript code within the context of the affected user.
Other sources
The documentation XML-RPC server in Python through 2.7.16, 3.x through 3.6.9, and 3.7.x through 3.7.4 has XSS via the servertitle field. This occurs in Lib/DocXMLRPCServer.py in Python 2.x, and in Lib/xmlrpc/server.py in Python 3.x. If setservertitle is called with untrusted input, arbitrary JavaScript can be delivered to clients that visit the http URL for this server.
The documentation XML-RPC server in various Python versions has XSS via the servertitle field. This occurs in Lib/DocXMLRPCServer.py in Python 2.x, and in Lib/xmlrpc/server.py in Python 3.x. If setservertitle is called with untrusted input, arbitrary JavaScript can be delivered to clients that visit the http URL for this server.
Upstream bug:
https://bugs.python.org/issue38243
Upstream pull request and commits:
https://github.com/python/cpython/pull/16373
master: https://github.com/python/cpython/commit/e8650a4f8c7fb76f570d4ca9c1fbe44e91c8dfaa 3.6: https://github.com/python/cpython/commit/1698cacfb924d1df452e78d11a4bf81ae7777389 2.7: https://github.com/python/cpython/commit/8eb64155ff26823542ccf0225b3d57b6ae36ea89
— Red Hat
Affected Software
Remediation
Event History
Parent advisories
This vulnerability appears in the following advisories.
Frequently Asked Questions
What is CVE-2019-16935?
CVE-2019-16935 is a reflected cross-site scripting (XSS) vulnerability found in the Python XML-RPC server.
How does the XSS vulnerability occur in Python XML-RPC server?
The XSS vulnerability occurs in the server_title field of the XML-RPC server in Python through 2.7.16, 3.x through 3.6.9, and 3.7.x through 3.7.4.
What is the severity of CVE-2019-16935?
The severity of CVE-2019-16935 is medium with a CVSS score of 6.1.
Which versions of Python are affected by CVE-2019-16935?
Python versions 2.7.16, 3.6.9, and 3.7.x through 3.7.4 are affected by CVE-2019-16935.
How can I fix CVE-2019-16935?
To fix CVE-2019-16935, update Python to version 2.7.17, 3.5.8, 3.6.10, or 3.7.5 depending on the affected version.