DOM Invader

DOM Invader is a tool that makes it much quicker and easier to test for DOM-based cross-site scripting (DOM XSS) vulnerabilities. It comes preinstalled as an extension in Burp's browser.

Normally, identifying and exploiting DOM XSS involves several tedious manual steps, including trawling through complex, minified JavaScript. DOM Invader does a lot of this hard work for you, meaning you can identify interesting behavior in seconds rather than hours.

You access all of DOM Invader's features via the DOM Invader view in the DevTools panel of Burp's browser:

For an overview of how to use DOM Invader, check out the following video demonstration by PortSwigger researcher and the creator of DOM Invader, Gareth Heyes.

PortSwigger Research

Finding DOM Polyglot XSS in PayPal the Easy Way

Enabling DOM Invader

DOM Invader is preinstalled in Burp's browser, but is disabled by default as some of its features may interfere with your other testing activities. To enable it, click the Burp Suite icon in the upper-right corner of Burp's browser (if you can't see it, click the jigsaw icon first), click on Burp Suite, go to the DOM Invader tab, then toggle the DOM Invader is on/off switch. You will then be prompted to click the Reload button in order for your changes to take effect.

Enabling DOM Invader

Once DOM Invader is enabled, open the browser's DevTools panel. This will now contain a DOM Invader tab. For the best experience, we recommend docking the DevTools panel to the bottom of the browser window.

Note

In Burp, if the User options > Burp's browser > Allow Burp's browser to store settings and history option is enabled, DOM Invader will remember your previous settings, including whether it was on or off. Keep this in mind if you close Burp's browser while DOM Invader is still enabled.

DOM Invader settings

If you click the Burp Suite icon in the upper-right corner of the browser, the DOM Invader tab provides a number of settings that let you change the behavior to suit different testing scenarios.