I tested this today with Nova using a similar XML request (lots of entity expansions) and cause the same exploit. Essentially the request took forever and pegged the CPU on the machine.
We are going to need a different fix in Nova though because minidom is actually the XML call we use there:
dom = minidom.parseString(body)
Both Cinder and Quantum will have similar issues due to the fact that they use minidom.parseString as well. So whatever we do to fix minidom in Nova should work there as well.
From what I can tell Glance is clean though.
----
I'm looking into a fix for the minidom issue... shall I post the patches into this ticket?
ttx:
I tested this today with Nova using a similar XML request (lots of entity expansions) and cause the same exploit. Essentially the request took forever and pegged the CPU on the machine.
We are going to need a different fix in Nova though because minidom is actually the XML call we use there:
dom = minidom. parseString( body)
Both Cinder and Quantum will have similar issues due to the fact that they use minidom.parseString as well. So whatever we do to fix minidom in Nova should work there as well.
From what I can tell Glance is clean though.
----
I'm looking into a fix for the minidom issue... shall I post the patches into this ticket?