# Awesome Web Security [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
[](https://www.w3.org/TR/html5/)
> 🐶 A curated list of Web Security materials and resources.
*Please read the [contribution guidelines](CONTRIBUTING.md) before contributing.*
---
🌈 Want to strengthen your penetration skills?
I would recommend to play some awesome-ctfs.
---
Check out my [repos](https://github.com/qazbnm456) 🐾 or say *hi* on my [Twitter](https://twitter.com/qazbnm456).
## Menu
- [Collection](#collection)
- [Resource](#resource)
- [XSS](#resource-xss)
- [SQL Injection](#resource-sql-injection)
- [XML](#resource-xml)
- [CSRF](#resource-csrf)
- [Rails](#resource-rails)
- [AngularJS](#resource-angularjs)
- [Evasion](#evasion)
- [CSP](#evasion-csp)
- [WAF](#evasion-waf)
- [JSMVC](#evasion-jsmvc)
- [Trick](#trick)
- [Remote Code Execution](#trick-rce)
- [XSS](#trick-xss)
- [SQL Injection](#trick-sql-injection)
- [SSRF](#trick-ssrf)
- [Header Injection](#trick-header-injection)
- [Others](#trick-others)
- [Browser Exploitation](#browser-exploitation)
- [PoC](#poc)
- [JavaScript](#poc-javascript)
- [Tool](#tool)
- [Code Generating](#tool-code-generating)
- [Disassembler](#tool-disassembler)
- [Fuzzing](#tool-fuzzing)
- [Penetrating](#tool-penetrating)
- [Leaking](#tool-leaking)
- [Detecting](#tool-detecting)
- [Preventing](#tool-preventing)
- [Blog](#blog)
- [Twitter User](#twitter-user)
- [Miscellaneous](#miscellaneous)
- [Practice](#practice)
- [AWS](#practice-aws)
- [XSS](#practice-xss)
## Collection
* [Drops (backup)](https://drops.secquan.org/)
* [Paper from Seebug](http://paper.seebug.org/)
* [Freebuf](http://www.freebuf.com/)
* [安全脉搏](https://www.secpulse.com/)
## Resource
### XSS
* [H5SC](https://github.com/cure53/H5SC) - HTML5 Security Cheatsheet - A collection of HTML5 related XSS attack vectors by [@cure53](https://github.com/cure53).
* [XSS.png](https://github.com/jackmasa/XSS.png) - A XSS mind map by [@jackmasa](https://github.com/jackmasa).
### SQL Injection
* [HQL for pentesters](http://blog.h3xstream.com/2014/02/hql-for-pentesters.html)
### XML
* [XML实体攻击 - 从内网探测到命令执行步步惊心](http://www.freebuf.com/video/49961.html), written by 张天琪.
### CSRF
* [讓我們來談談 CSRF](http://blog.techbridge.cc/2017/02/25/csrf-introduction/), written by [TechBridge](http://blog.techbridge.cc/).
### Rails
* [Rails 動態樣板路徑的風險](http://devco.re/blog/2015/07/24/the-vulnerability-of-dynamic-render-paths-in-rails/), written by [Shaolin](http://devco.re/blog/author/shaolin/).
* [Rails Security](http://php.ph/wydrops/drops/Rails%20Security%20(%E4%B8%8A).pdf), written by [@qazbnm456](https://github.com/qazbnm456).
### AngularJS
* [XSS without HTML: Client-Side Template Injection with AngularJS](http://blog.portswigger.net/2016/01/xss-without-html-client-side-template.html), written by [Gareth Heyes](https://www.blogger.com/profile/10856178524811553475).
## Evasion
### CSP
* [CSP: bypassing form-action with reflected XSS](https://labs.detectify.com/2016/04/04/csp-bypassing-form-action-with-reflected-xss/), written by [Detectify Labs](https://labs.detectify.com/).
### WAF
* [浅谈json参数解析对waf绕过的影响](https://xianzhi.aliyun.com/forum/read/553.html), written by [doggy](https://xianzhi.aliyun.com/forum/u.php?uid=1723895737531437).
* [Airbnb – When Bypassing JSON Encoding, XSS Filter, WAF, CSP, and Auditor turns into Eight Vulnerabilities](https://buer.haus/2017/03/08/airbnb-when-bypassing-json-encoding-xss-filter-waf-csp-and-auditor-turns-into-eight-vulnerabilities/), written by [@Brett Buerhaus](https://twitter.com/bbuerhaus).
### JSMVC
* [JavaScript MVC and Templating Frameworks](http://www.slideshare.net/x00mario/jsmvcomfg-to-sternly-look-at-javascript-mvc-and-templating-frameworks), written by [Mario Heiderich](http://www.slideshare.net/x00mario).
## Trick
### Remote Code Execution
* [Exploiting Node.js deserialization bug for Remote Code Execution](https://opsecx.com/index.php/2017/02/08/exploiting-node-js-deserialization-bug-for-remote-code-execution/), written by [OpSecX](https://opsecx.com/index.php/author/ajinabraham/).
* [eval长度限制绕过 && PHP5.6新特性](https://www.leavesongs.com/PHP/bypass-eval-length-restrict.html), written by [PHITHON](https://www.leavesongs.com/).
* [PHP垃圾回收机制UAF漏洞分析](http://www.freebuf.com/vuls/122938.html), written by [ph1re](http://www.freebuf.com/author/ph1re).
* [DRUPAL 7.X SERVICES MODULE UNSERIALIZE() TO RCE](https://www.ambionics.io/blog/drupal-services-module-rce), written by [Ambionics Security](https://www.ambionics.io/).
### XSS
* [ECMAScript 6 from an Attacker's Perspective - Breaking Frameworks, Sandboxes, and everything else](http://www.slideshare.net/x00mario/es6-en), written by [Mario Heiderich](http://www.slideshare.net/x00mario).
* [How I found a $5,000 Google Maps XSS (by fiddling with Protobuf)
](https://medium.com/@marin_m/how-i-found-a-5-000-google-maps-xss-by-fiddling-with-protobuf-963ee0d9caff#.u50nrzhas), written by [Marin Moulinier](https://medium.com/@marin_m).
### SQL Injection
* [屌智硬之mysql不用逗号注入](http://www.jinglingshu.org/?p=2220), written by [jinglingshu](http://www.jinglingshu.org/?p=2220).
* [见招拆招:绕过WAF继续SQL注入常用方法](http://www.freebuf.com/articles/web/36683.html), written by [mikey](http://www.freebuf.com/author/mikey).
* [MySQL Error Based SQL Injection Using EXP](https://www.exploit-db.com/docs/37953.pdf), written by [@osandamalith](https://twitter.com/osandamalith).
* [SQL injection in an UPDATE query - a bug bounty story!](http://zombiehelp54.blogspot.jp/2017/02/sql-injection-in-update-query-bug.html), written by [Zombiehelp54](http://zombiehelp54.blogspot.jp/).
### SSRF
* [SSRF in https://imgur.com/vidgif/url](https://hackerone.com/reports/115748), written by [aesteral](https://hackerone.com/aesteral).
### Header Injection
* [Java/Python FTP Injections Allow for Firewall Bypass](http://blog.blindspotsecurity.com/2017/02/advisory-javapython-ftp-injections.html), written by [Timothy Morgan](https://plus.google.com/105917618099766831589).
### Others
* [Some Tricks From My Secret Group](https://www.leavesongs.com/SHARE/some-tricks-from-my-secret-group.html), written by [PHITHON](https://www.leavesongs.com/).
## Browser Exploitation
* [First Step to Browser Exploitation](http://mashirogod.dothome.co.kr/index.php/2017/01/07/first-step-to-browser-exploitation/), written by [Brian Pak](http://mashirogod.dothome.co.kr/).
* [JSON hijacking for the modern web](http://blog.portswigger.net/2016/11/json-hijacking-for-modern-web.html), written by [portswigger](https://portswigger.net/).
## PoC
### JavaScript
* [js-vuln-db](https://github.com/tunz/js-vuln-db) - A collection of JavaScript engine CVEs with PoCs by [@tunz](https://github.com/tunz).
* [awesome-cve-poc](https://github.com/qazbnm456/awesome-cve-poc) - A curated list of CVE PoCs by [@qazbnm456](https://github.com/qazbnm456).
## Tool
### Code Generating
* [**VWGen** ![VWGen](https://img.shields.io/github/stars/qazbnm456/VWGen.svg?style=social&label=Star&maxAge=2592000)](https://github.com/qazbnm456/lulumi-browser) - Vulnerable Web applications Generator by [@qazbnm456](https://github.com/qazbnm456).
### Disassembler
* [**plasma** ![plasma](https://img.shields.io/github/stars/plasma-disassembler/plasma.svg?style=social&label=Star&maxAge=2592000)](https://github.com/plasma-disassembler/plasma) - Plasma is an interactive disassembler for x86/ARM/MIPS by [@plasma-disassembler](https://github.com/plasma-disassembler).
* [**radare2** ![radare2](https://img.shields.io/github/stars/radare/radare2.svg?style=social&label=Star&maxAge=2592000)](https://github.com/radare/radare2) - unix-like reverse engineering framework and commandline tools by [@radare](https://github.com/radare).
### Fuzzing
* [**wfuzz** ![wfuzz](https://img.shields.io/github/stars/xmendez/wfuzz.svg?style=social&label=Star&maxAge=2592000)](https://github.com/xmendez/wfuzz) - Web application bruteforcer by [@xmendez](https://github.com/xmendez).
* [**charsetinspect** ![charsetinspect](https://img.shields.io/github/stars/hack-all-the-things/charsetinspect.svg?style=social&label=Star&maxAge=2592000)](https://github.com/hack-all-the-things/charsetinspect) - A 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** ![IPObfuscator](https://img.shields.io/github/stars/OsandaMalith/IPObfuscator.svg?style=social&label=Star&maxAge=2592000)](https://github.com/OsandaMalith/IPObfuscator) - A simple too to convert the IP to a DWORD IP by [@OsandaMalith](https://github.com/OsandaMalith).
* [**wpscan** ![wpscan](https://img.shields.io/github/stars/wpscanteam/wpscan.svg?style=social&label=Star&maxAge=2592000)](https://github.com/wpscanteam/wpscan) - WPScan is a black box WordPress vulnerability scanner by [@wpscanteam](https://github.com/wpscanteam).
* [**JoomlaScan** ![JoomlaScan](https://img.shields.io/github/stars/drego85/JoomlaScan.svg?style=social&label=Star&maxAge=2592000)](https://github.com/drego85/JoomlaScan) - A free software to find the components installed in Joomla CMS, built out of the ashes of Joomscan by [@drego85](https://github.com/drego85).
### Penetrating
* [Burp Suite](https://portswigger.net/burp/) - Burp Suite is an integrated platform for performing security testing of web applications by [portswigger](https://portswigger.net/).
* [**mitmproxy** ![mitmproxy](https://img.shields.io/github/stars/mitmproxy/mitmproxy.svg?style=social&label=Star&maxAge=2592000)](https://github.com/mitmproxy/mitmproxy) - An interactive TLS-capable intercepting HTTP proxy for penetration testers and software developers by [@mitmproxy](https://github.com/mitmproxy).
### Leaking
* [**HTTPLeaks** ![HTTPLeaks](https://img.shields.io/github/stars/cure53/HTTPLeaks.svg?style=social&label=Star&maxAge=2592000)](https://github.com/cure53/HTTPLeaks) - All possible ways, a website can leak HTTP requests by [@cure53](https://github.com/cure53).
* [**dvcs-ripper** ![dvcs-ripper](https://img.shields.io/github/stars/kost/dvcs-ripper.svg?style=social&label=Star&maxAge=2592000)](https://github.com/kost/dvcs-ripper) - Rip web accessible (distributed) version control systems: SVN/GIT/HG... by [@kost](https://github.com/kost).
* [**DVCS-Pillage** ![DVCS-Pillage](https://img.shields.io/github/stars/evilpacket/DVCS-Pillage.svg?style=social&label=Star&maxAge=2592000)](https://github.com/evilpacket/DVCS-Pillage) - Pillage web accessible GIT, HG and BZR repositories by [@evilpacket](https://github.com/evilpacket).
### Detecting
* [**sqlchop** ![sqlchop](https://img.shields.io/github/stars/chaitin/sqlchop.svg?style=social&label=Star&maxAge=2592000)](https://github.com/chaitin/sqlchop) - [DEPRECATED] A novel SQL injection detection engine built on top of SQL tokenizing and syntax analysis by [chaitin](http://chaitin.com).
* [**retire.js** ![retire.js](https://img.shields.io/github/stars/RetireJS/retire.js.svg?style=social&label=Star&maxAge=2592000)](https://github.com/RetireJS/retire.js) - Scanner detecting the use of JavaScript libraries with known vulnerabilities by [@RetireJS](https://github.com/RetireJS).
* [**malware-jail** ![malware-jail](https://img.shields.io/github/stars/HynekPetrak/malware-jail.svg?style=social&label=Star&maxAge=2592000)](https://github.com/HynekPetrak/malware-jail) - Sandbox for semi-automatic Javascript malware analysis, deobfuscation and payload extraction by [@HynekPetrak](https://github.com/HynekPetrak).
### Preventing
* [js-xss](https://github.com/leizongmin/js-xss) -Sanitize untrusted HTML (to prevent XSS) with a configuration specified by a Whitelist by [@leizongmin](https://github.com/leizongmin).
### Others
* [Dnslogger](https://wiki.skullsecurity.org/index.php?title=Dnslogger) - Dns Logger by [@iagox86](https://github.com/iagox86).
## Blog
* [Orange](http://blog.orange.tw/) - This is Orange Speaking :)
* [leavesongs](https://www.leavesongs.com/) - 离别歌.
* [Broken Browser](https://www.brokenbrowser.com/) - Fun with Browser Vulnerabilities.
* [Blog of Osanda](https://osandamalith.com/) - Security Researching and Reverse Engineering.
* [BRETT BUERHAUS](https://buer.haus/) - Vulnerability disclosures and rambles on application security.
* [n0tr00t](https://www.n0tr00t.com/) - ~# n0tr00t Security Team.
## Twitter User
* [@filedescriptor](https://twitter.com/filedescriptor)
* [@cure53berlin](https://twitter.com/cure53berlin)
* [@XssPayloads](https://twitter.com/XssPayloads)
## Miscellaneous
* [awesome-bug-bounty](https://github.com/djadmin/awesome-bug-bounty) - A comprehensive curated list of available Bug Bounty & Disclosure Programs and write-ups by [@djadmin](https://github.com/djadmin).
* [bug-bounty-reference](https://github.com/ngalongc/bug-bounty-reference) - A list of bug bounty write-up that is categorized by the bug nature by [@ngalongc](https://github.com/ngalongc).
* [如何正確的取得使用者 IP ?](http://devco.re/blog/2014/06/19/client-ip-detection/), written by [Allen Own](http://devco.re/blog/author/allenown).
* [1000php](https://github.com/Xyntax/1000php) - 1000个PHP代码审计案例(2016.7以前乌云公开漏洞) by [@Xyntax](https://github.com/Xyntax).
* [Brute Forcing Your Facebook Email and Phone Number](http://pwndizzle.blogspot.jp/2014/02/brute-forcing-your-facebook-email-and.html), written by [PwnDizzle](http://pwndizzle.blogspot.jp/).
* [GITLEAKS](https://gitleaks.com/) - Search engine for exposed secrets on lots of places.
* [Pentest + Exploit dev Cheatsheet wallpaper](http://i.imgur.com/Mr9pvq9.jpg) - Penetration Testing and Exploit Dev CheatSheet.
* [URL Hacking - 前端猥琐流](http://php.ph/wydrops/drops/URL%20Hacking%20-%20前端猥琐流.pdf), written by [0x_Jin](http://xssec.lofter.com/).
* [Hunting for Web Shells](https://www.tenable.com/blog/hunting-for-web-shells), written by [Jacob Baines](https://www.tenable.com/profile/jacob-baines).
* [The Definitive Security Data Science and Machine Learning Guide
The Definitive Security Data Science and Machine Learning Guide](http://www.covert.io/the-definitive-security-datascience-and-machinelearning-guide/), written by JASON TROS.
## Practice
### AWS
* [FLAWS](http://flaws.cloud/) - Amazon AWS CTF challenge, written by [@0xdabbad00](https://twitter.com/0xdabbad00).
### XSS
* [alert(1) to win](https://alf.nu/alert1) - A series of XSS challenges, written by [@steike](https://twitter.com/steike).
* [prompt(1) to win](http://prompt.ml/) - A complex 16-Level XSS Challenge held in summer 2014 (+4 Hidden Levels), written by [@cure53](https://github.com/cure53).
## License
[![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/)
To the extent possible under law, [@qazbnm456](https://qazbnm456.github.io/) has waived all copyright and related or neighboring rights to this work.