https://dl.acm.org/doi/10.1145/2508859.2516723

BibTeX

@inproceedings{10.1145/2508859.2516723, author = {Heiderich, Mario and Schwenk, J”{o}rg and Frosch, Tilman and Magazinius, Jonas and Yang, Edward Z.}, title = {mXSS attacks: attacking well-secured web-applications by using innerHTML mutations}, year = {2013}, isbn = {9781450324779}, publisher = {Association for Computing Machinery}, address = {New York, NY, USA}, url = {https://doi.org/10.1145/2508859.2516723}, doi = {10.1145/2508859.2516723}, abstract = {Back in 2007, Hasegawa discovered a novel Cross-Site Scripting (XSS) vector based on the mistreatment of the backtick character in a single browser implementation. This initially looked like an implementation error that could easily be fixed. Instead, as this paper shows, it was the first example of a new class of XSS vectors, the class of mutation-based XSS (mXSS) vectors, which may occur in innerHTML and related properties. mXSS affects all three major browser families: IE, Firefox, and Chrome.We were able to place stored mXSS vectors in high-profile applications like Yahoo! Mail, Rediff Mail, OpenExchange, Zimbra, Roundcube, and several commercial products. mXSS vectors bypassed widely deployed server-side XSS protection techniques (like HTML Purifier, kses, htmlLawed, Blueprint and Google Caja), client-side filters (XSS Auditor, IE XSS Filter), Web Application Firewall (WAF) systems, as well as Intrusion Detection and Intrusion Prevention Systems (IDS/IPS). We describe a scenario in which seemingly immune entities are being rendered prone to an attack based on the behavior of an involved party, in our case the browser. Moreover, it proves very difficult to mitigate these attacks: In browser implementations, mXSS is closely related to performance enhancements applied to the HTML code before rendering; in server side filters, strict filter rules would break many web applications since the mXSS vectors presented in this paper are harmless when sent to the browser.This paper introduces and discusses a set of seven different subclasses of mXSS attacks, among which only one was previously known. The work evaluates the attack surface, showcases examples of vulnerable high-profile applications, and provides a set of practicable and low-overhead solutions to defend against these kinds of attacks.}, booktitle = {Proceedings of the 2013 ACM SIGSAC Conference on Computer & Communications Security}, pages = {777–788}, numpages = {12}, keywords = {web security, unauthorized access, mxss, mutation-based xss, innerhtml, cross-site scripting, browser security}, location = {Berlin, Germany}, series = {CCS ‘13} }