keystoneauth auth plugins should not use etree XML parsing
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Security Advisory |
Won't Fix
|
Undecided
|
Unassigned | ||
keystoneauth |
Triaged
|
Medium
|
Unassigned | ||
python-keystoneclient |
Won't Fix
|
Undecided
|
Brant Knudson |
Bug Description
XML parsing is surprisingly difficult and fraught with danger, for example entity expansion makes it easy to cause a lot of memory to be used and therefore crash your system. keystoneclient is using etree parsing which has these potential issues, although in the case of keystoneclient it's the response from the IdP which I think is generally trusted.
This is in python-
There's a defusedxml parser that has protections against these attacks and should therefore be used instead if possible - https:/
This was caught by bandit 0.17.0.
I'm going to start this out as private security so we can think about it some more before it goes public, even though it's probably not something that needs an issue since I think the source is generally trusted. If you can't trust your IdP then who can you trust?
Changed in keystoneauth: | |
status: | New → Triaged |
importance: | Undecided → Medium |
summary: |
- keystoneclient should not use etree XML parsing + keystoneauth auth plugins should not use etree XML parsing |
Changed in keystoneauth: | |
assignee: | Kairat Kushaev (kkushaev) → Pavlo Shchelokovskyy (pshchelo) |
Since this report concerns a possible security risk, an incomplete security advisory task has been added while the core security reviewers for the affected project or projects confirm the bug and discuss the scope of any vulnerability along with potential solutions.