📅  最后修改于: 2023-12-03 15:21:19.770000             🧑  作者: Mango
XSS Polyglot is a type of cross-site scripting payload that can work in multiple contexts and browsers. It's a piece of code that can be crafted in a way that triggers a vulnerability in a web application, allowing an attacker to execute arbitrary JavaScript code in a victim's browser.
The idea behind the XSS Polyglot is to create a payload that can pass through filters and still execute in the targeted context. To accomplish this, the payload is made up of JavaScript that works in different browsers and contexts, such as the address bar, input fields, or HTTP headers.
One of the most well-known XSS Polyglots is the BeEF XSS Polyglot, which is a combination of different tricks to bypass filters and execute the payload. For example, it includes JavaScript code that creates a variable named "location", which overrides the native JavaScript "location" object and allows the payload to execute in the address bar. Other tricks include using a comment tag to evade filters or encoding characters to fool parsers.
XSS Polyglots are important because they can be used to exploit vulnerabilities in web applications that might have filters or input validation mechanisms in place. They can evade these defenses and execute malicious code in the browser of the user, leading to serious consequences such as stealing sensitive information, hijacking the session, or performing actions on behalf of the user.
'"><svg onload=alert(document.domain)>
This payload is a simple example of an XSS Polyglot that works in different contexts. It's a combination of three different attack vectors:
XSS Polyglots are a powerful tool for attackers to bypass filters and execute malicious code in web applications. As a developer, it's important to understand the concepts behind XSS Polyglots and to implement proper defenses such as input validation, output encoding, and content security policies. As a tester, it's important to verify that the application is protected against this kind of vulnerability and that filters are not easily evaded.