Identification
Last updated
Last updated
We can normally detect Blind XXE
using the same way how we trigger XXE SSRF attack
This payload makes the server to give a backend HTTP request to the attacker's URL, Meanwhile the attacker can monitor for the resulting DNS lookup and HTTP request and therefore it confirms there is a Blind XXE
.
Use the above payload in the check product xml format, modify it to your current Burp collab client's host and receive a HTTP ping back
XXE attacks
using regular entities are blocked, due to some input validation by the application's backend by increasing the security of the XML parser
.
In such situations, we might use XML parameter entities instead, XML parameters
are XML entities
itself which can be referenced elsewhere within the DTD.
The declaration of an XML parameter entity includes the percent character before the entity name
Parameter entities are referenced using the percent character instead of the usual &
Which means we can detect and exploit Blind XXE using out-of-band network interaction with the following payload !
When we try our usual way to exploit this, we get an error stating
Entities aren't allowed because of security reasons
So this means, we can't insert an external entity and call it in the productID parameter
This XXE payload creates an XML parameter entity called xxe
and then uses the entity within the DTD