promptmap简介
promptmap是一款强大的开源工具,专门用于自动测试ChatGPT实例中的提示注入攻击。它能够分析ChatGPT的规则,理解其上下文和目的,并据此生成针对性的攻击提示。通过运行ChatGPT实例并发送攻击提示,promptmap可以判断提示注入攻击是否成功。
主要功能
promptmap支持多种攻击类型:
- 基本注入:直接发送攻击提示,试图获取无关问题的答案或执行特定操作。
- 翻译注入:利用多语言回答漏洞进行攻击。
- 数学注入:让ChatGPT计算数学方程,测试执行复杂任务的能力。
- 上下文切换:在目标ChatGPT的上下文中提出无关问题。
- 外部浏览:测试ChatGPT是否能访问外部URL并显示内容。
- 外部提示注入:测试ChatGPT是否能从外部URL获取额外提示。
安装与使用
-
克隆仓库:
git clone https://github.com/utkusen/promptmap.git
-
安装依赖:
cd promptmap pip3 install -r requirements.txt
-
配置API密钥: 在
promptmap.py
文件中添加你的OpenAI API密钥。 -
运行测试:
python3 promptmap.py
默认情况下,promptmap会为每个攻击类别生成5个攻击提示。你可以使用-n
参数增加或减少这个数量:
python3 promptmap.py -n 10
测试结果示例
以下是promptmap成功和失败攻击的示例截图:
学习资源
-
GitHub仓库: promptmap的官方仓库,包含详细的文档和使用说明。
-
作者的电子书: 深入学习如何保护和测试ChatGPT应用。
-
LLM攻击研究: Carnegie Mellon大学研究者发现的攻击类型,可以深入了解相关理论。
-
System Prompt Stealer方法: 了解如何窃取目标GPT实例的系统提示。
-
提示工程主题: GitHub上与提示工程相关的项目和资源。
-
ChatGPT主题: 探索更多与ChatGPT相关的开源项目。
-
提示注入主题: 深入了解提示注入技术的最新进展。
promptmap是一个强大而灵活的工具,对于研究ChatGPT安全性和提示注入攻击非常有价值。通过本指南和提供的学习资源,读者可以快速掌握promptmap的使用,并深入探索AI安全领域的前沿知识。希望这些信息能够帮助你更好地理解和应用promptmap,为AI系统的安全性做出贡献。🚀🔒