OWSLib's XML parser (which supports both lxml
and xml.etree
) does not disable entity resolution for lxml
, and could lead to arbitrary file reads from an attacker-controlled XML payload. This affects all XML parsing in the codebase.
resolve_entities=False
to lxml
's parser: https://github.com/geopython/OWSLib/pull/863patch_well_known_namespaces(etree)
etree.set_default_parser(
parser=etree.XMLParser(resolve_entities=False)
)
{ "nvd_published_at": "2023-03-08T00:15:00Z", "cwe_ids": [ "CWE-611" ], "severity": "HIGH", "github_reviewed": true, "github_reviewed_at": "2023-03-07T20:41:36Z" }