Awesome Web Security
š¶ Curated list of Web Security materials and resources.
Needless to say, most websites suffer from various types of bugs which may eventually lead to vulnerabilities. Why
would this happen so often? There can be many factors involved including misconfiguration, shortage of engineersā
security skills, etc. To combat this, here is a curated list of Web Security materials and resources for learning
cutting edge penetration techniques, and I highly encourage you to read this article āSo you want to be a web security
researcher?ā first.
Please read the contribution guidelines before contributing.
š Want to strengthen your penetration skills?
I would recommend playing some awesome-ctfs.
If you enjoy this awesome list and would like to support it, check out my Patreon page :)
Also, donāt forget to check out my repos š¾ or say hi on my Twitter!
Contents
Digests
Forums
## Introduction
### XSS - Cross-Site Scripting
### Prototype Pollution
### CSV Injection
### SQL Injection
### Command Injection
### ORM Injection
### FTP Injection
### XXE - XML eXternal Entity
### CSRF - Cross-Site Request Forgery
### Clickjacking
### SSRF - Server-Side Request Forgery
### Web Cache Poisoning
### Relative Path Overwrite
### Open Redirect
### Security Assertion Markup Language (SAML)
### Upload
### Rails
### AngularJS
### ReactJS
### SSL/TLS
### Webmail
### NFS
### AWS
### Azure
### Fingerprint
### Sub Domain Enumeration
### Crypto
### Web Shell
### OSINT
### DNS Rebinding
### Deserialization
### OAuth
### JWT
Evasions
### XXE
### CSP
### WAF
### JSMVC
### Authentication
Tricks
### CSRF
### Clickjacking
### Remote Code Execution
### XSS
### SQL Injection
### NoSQL Injection
### FTP Injection
### XXE
### SSRF
### Web Cache Poisoning
### Header Injection
### URL
### Deserialization
### OAuth
### Others
Browser Exploitation
Frontend (like SOP bypass, URL spoofing, and
something like that)
Backend (core of Browser
implementation, and often refers to C or C++ part)
PoCs
### Database
- js-vuln-db - Collection of JavaScript engine CVEs with PoCs by
[@tunz](https://github.com/tunz).
- awesome-cve-poc - Curated list of CVE PoCs by [@qazbnm456](https://github.com/qazbnm456).
- Some-PoC-oR-ExP - åē§ę¼ę“pocćExpēę¶éęē¼å by [@coffeehb](https://github.com/coffeehb).
- uxss-db - Collection of UXSS CVEs with PoCs by [@Metnew](https://github.com/Metnew).
- SPLOITUS - Exploits & Tools Search Engine by [@i_bo0om](https://twitter.com/i_bo0om).
- Exploit Database - ultimate archive of Exploits, Shellcode, and
Security Papers by Offensive Security.
Cheetsheets
### Auditing
- prowler - Tool for AWS security assessment, auditing and
hardening by [@Alfresco](https://github.com/Alfresco).
- slurp - Evaluate the security of S3 buckets by [@hehnope](https://github.com/hehnope).
- A2SV - Auto Scanning to SSL Vulnerability by [@hahwul](https://github.com/hahwul).
### Command Injection
- commix - Automated All-in-One OS command injection and
exploitation tool by [@commixproject](https://github.com/commixproject).
### Reconnaissance
#### OSINT - Open-Source Intelligence
- Shodan - Shodan is the worldās first search engine for Internet-connected
devices by [@shodanhq](https://twitter.com/shodanhq).
- Censys - Censys is a search engine that allows computer scientists to ask
questions about the devices and networks that compose the Internet by University of
Michigan.
- urlscan.io - Service which analyses websites and the resources they request by
[@heipei](https://twitter.com/heipei).
- ZoomEye - Cyberspace Search Engine by [@zoomeye_team](https://twitter.com/zoomeye_team).
- FOFA - Cyberspace Search Engine by BAIMAOHUI.
- NSFOCUS - THREAT INTELLIGENCE PORTAL by NSFOCUS GLOBAL.
- Photon - Incredibly fast crawler designed for OSINT by [@s0md3v](https://github.com/s0md3v).
- FOCA - FOCA (Fingerprinting Organizations with Collected
Archives) is a tool used mainly to find metadata and hidden information in the documents its scans by ElevenPaths.
- SpiderFoot - Open source footprinting and intelligence-gathering tool
by [@binarypool](https://twitter.com/binarypool).
- xray - XRay is a tool for recon, mapping and OSINT gathering
from public networks by [@evilsocket](https://github.com/evilsocket).
- gitrob - Reconnaissance tool for GitHub organizations by
[@michenriksen](https://github.com/michenriksen).
- GSIL - Github Sensitive Information Leakageļ¼Githubęęäæ”ęÆę³é²ļ¼by [@FeeiCN](https://github.com/FeeiCN).
- raven - raven is a Linkedin information gathering tool that can be
used by pentesters to gather information about an organization employees using Linkedin by [@0x09AL](https://github.com/0x09AL).
- ReconDog - Reconnaissance Swiss Army Knife by [@s0md3v](https://github.com/s0md3v).
- Databases - start.me - Various databases which you can use for
your OSINT research by [@technisette](https://twitter.com/technisette).
- peoplefindThor - the easy way to find people on Facebook by postkassen.
- tinfoleak - The most complete open-source tool for
Twitter intelligence analysis by [@vaguileradiaz](https://github.com/vaguileradiaz).
- Raccoon - High performance offensive security tool for
reconnaissance and vulnerability scanning by [@evyatarmeged](https://github.com/evyatarmeged).
- Social Mapper - Social Media Enumeration &
Correlation Tool by Jacob Wilkin(Greenwolf) by [@SpiderLabs](https://github.com/SpiderLabs).
- espi0n/Dockerfiles - Dockerfiles for various OSINT tools by
[@espi0n](https://github.com/espi0n).
#### Sub Domain Enumeration
- Sublist3r - Sublist3r is a multi-threaded sub-domain
enumeration tool for penetration testers by [@aboul3la](https://github.com/aboul3la).
- EyeWitness - EyeWitness is designed to take screenshots
of websites, provide some server header info, and identify default credentials if possible by [@ChrisTruncer](https://github.com/ChrisTruncer).
- subDomainsBrute - A simple and fast sub domain brute
tool for pentesters by [@lijiejie](https://github.com/lijiejie).
- AQUATONE - Tool for Domain Flyovers by [@michenriksen](https://github.com/michenriksen).
- domain_analyzer - Analyze the security of any domain by
finding all the information possible by [@eldraco](https://github.com/eldraco).
- VirusTotal domain
information - Searching for domain information by VirusTotal.
- Certificate Transparency - Googleās Certificate
Transparency project fixes several structural flaws in the SSL certificate system by [@google](https://github.com/google).
- Certificate Search - Enter an Identity (Domain Name, Organization Name, etc), a
Certificate Fingerprint (SHA-1 or SHA-256) or a crt.sh ID to search certificate(s) by [@crtsh](https://github.com/crtsh).
- GSDF - Domain searcher named GoogleSSLdomainFinder by [@We5ter](https://github.com/We5ter).
### Code Generating
- VWGen - Vulnerable Web applications Generator by [@qazbnm456](https://github.com/qazbnm456).
### Fuzzing
- wfuzz - Web application bruteforcer by [@xmendez](https://github.com/xmendez).
- charsetinspect - Script that inspects
multi-byte character sets looking for characters with specific user-defined properties by [@hack-all-the-things](https://github.com/hack-all-the-things).
- IPObfuscator - Simple tool to convert the IP to a
DWORD IP by [@OsandaMalith](https://github.com/OsandaMalith).
- domato - DOM fuzzer by [@google](https://github.com/google).
- FuzzDB - Dictionary of attack patterns and primitives for
black-box application fault injection and resource discovery.
- dirhunt - Web crawler optimized for searching and analyzing the
directory structure of a site by [@nekmo](https://github.com/Nekmo).
- ssltest - Online service that performs a deep analysis of the
configuration of any SSL web server on the public internet. Provided by Qualys
SSL Labs.
- fuzz.txt - Potentially dangerous files by [@Bo0oM](https://github.com/Bo0oM).
### Scanning
- wpscan - WPScan is a black box WordPress vulnerability
scanner by [@wpscanteam](https://github.com/wpscanteam).
- JoomlaScan - Free software to find the components installed
in Joomla CMS, built out of the ashes of Joomscan by [@drego85](https://github.com/drego85).
- WAScan - Is an open source web application security scanner that
uses āblack-boxā method, created by [@m4ll0k](https://github.com/m4ll0k).
- Nuclei - Nuclei is a fast tool for configurable
targeted scanning based on templates offering massive extensibility and ease of use by [@projectdiscovery](https://github.com/projectdiscovery).
### Penetration Testing
- Burp Suite - Burp Suite is an integrated platform for performing
security testing of web applications by portswigger.
- TIDoS-Framework - A comprehensive web
application audit framework to cover up everything from Reconnaissance and OSINT to Vulnerability Analysis by
[@_tID](https://github.com/theInfectedDrake).
- Astra - Automated Security Testing For REST APIās by
[@flipkart-incubator](https://github.com/flipkart-incubator).
- aws_pwn - A collection of AWS penetration testing junk by [@dagrz](https://github.com/dagrz).
- grayhatwarfare - Public buckets by grayhatwarfare.
### Offensive
#### XSS - Cross-Site Scripting
- beef - The Browser Exploitation Framework Project by beefproject.
- JShell - Get a JavaScript shell with XSS by [@s0md3v](https://github.com/s0md3v).
- XSStrike - XSStrike is a program which can fuzz and bruteforce
parameters for XSS. It can also detect and bypass WAFs by [@s0md3v](https://github.com/s0md3v).
- xssor2 - XSSāOR - Hack with JavaScript by [@evilcos](https://github.com/evilcos).
- csp evaluator - A tool for evaluating content-security-policies by Csper.
#### SQL Injection
- sqlmap - Automatic SQL injection and database takeover
tool.
#### Template Injection
- tplmap - Code and Server-Side Template Injection Detection and
Exploitation Tool by [@epinna](https://github.com/epinna).
#### XXE
- dtd-finder - List DTDs and generate XXE payloads using
those local DTDs by [@GoSecure](https://github.com/GoSecure).
#### Cross Site Request Forgery
- XSRFProbe - The Prime CSRF Audit & Exploitation
Toolkit by [@0xInfection](https://github.com/0xinfection).
#### Server-Side Request Forgery
### Leaking
- HTTPLeaks - All possible ways, a website can leak HTTP
requests by [@cure53](https://github.com/cure53).
- dvcs-ripper - Rip web accessible (distributed) version control
systems: SVN/GIT/HGā¦ by [@kost](https://github.com/kost).
- DVCS-Pillage - Pillage web accessible GIT, HG and BZR
repositories by [@evilpacket](https://github.com/evilpacket).
- GitMiner - Tool for advanced mining for content on Github by
[@UnkL4b](https://github.com/UnkL4b).
- gitleaks - Searches full repo history for secrets and keys
by [@zricethezav](https://github.com/zricethezav).
- CSS-Keylogging - Chrome extension and Express server
that exploits keylogging abilities of CSS by [@maxchehab](https://github.com/maxchehab).
- pwngitmanager - Git manager for pentesters by [@allyshka](https://github.com/allyshka).
- snallygaster - Tool to scan for secret files on HTTP
servers by [@hannob](https://github.com/hannob).
- LinkFinder - Python script that finds endpoints in
JavaScript files by [@GerbenJavado](https://github.com/GerbenJavado).
### Detecting
- sqlchop - SQL injection detection engine by chaitin.
- xsschop - XSS detection engine by chaitin.
- retire.js - Scanner detecting the use of JavaScript
libraries with known vulnerabilities by [@RetireJS](https://github.com/RetireJS).
- malware-jail - Sandbox for semi-automatic Javascript
malware analysis, deobfuscation and payload extraction by [@HynekPetrak](https://github.com/HynekPetrak).
- repo-supervisor - Scan your code for security
misconfiguration, search for passwords and secrets.
- bXSS - bXSS is a simple Blind XSS application adapted from cure53.de/m by [@LewisArdern](https://github.com/LewisArdern).
- OpenRASP - An open source RASP solution actively maintained by
Baidu Inc.Ā With context-aware detection algorithm the project achieved nearly no false positives. And less than 3%
performance reduction is observed under heavy server load.
- GuardRails - A GitHub App that provides security feedback in
Pull Requests.
### Preventing
- DOMPurify - DOM-only, super-fast, uber-tolerant XSS sanitizer
for HTML, MathML and SVG by Cure53.
- js-xss - Sanitize untrusted HTML (to prevent XSS) with a
configuration specified by a Whitelist by [@leizongmin](https://github.com/leizongmin).
- Acra - Client-side encryption engine for SQL databases, with
strong selective encryption, SQL injections prevention and intrusion detection by [@cossacklabs](https://www.cossacklabs.com/).
- Csper - A set of tools for building/evaluating/monitoring content-security-policy
to prevent/detect cross site scripting by Csper.
### Proxy
- Charles - HTTP proxy / HTTP monitor / Reverse Proxy that enables a
developer to view all of the HTTP and SSL / HTTPS traffic between their machine and the Internet.
- mitmproxy - Interactive TLS-capable intercepting HTTP proxy
for penetration testers and software developers by [@mitmproxy](https://github.com/mitmproxy).
### Webshell
- nano - Family of code golfed PHP shells by [@s0md3v](https://github.com/s0md3v).
- webshell - This is a webshell open source project by [@tennc](https://github.com/tennc).
- Weevely - Weaponized web shell by [@epinna](https://github.com/epinna).
- Webshell-Sniper - Manage your website via terminal
by [@WangYihang](https://github.com/WangYihang).
- Reverse-Shell-Manager - Reverse Shell Manager
via TerminalĀ [@WangYihang](https://github.com/WangYihang).
- reverse-shell - Reverse Shell as a Service by [@lukechilds](https://github.com/lukechilds).
- PhpSploit - Full-featured C2 framework which silently
persists on webserver via evil PHP oneliner by [@nil0x42](https://github.com/nil0x42).
### Disassembler
- plasma - Plasma is an interactive disassembler for
x86/ARM/MIPS by [@plasma-disassembler](https://github.com/plasma-disassembler).
- radare2 - Unix-like reverse engineering framework and
commandline tools by [@radare](https://github.com/radare).
- IaitÅ - Qt and C++ GUI for radare2 reverse engineering framework by
[@hteso](https://github.com/hteso).
### Decompiler
- CFR - Another java decompiler by [@LeeAtBenf](https://twitter.com/LeeAtBenf).
### DNS Rebinding
- DNS Rebind Toolkit - DNS Rebind Toolkit is a
frontend JavaScript framework for developing DNS Rebinding exploits against vulnerable hosts and services on a
local area network (LAN) by [@brannondorsey](https://github.com/brannondorsey)
- dref - DNS Rebinding Exploitation Framework. Dref does the
heavy-lifting for DNS rebinding by [@mwrlabs](https://github.com/mwrlabs)
- Singularity of Origin - It includes the necessary
components to rebind the IP address of the attack server DNS name to the target machineās IP address and to serve
attack payloads to exploit vulnerable software on the target machine by [@nccgroup](https://github.com/nccgroup)
- Whonow DNS Server - A malicious DNS server for executing
DNS Rebinding attacks on the fly by [@brannondorsey](https://github.com/brannondorsey)
### Others
- Dnslogger - DNS Logger by [@iagox86](https://github.com/iagox86).
- CyberChef - The Cyber Swiss Army Knife - a web app for
encryption, encoding, compression and data analysis - by [@GCHQ](https://github.com/gchq).
- ntlm_challenger - Parse NTLM over HTTP challenge messages
by [@b17zr](https://github.com/b17zr).
- cefdebug - Minimal code to connect to a CEF debugger by [@taviso](https://github.com/taviso).
- ctftool - Interactive CTF Exploration Tool by [@taviso](https://github.com/taviso).
Social Engineering Database
Blogs
- [@HackwithGitHub](https://twitter.com/HackwithGithub)
- Initiative to showcase open source hacking tools for hackers and pentesters
- [@filedescriptor](https://twitter.com/filedescriptor)
- Active penetrator often tweets and writes useful articles
- [@cure53berlin](https://twitter.com/cure53berlin) - Cure53 is a German cybersecurity firm.
- [@XssPayloads](https://twitter.com/XssPayloads) - The
wonderland of JavaScript unexpected usages, and more.
- [@kinugawamasato](https://twitter.com/kinugawamasato)
- Japanese web penetrator.
- [@h3xstream](https://twitter.com/h3xstream/) - Security
Researcher, interested in web security, crypto, pentest, static analysis but most of all, samy is my hero.
- [@garethheyes](https://twitter.com/garethheyes) - English
web penetrator.
- [@hasegawayosuke](https://twitter.com/hasegawayosuke)
- Japanese javascript security researcher.
- [@shhnjk](https://twitter.com/shhnjk) - Web and Browsers
Security Researcher.
Practices
### Application
- OWASP Juice Shop - Probably the most modern and
sophisticated insecure web application - Written by [@bkimminich](https://github.com/bkimminich) and the [@owasp_juiceshop](https://twitter.com/owasp_juiceshop) team.
- BadLibrary - Vulnerable web application for
training - Written by [@SecureSkyTechnology](https://github.com/SecureSkyTechnology).
- Hackxor - Realistic web application hacking game - Written by [@albinowax](https://twitter.com/albinowax).
- SELinux Game - Learn SELinux by doing. Solve Puzzles, show skillz -
Written by [@selinuxgame](https://twitter.com/selinuxgame).
- Portswigger Web Security Academy - Free trainings and labs -
Written by PortSwigger.
### AWS
- FLAWS - Amazon AWS CTF challenge - Written by [@0xdabbad00](https://twitter.com/0xdabbad00).
- CloudGoat - Rhino Security Labsā āVulnerable by
Designā AWS infrastructure setup tool - Written by [@RhinoSecurityLabs](https://github.com/RhinoSecurityLabs).
### XSS
- XSS game - Google XSS Challenge - Written by Google.
- prompt(1) to win - Complex 16-Level XSS Challenge held in summer 2014 (+4 Hidden
Levels) - Written by [@cure53](https://github.com/cure53).
- alert(1) to win - Series of XSS challenges - Written by [@steike](https://twitter.com/steike).
- XSS Challenges - Series of XSS challenges - Written by yamagata21.
### ModSecurity / OWASP ModSecurity Core Rule Set
Miscellaneous
Code of Conduct
Please note that this project is released with a Contributor Code of Conduct. By
participating in this project you agree to abide by its terms.
License
To the extent possible under law, [@qazbnm456](https://qazbnm456.github.io/) has waived all copyright and related or
neighboring rights to this work.