Task
11/05
- 找两个漏洞做实验
- 把两个方法图画出来
工具
画图:Free Icons, Clipart Illustrations, Photos, and Music
参考资料
参照 yuracanner 的思路针对特定的漏洞进行渗透测试,飞书论文链接: https://ce6kimc9h2.feishu.cn/docx/HPT4dElDEotIRQxy1B8cJbC3n8e?from=from_copylink
SSTI漏洞文章:
- Remote Code Execution from SSTI in the Sandbox: Automatically Detecting and Exploiting Template Escape BugsRemote Code Execution from SSTI in the Sandbox: Automatically Detecting and Exploiting Template Escape Bugs | USENIX
CSRF漏洞文章:
- Cookie Crumbles: Breaking and Fixing Web Session Integrity
- The Great Request Robbery
- Web Platform Threats: Automated Detection of Web Security Issues With WPT
SQLI漏洞文章:
- SQIRL: Grey-Box Detection of SQL Injection Vulnerabilities Using Deep Reinforcement Learning(基线)
- Toss a Fault to Your Witcher
- FIXX: FInding eXploits from eXamples(
SSRF漏洞文章:
- Where URLs Become Weapons: Automated Discovery of SSRF Vulnerabilities in Web Applications
- SSRF vs. Developers: A Study of SSRF-Defenses in PHP Applications
思路
创新点
框架
- 爬虫 + 快照
- LLM 任务驱动
- 漏洞检测引擎
漏洞
针对的要测试的漏洞,现在的任务是找到参考的SOTA:
| 前/后端 | 类别 | 漏洞 | 目标 | 对比 SOTA | 可行性 |
|---|---|---|---|---|---|
| 前端 | 跨域 | XSS | 浏览器 | black widow、XSStrike | |
| 跨域 | CSRF | Request | XSRFProbe | ||
| 后端 | 注入 | SSTI | MVC | SSTImap | 模版注入,简单,但是与爬虫逻辑有些出入 |
| 注入 | SQL注入 | 数据库 | SQIRL | ||
| SSRF/XXE | SSRF | Request | SSRFuzz | SSRF | |
| 认证缺陷 | 请求走私 | Request |
草稿
摘要
Web应用程序扫描程序是流行且有效的渗透测试工具,通过探索和与用户界面交互来自动检测漏洞,尤其在检测跨站脚本(XSS)等注入型漏洞方面发挥着重要作用。尽管它们有效,但由于对工作流程的了解有限,这些扫描仪仍难以在现代web应用程序中发现更深层的状态。此外,扫描仪倾向于使用静态规则来覆盖最常见的注入情况,在其有效载荷中缺少多样性与针对性,导致出现大量请求和假阴性,还易被Web应用防火墙(WAF)等安全机制拦截。本研究提出Task-driven Vulnerability Agent,一款具备任务驱动的Web应用渗透测试程序,它利用大语言模型来自主执行任务和工作流,并生成特定的Payloads进行XSS漏洞的检测。该 Agent 以任务驱动的方式解析网页结构与交互语义,自动生成并执行多步任务,以触达传统黑盒扫描难以覆盖的深层输入点。在发现阶段,系统通过任务提取Agent,针对可能会触发XSS漏洞的风险进行发现。漏洞检测Agent融合了近年来安全研究中的先进思路,利用大模型。本文在多个具有代表性的 Web 应用上进行了系统评估,。结果显示,任务驱动与语义感知相结合的多Agent智能体能够显著扩展检测覆盖面,提高XSS漏洞的发现率与自动化水平,为智能化 Web 安全测试提供了一种可复现的通用框架。
upadte Web应用程序扫描程序是流行且有效的渗透测试工具,通过探索和与用户界面交互来自动检测漏洞,尤其在检测跨站脚本(XSS)等注入型漏洞方面发挥着重要作用。尽管它们有效,但由于对工作流程的了解有限,这些扫描仪仍难以在现代web应用程序中发现更深层的状态。此外,扫描仪倾向于使用静态规则来覆盖最常见的注入情况,在其有效载荷中缺少多样性与针对性,还易被Web应用防火墙(WAF)等安全机制拦截,导致出现大量请求和假阴性。为应对这些挑战,本研究提出并实现了一种基于任务驱动的多智能体协同的自动化Web漏洞检测框架,它利用大语言模型来自主执行任务和工作流,并生成特定的Payload进行XSS漏洞的检测。首先,任务提取智能体(Task Extraction Agent)对目标应用进行分析,自动识别并生成符合业务逻辑的多步测试任务。随后,任务执行智能体(Task Execution Agent)遵循指令,通过模拟人类交互精准地导航至传统扫描技术难以覆盖的深层输入点。最后,漏洞检测智能体(Vulnerability Detection Agent)结合上下文信息与先进的安全知识,通过LLM动态生成高度针对性的Payload,以绕过WAF并高效触发XSS漏洞。在多个典型Web应用上的实验结果表明,该框架显著扩展了检测的深度与广度,有效提升了XSS漏洞的发现率,并降低了测试过程中的请求数量。本研究为构建更智能、更高效的新一代Web安全测试工具提供了一个可复现的通用范式。
方法大纲
- 基于任务驱动的爬虫方法
- 方法概述
- 感知器模块
- 连接器模块
- 执行器模块
- 本章小结
- 基于大模型的Payload生成方法
- 方法概述
- 大模型提示词设计
- Payload生成与WAF绕过
- 本章小结
- 多智能体的漏洞检测方法实现
- 系统设计
- 任务提取Agent模块
- 任务执行Agent模块
- 漏洞检测Agnet模块
- 本章小结
实验计划
实验目的
实验环境与数据
- 靶场构建:本次实验精心收集了3个Web应用程序的靶场和3个不同类别实际应用(docker)。
- 分组策略:第一组随机抽取3个用于爬虫覆盖率验证,第二组使用全部应用进行漏洞检测。
- 所有应用均部署在隔离的实验环境中,确保数据的独立性与可复现性。实验前对容器进行快照备份,保证每次测试的起始状态一致
- 3组对比实验:
- 爬虫覆盖率:会和black widow(2021 SP),BFS, RandBFS进行对比
- 漏洞检测数量:和black widow
- 给每种应用加入一个宝塔WAF,再和black widow对比能够检测到的漏洞数量
实验结果评估
本章小结
本次实验精心收集了3个Web应用程序的靶场和3个不同类别实际应用(Docker)。靶场被分为两组:第一组随机抽取3个用于爬虫覆盖率验证,第二组使用全部应用进行漏洞检测。
实验容器
| 容器 | 论文 | 针对漏洞 | 版本号 | 漏洞数量 |
|---|---|---|---|---|
| Drupal | BW | XSS | 8.6.15 | |
| HotCRP | 2.102 | 1 | ||
| Joomla | 3.9.6 | |||
| osCommerce | 2.3.4.1 | 2 | ||
| phpBB | 2.0.23 | 3 | ||
| PrestaShop | 1.7.5.1 | 1 | ||
| SCARF | 2007 | 8 | ||
| Vanilla | 2.0.17.10 | 3 | ||
| WackoPicko | 2018 | 5 | ||
| Redacted | YS | XSS | 11/1 | |
| CitLab | 16.11.2-ce.0 | |||
| OpenCart | 4.0.2-3 | |||
| Redmine | 5.1.2 | |||
| Dolibarr | 19.0.2 | |||
| Moodle | 4.4.0 | 1/1 | ||
| Media Wiki | 1.41.0 | |||
| OwnCloud | 10.14.0 | |||
| LimeSurvey | 6.5.3 | |||
| phpBB | 3.3.11 | |||
| NextCloud | 29.0.1 | |||
| Joomla | 5.1.1 | |||
| Leantime | 3.1.4 | 0/1 | ||
| EspoCRM | 8.2.5 | |||
| iTop | 3.1.1 | |||
| MintHCM | 4.0.4 | |||
| Mautic | 5.0.4 | |||
| GLPI | 10.0.15 | |||
| Silverpeas | 6.3.5 | |||
| Monica | 4.1.2 |
