aboutcode-org / aboutcode-org/fetchcode

package_managers.py uses ET.ElementTree against untrusted data

Open
#96 5 comments 1 reaction 0 assignees View on GitHub
bug
Dominant language
HTML
Stars
13
Forks
24
PR merge metrics
No merged PRs in 30d

Description

The [python docs](https://docs.python.org/3.8/library/xml.etree.elementtree.html) mention:
> **Warning**
>
> The xml.etree.ElementTree module is not secure against maliciously constructed data. If you need to parse untrusted or unauthenticated data see XML vulnerabilities.

This is used in line 265 here:
https://github.com/nexB/vulnerablecode/blob/369897fb947584e44581df075c6e76638737f2ca/vulnerabilities/package_managers.py#L250-L266

The [docs further suggest](https://docs.python.org/3.8/library/xml.html#the-defusedxml-package) to use [defusedxml](https://pypi.org/project/defusedxml/) instead:

> defusedxml is a pure Python package with modified subclasses of all stdlib XML parsers that prevent any potentially malicious operation. Use of this package is recommended for any server code that parses untrusted XML data. The package also ships with example exploits and extended documentation on more XML exploits such as XPath injection.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.