Direct Link: https://github.com/s0md3v/XSStrike
Last Updated: 2 Years Ago
XSStrike Wiki • Usage • FAQ • For Developers • Compatibility • Gallery
XSStrike is a Cross Site Scripting detection suite equipped with four hand written parsers, an intelligent payload generator, a powerful fuzzing engine and an incredibly fast crawler.
Instead of injecting payloads and checking it works like all the other tools do, XSStrike analyses the response with multiple parsers and then crafts payloads that are guaranteed to work by context analysis integrated with a fuzzing engine. Here are some examples of the payloads generated by XSStrike:
}]};(confirm)()//\
<A%0aONMouseOvER%0d=%0d[8].find(confirm)>z
</tiTlE/><a%0donpOintErentER%0d=%0d(prompt)``>z
</SCRiPT/><DETAILs/+/onpoINTERenTEr%0a=%0aa=prompt,a()//
Apart from that, XSStrike has crawling, fuzzing, parameter discovery, WAF detection capabilities as well. It also scans for DOM XSS vulnerabilities.
Main Features
- Reflected and DOM XSS scanning
- Multi-threaded crawling
- Context analysis
- Configurable core
- WAF detection & evasion
- Outdated JS lib scanning
- Intelligent payload generator
- Handmade HTML & JavaScript parser
- Powerful fuzzing engine
- Blind XSS support
- Highly researched work-flow
- Complete HTTP support
- Bruteforce payloads from a file
- Powered by Photon, Zetanize and Arjun
- Payload Encoding
Documentation
FAQ
- It says fuzzywuzzy isn't installed but it is.
- What's up with Blind XSS?
- Why XSStrike boasts that it is the most advanced XSS detection suite?
- I like the project, what enhancements and features I can expect in future?
- What's the false positive/negative rate?
- Tool xyz works against the target, while XSStrike doesn't!
- Can I copy it's code?
- What if I want to embed it into a proprietary software?
Gallery
DOM XSS
Reflected XSS
Crawling
Fuzzing
Bruteforcing payloads from a file
Interactive HTTP Headers Prompt
Hidden Parameter Discovery
Contribution, Credits & License
Ways to contribute
- Suggest a feature
- Report a bug
- Fix something and open a pull request
- Help me document the code
- Spread the word
Licensed under the GNU GPLv3, see LICENSE for more information.
The WAF signatures in /db/wafSignatures.json
are taken & modified from sqlmap. I extracted them from sqlmap's waf detection modules which can found here and converted them to JSON./plugins/retireJS.py
is a modified version of retirejslib.