# CTFFuzz **Repository Path**: computerexplorer/ctffuzz ## Basic Information - **Project Name**: CTFFuzz - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-02-17 - **Last Updated**: 2024-05-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 使用说明 本项目用于CTF比赛的Web类赛题中,Web常见漏洞可简单总结如下: - [[HTTP]] - [[SQLi]] - [[XSS ]] - 客户端-SSTI - [[RCE]] - [[反序列化]] - 服务器-[[SSTI]] - [[文件包含]] - [[文件上传]] ```mermaid graph LR HTTP --> SQLi HTTP --> XSS HTTP --> RCE RCE --> 反序列化 RCE --> 文件上传 RCE --> 文件包含 RCE --> SSTI 文件上传 --> Phar 反序列化 --> Phar ``` **信息收集** 网站指纹: Wappalyzer(浏览器插件), Whatweb(kali) 目录扫描: dirsearch(kali),dirb(kali) 文件包含: **黑盒测试/白盒分析** 有源代码可审计(如RCE、文件包含),往往需要利用Exploit 反之,如(如SQLi、SSTI),Fuzz就必不可少 本项目为Fuzz部分,包含各类payload,需要结合**BrupSuit**的Inturder使用 本项目目前仍在不断更新中,许多文档均不完善!接下来为各个模块的具体说明 # SQLi ``` ?id=$1$ ``` - 探测漏洞 如果怀疑`?id=`存在SQLi注入漏洞,用文本中的内容进行扫描 - 检查屏蔽词 过滤`and` 或者`or`可用`&&`和`||`代替 过滤`union`则无法进行联合注入 过滤`select`,但是mysql中可用`handle`代替 - 联合注入漏洞利用 需要实现构造好`?id=-1' union select $payload$` 用文中内容扫描,目前可以扫描出库名、数据库用户名、版本号、操作系统类型、存储路径以及比较有用的 **表名、列名** - 登录名 用于分析已注册用户和未注册用户,返回内容差异 ## SSTI - 探测漏洞 探测模板注入漏洞中的后台渲染引擎 - ${7* 7} - True -> a{* comment * }b - True -> Smarty - False -> ${"z".join("ab")} - True -> Mako - False -> **Unknown** - False -> {{7 * 7}} - True -> {{7* '7}'} - True -> Jinja2 / Twig - False -> **Unknown** - False -> 无漏洞 Jinja2 Smarty Twig文件中包含了各种渲染引擎的命令执行代码