You can use this firefox addon:

  • XSS Me

XSS-Me is the Exploit-Me tool used to test for reflected Cross-Site Scripting (XSS). It does NOT currently test for stored XSS.

The tool works by submitting your HTML forms and substituting the form value with strings that are representative of an XSS attack. If the resulting HTML page sets a specific JavaScript value (document.vulnerable=true) then the tool marks the page as vulnerable to the given XSS string. The tool does not attempting to compromise the security of the given system. It looks for possible entry points for an attack against the system. There is no port scanning, packet sniffing, password hacking or firewall attacks done by the tool.

You can think of the work done by the tool as the same as the QA testers for the site manually entering all of these strings into the form fields.

Answer from Sarfraz on Stack Overflow
🌐
OWASP Foundation
owasp.org › www-project-web-security-testing-guide › latest › 4-Web_Application_Security_Testing › 07-Input_Validation_Testing › 01-Testing_for_Reflected_Cross_Site_Scripting
Testing for Reflected Cross Site Scripting
To detect an XSS vulnerability, the tester will typically use specially crafted input data with each input vector. Such input data is typically harmless, but trigger responses from the web browser that manifests the vulnerability.
🌐
Software Testing Help
softwaretestinghelp.com › home › security testing › cross-site scripting (xss) testing: xss alert example
Cross-Site Scripting (XSS) Testing: XSS Alert Example
May 9, 2025 - <script>alert(‘XSS’)</script> Then after clicking on the “Search” button, the entered script will be executed. As you can see in the Example, the script typed into the search field gets executed. This just shows the vulnerability of the XSS attack. However, a more harmful script may be typed as well. Many testers mix up Cross Site Scripting attacks with Javascript Injection, which is also being performed on the client side.
🌐
Hackviser
hackviser.com › cross-site scripting (xss)
Cross-Site Scripting (XSS) Attack Guide | Hackviser
# Step 1: Identify reflection points in URL parameters site.com/page?search=TEST # Search parameters site.com/page?name=TEST # User input fields site.com/page?id=TEST # ID parameters # Step 2: Test basic XSS payload in each parameter site.com/page?search=<script>alert(1)</script> site.com/page?name="><script>alert(1)</script> site.com/page?id=</script><script>alert(1)</script> # Step 3: Check if payload executes or gets reflected # - If script executes: Direct XSS possible # - If script is visible: HTML encoding might be in place # - If script disappears: Filtering is active
🌐
BrowserStack
browserstack.com › home › guide › cross-site scripting (xss) testing to prevent xss attacks
Cross-Site Scripting (XSS) Testing for Websites | BrowserStack
August 4, 2025 - <script>alert('XSS')</script> If this code runs in the browser, it means the page is not handling user input safely. Read More: Guide to Android Penetration Testing · Testing for XSS vulnerabilities can be done using different approaches depending ...
🌐
Bright Security
brightsec.com › blog › cross-site-scripting-xss
The Ultimate Beginners Guide to XSS Vulnerability - Bright Security
August 10, 2025 - Payload is broken_site/xss/3?id= ... And this worked, the site just checks once if the payload contains the script tags and removes them, once it removes them we get another set of script tags that we wrapped around the removed ones and we get ...
🌐
Cobalt
cobalt.io › blog › testing-for-reflective-xss
Testing for Reflective XSS | Cobalt
September 18, 2025 - So, 'fuzz&lt;&gt;' is equivalent to the string 'fuzz<>', where the < and > characters are encoded in HTML entity form. 2. '-alert(1)-' This part is a string that seems to be intended as an XSS payload or test input.
Find elsewhere
🌐
PortSwigger
portswigger.net › web-security › cross-site-scripting › contexts
Cross-site scripting contexts | Web Security Academy
We have built a comprehensive XSS cheat sheet to help testing web applications and filters. You can filter by events and tags and see which vectors require user interaction. The cheat sheet also contains AngularJS sandbox escapes and many other sections to help with XSS research. When the XSS context is text between HTML tags, you need to introduce some new HTML tags designed to trigger execution of JavaScript. Some useful ways of executing JavaScript are: <script>alert(document.domain)</script> <img src=1 onerror=alert(1)>
🌐
Cobalt
cobalt.io › blog › a-pentesters-guide-to-cross-site-scripting-xss
A Pentester’s Guide to Cross-Site Scripting (XSS) | Cobalt
December 1, 2022 - -------------------------------------------------------------------- Unclosed Tags: <svg onload=alert(1)// -------------------------------------------------------------------- DOM XSS: “><svg onload=alert(1)> <img src=1 onerror=alert(1)> javascript:alert(document.cookie) \“-alert(1)}// <><img src=1 onerror=alert(1)> -------------------------------------------------------------------- Another case: param=abc`;return+false});});alert`xss`;</script> abc`; Finish the string return+false}); Finish the jQuery click function }); Finish the jQuery ready function alert`xss`; Here we can execute our
🌐
Medium
medium.com › @sumayasomow › cross-site-scripting-xss-vulnerabilities-f7c8e63b2f10
Cross-Site Scripting (XSS) Vulnerabilities | by Sumayasomow | Medium
January 11, 2025 - We successfully bypassed the filter and exploited the Reflected XSS vulnerability in DVWA at High level security. Review the text that you input into the web form. How did it work? It forced an error to occur by attempting to load a non-existent image. The error was detected with onerror and the alert response was triggered to display the alert box.
🌐
OWASP Cheat Sheet Series
cheatsheetseries.owasp.org › cheatsheets › XSS_Filter_Evasion_Cheat_Sheet.html
XSS Filter Evasion - OWASP Cheat Sheet Series
Null chars also work as XSS vectors but not like above, you need to inject them directly using something like Burp Proxy or use in the URL string or if you want to write your own injection tool you can either use vim (^V^@ will produce a null) or the following program to generate it into a text file. The null char is much more useful and helped me bypass certain real world filters with a variation on this example: perl -e 'print "<IMG SRC=java\0script:alert(\"XSS\")>";' > out
🌐
TutorialsPoint
tutorialspoint.com › security_testing › testing_cross_site_scripting.htm
Testing Cross-Site Scripting
Let us execute a Stored Cross-site Scripting (XSS) attack. Below is the snapshot of the scenario. Step 2 − As per the scenario, let us login as Tom with password 'tom' as mentioned in the scenario itself. Click 'view profile' and get into edit mode. Since tom is the attacker, let us inject Java script into those edit boxes. ... Step 3 − As soon as the update is over, tom receives an alert box with the message "hacked" which means that the app is vulnerable.
🌐
Invicti
invicti.com › learn › cross-site-scripting-xss
Cross-Site Scripting (XSS) Vulnerability Guide
Note that while these examples use harmless test payloads, real-life attacks can include far more dangerous scripts. The vanilla XSS payload is simply to put a <script> tag in user input, often a form field. Popping up an alert box is the classic test action:
🌐
OWASP Foundation
owasp.org › www-project-web-security-testing-guide › latest › 4-Web_Application_Security_Testing › 07-Input_Validation_Testing › 02-Testing_for_Stored_Cross_Site_Scripting
Testing for Stored Cross Site Scripting
If the input is escaped by the application, testers should test the application for XSS filters. For instance, if the string “SCRIPT” is replaced by a space or by a NULL character then this could be a potential sign of XSS filtering in action. Many techniques exist in order to evade input filters (see testing for reflected XSS) chapter).
🌐
Reddit
reddit.com › r/xss › xss testing for quality assurance
r/xss on Reddit: XSS testing for Quality assurance
December 12, 2018 -

Hello guys. I work as a quality assurance engineer and I am testing vulnerabilities for our company website. I was asked to do some XSS testing, but I've never done it. Does anyone know any tutorial so I can learn some simple test cases?

Thanks in advance

🌐
Pentest-Tools
pentest-tools.com › home › website scanner › xss scanner
XSS Scanner - Online Scan for Cross-site Scripting Vulnerabilities
Test for script injection, and receive confirmed XSS findings with minimal configuration. Our scanner injects real JavaScript payloads, verifies execution, and gives you proof, so you can trust what you fix.
🌐
PortSwigger
portswigger.net › web-security › cross-site-scripting
What is cross-site scripting (XSS) and how to prevent it? | Web Security Academy
In fact, you solve the majority of our XSS labs by invoking alert() in a simulated victim's browser.
🌐
Valor Software
valor-software.com › articles › cross-site-scripting-xss-a-qa-engineers-guide
Cross-Site Scripting (XSS): a QA Engineer's Guide - Valor Blog
August 14, 2020 - Now that we have a good reason to continue testing this input, let’s try again with another script. There are many scripts you could choose from, but I find that it’s easier to use those which will produce an alert on the screen. That is why we will try <script> alert("XSS")</script> apple.