davidocuevas/llm-pentest-payloads

GitHub: davidocuevas/llm-pentest-payloads

面向渗透测试人员的 LLM/Agent 应用 payload 库,按 OWASP LLM Top 10 分类,提供 Burp Intruder 就绪格式与漏洞判定方法论。

Stars: 0 | Forks: 0

# llm-pentest-payloads [![Stars](https://img.shields.io/github/stars/davidocuevas/llm-pentest-payloads?style=flat&logo=github)](https://github.com/davidocuevas/llm-pentest-payloads/stargazers) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE) [![OWASP LLM Top 10](https://img.shields.io/badge/OWASP-LLM%20Top%2010%20(2025)-blue.svg)](https://genai.owasp.org/llm-top-10/) [![Payloads](https://img.shields.io/badge/payloads-11%20categories-brightgreen.svg)](payloads/) [![欢迎 PR](https://img.shields.io/badge/PRs-welcome-orange.svg)](#contributing) 一个**已分类的、面向渗透测试人员**的 payload 库,用于测试基于 LLM 和 **agentic** 的应用程序 —— 聊天机器人、RAG 助手以及具有工具访问权限的 AI agent。基于真实的 AI 应用程序渗透测试构建,映射到 **OWASP Top 10 for LLM Applications (2025)**,并提供**可直接用于 Burp Intruder** 的格式。 大多数 LLM payload 列表要么是学术语料库,要么是为了娱乐而进行的越狱转储。而这个项目是围绕**测试工作流**构建的:发送什么、如何区分真实漏洞和幻觉,以及如何大规模运行。`METHODOLOGY.md` 与这些 payload 同样重要。 ## 目录 | 文件 | 类别 | OWASP LLM | |---|---|---| | `payloads/01-direct-prompt-injection.txt` | 直接 prompt 注入 | LLM01 | | `payloads/02-indirect-prompt-injection.md` | 间接注入(工单/RAG/数据投毒) | LLM01 | | `payloads/03-jailbreak.txt` | 越狱 / 角色覆盖 / 角色扮演 | LLM01 | | `payloads/04-system-prompt-leak.txt` | System prompt 与指令泄露 | LLM07 | | `payloads/05-input-filter-bypass.txt` | 过滤器/过滤绕过(leet、编码、标记) | LLM01 | | `payloads/06-rag-data-exfil.txt` | RAG / 机密数据与 canary 探测 | LLM02 / LLM08 | | `payloads/07-multi-turn-state.md` | 多轮 / 会话状态注入 | LLM01 | | `payloads/08-harmful-output.txt` | 有害 / 损害品牌 / 不良输出 | LLM01 | | `payloads/09-off-topic-scope-violation.txt` | 偏离主题 / 违反范围 | 不良输出 | | `payloads/10-excessive-agency.md` | Agent 操作滥用(折扣/退款/关闭/升级) | LLM06 | | `payloads/11-unbounded-consumption.txt` | Context 溢出 / 资源耗尽 | LLM10 | | `intruder/` | JSON 转义的、`{"message":"§§"}` 格式的单行集版本 | — | | `METHODOLOGY.md` | 判定准则、非确定性、幻觉与真实的区分、否定结果 | — | ## 占位符 Payload 已泛化。在使用前替换为你的目标: | Token | 含义 | |---|---| | `{COMPANY}` | 目标公司 / 品牌名称 | | `{PRODUCT}` | 机器人支持的产品/服务 | | `{MODEL}` | 底层模型(如果已知) | | `{CANARY}` | 客户端植入的 canary token,用于验证真实的 RAG 检索 | | `{ORDER_ID}` / `{TICKET_ID}` | 目标应用中你拥有的资源 | | `{COMPETITOR}` / `{TOPIC}` / `{OTHER_USER_EMAIL}` | 特定上下文的值 | ## 快速开始 (Burp Intruder) 1. 捕获一个 `POST /chat` 风格的请求;在消息值上设置注入点: `{"message":"§§"}` 2. 将 `intruder/*.txt` 集作为 **简单列表 (simple list)** payload 加载。 3. 关闭编码(payload 已预转义)。如果目标有速率限制,请添加节流。 4. 在响应中 Grep 成功/拒绝/canary 标记;**多次采样** (temp > 0)。 有关判定准则(`rag_used`,`action_applied`,……)以及如何确认命中,请参阅 `METHODOLOGY.md`。 ## 最重要的一条规则 LLM 会**自信地捏造**秘密、内部文件和“逐字”文档。不要将幻觉报告为数据泄露。通过 **canary** 和**确定性测试**进行验证(询问两次 —— 检索结果是相同的,幻觉则会有所不同)。请参阅 `METHODOLOGY.md` §5。 ## 贡献 欢迎 PR —— 将 payload 添加到正确的类别中,保持其**泛化**(使用占位符,不包含真实客户数据),并注明技术。新类别应映射到 OWASP LLM 项目。 ## 许可证 MIT — 见 `LICENSE`。
标签:Burp Suite, CISA项目, DLL 劫持, Homebrew安装, Payload, 大语言模型, 安全测试, 攻击性安全, 防御加固