PayloadsAllTheThings:60多个Web安全payload目录,如何在渗透测试自查中使用
2026/8/29 13:02:21 网站建设 项目流程

PayloadsAllTheThings:60多个Web安全payload目录,如何在渗透测试自查中使用

【免费下载链接】PayloadsAllTheThingsA list of useful payloads and bypass for Web Application Security and Pentest/CTF项目地址: https://gitcode.com/GitHub_Trending/pa/PayloadsAllTheThings

第一次进客户站点前,我一般会花一个下午整理测试清单:SQL注入试哪些payload、上传试哪些扩展名组合、模板注入怎么验证。PayloadsAllTheThings把60多种常见Web安全漏洞的payload和绕过技术按目录分开存放,我按目标类型直接翻对应模块,省去了逐篇翻博客的过程。

它是什么:一份人读的Web漏洞payload库

相比sqlmap自带的字典或nuclei这类模板化工具,这个项目的特点是"人读":每种漏洞都有原理说明、利用路径和可直接使用的payload,且目录结构统一为README.md(说明)、Intruder(Burp字典)、Files(附件)、Images(图示)四件套。它解决的是测试资源散落在博客和论坛里的实际问题——不用逐个搜索,按目录就能定位。

🗺️ 资源地图:60多个模块各覆盖什么

模块覆盖内容适用场景
SQL InjectionMySQL、PostgreSQL、MSSQL、Oracle、SQLite等6种数据库payload,20个Intruder字典搜索框、登录表单注入点测试
Upload Insecure Files扩展名绕过文件、图片伪装、ImageMagick/Ghostscript CVE PoC目标有文件上传入口时
XSS Injection13个WAF绕过、CSP绕过与事件处理器payload文件输出点、脚本上下文测试
Server Side Template InjectionJinja2、Twig、Thymeleaf、FreeMarker等检测与RCE payload后端用模板引擎渲染用户输入时
File InclusionLFI-to-RCE路径、Linux/Windows/Mac共13个Intruder文件列表存在文件读取参数或PHP include时
Methodology and Resources云、AD、Docker、Windows/Linux完整渗透流程整场渗透任务而非单点测试时

🔍 重点模块深读:三个模块的用法与payload形态

SQL注入:用Unicode编码绕过字符过滤

该模块按数据库分文件:MySQL Injection.md、PostgreSQL Injection.md等,外加Auth_Bypass.txt、SQLi_Polyglots.txt等20个Intruder词表。典型用例:当过滤器拦截单引号时,按模块里的Unicode转换表把' and 1=1--转成全角百分号编码再发送,绕过只匹配ASCII黑名单的规则。

![SQL注入Unicode编码绕过图:字符映射表与payload编码转换结果](https://raw.gitcode.com/GitHub_Trending/pa/PayloadsAllTheThings/raw/5443cbde384134094f25b1b440695757a2803d55/SQL Injection/Images/Unicode_SQL_injection.png?utm_source=gitcode_repo_files)

左半部分是字符到全角百分号编码的映射表,右侧红框展示了' and 1=1--的完整编码结果。遇到只放行特定字符集的过滤器时,直接对照这张图取编码。

文件上传:用思维导图搭攻击路径

模块核心是一张文件上传攻击思维导图,配套目录按技术分:Extension PHP/ASP 提供 .phtml、.phar、.cer 等12种扩展的shell文件,Picture ImageMagick 存放图片解析触发命令执行的PoC,Jetty RCE、CVE ZIP Symbolic Link 各自独立成目录。典型用例:目标用ImageMagick生成缩略图时,用伪装成PNG的文件触发命令执行;服务器是IIS时,试双扩展名与空扩展名组合。

![文件上传漏洞攻击思维导图:Shell上传、图片利用、音视频利用与过滤绕过四大分支](https://raw.gitcode.com/GitHub_Trending/pa/PayloadsAllTheThings/raw/5443cbde384134094f25b1b440695757a2803d55/Upload Insecure Files/Images/file-upload-mindmap.png?utm_source=gitcode_repo_files)

导图从中心展开Shell、Images、Audio/Video、Filter bypass四个分支,每个分支标注了具体技术点和CVE编号。做前置侦察时,先判断目标的解析器和服务端落在哪个分支,再翻对应目录取payload。

服务器端模板注入:一个探针定位模板引擎

模块按语言分成PHP、Python、Java、JavaScript、Ruby、ASP、Elixir七个文件,各含探测payload和RCE链。典型用例:先发{{7*7}}形式探针,响应返回49即确认注入;模块里的判断树给出了从单一探针到具体引擎的分支路径。

![SSTI模板注入检测决策树:payload变体与各模板引擎注入性判断](https://raw.gitcode.com/GitHub_Trending/pa/PayloadsAllTheThings/raw/5443cbde384134094f25b1b440695757a2803d55/Server Side Template Injection/Images/serverside.png?utm_source=gitcode_repo_files)

决策树从${7*7}出发,分出注释形式和join形式两类变体,再根据响应判断Smarty、Mako、Jinja2、Twig是否可注入。遇到不认识的模板引擎时,从这张图按分支逐个发送即可。

一条完整工作流:从克隆仓库到输出测试清单

第一步,同步项目。本地执行git clone https://gitcode.com/GitHub_Trending/pa/PayloadsAllTheThings,每次任务开始前git pull,确保拿到最新payload。

第二步,按目标检索模块。先从前置侦察确认目标技术栈:什么数据库、是否有上传入口、哪个模板引擎。然后直接进对应目录读README,需要fuzz时再取Intruder字典。

第三步,组合payload与工具。参数fuzz把Intruder目录下的TXT文件导入Burp Suite Intruder;手动单发请求则参照README中的payload形态自行改编码、换注入点。

第四步,记录与复盘。每个试过的payload记下目标端点、结果和响应差异。测试结束后把没覆盖到的场景补进自己的测试清单,作为下次任务的检查项。

安全红线:测试前的合规要求

  • 只在自有系统或取得书面授权的系统上测试,不扩大授权范围。
  • 不碰生产数据:不批量读取或修改测试范围外的用户数据。
  • 控制请求频率,不做DoS攻击、删除文件这类破坏性操作。
  • 遵守当地法规,发现的确认漏洞通过委托方指定渠道报告。

它是一份随任务持续更新的测试清单。新的绕过技术出现后,这里通常已经归档。

【免费下载链接】PayloadsAllTheThingsA list of useful payloads and bypass for Web Application Security and Pentest/CTF项目地址: https://gitcode.com/GitHub_Trending/pa/PayloadsAllTheThings

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询