What is DOM Snitch?
DOM Snitch is an experimental Chrome extension that enables non-security testers identify common bad practices when producing client-side code and security testers gain better understanding of the transformations that occur within the DOM.
Ability to listen to DOM modification and collect debug data about those modifications
Ability to sort and group collected information as means to simplify the analysis process of this data
Ability to passively detect and mark as errors or warnings some easy to spot security issues, including:
Uses of user-controlled data that comes from either URL, referrer, or cookies while constructing DOM where the data is also checked for containing HTML escape characters (i.e. <>"')
Uses of scripts that are not hosted at the application's domain
Uses of scripts that would result in mixed content errors
Uses of invalid JSON syntax, resulting in the use of eval() as opposed to a much safer alternative function (e.g. JSON.parse())
Assignments of document.domain to anything but the application's original hostname value (as given by the browser at rendering time)
Ability to export all or subsets of collected data as plain text or through Google Docs