lp465/fp-analyzer-prompt-injection
GitHub: lp465/fp-analyzer-prompt-injection
用于分析LLM提示词注入检测系统误报行为和安全性与可用性权衡的实验研究框架。
Stars: 0 | Forks: 0
# 提示词注入检测的误报分析器
这是一个面向研究的框架,用于分析大型语言模型(LLM)提示词注入检测系统中的误报、阈值敏感性和过度防御行为。
## 概述
提示词注入攻击是影响基于 LLM 应用程序的最重大安全挑战之一。虽然许多现有的防御措施优先考虑最大化攻击检测率,但过于激进的检测系统可能会引入高误报率,从而对可用性、可靠性和实际部署产生负面影响。
本项目提供了一个比较实验框架,用于评估不同的提示词注入检测方法,重点关注:
* 误报行为
* 安全性与可用性的权衡
* 阈值敏感性
* 词汇与语义检测
* 集成行为
* 跨数据集评估
* 过度防御分析
## 检测技术
| 技术 | 描述 |
| -------------------------------------- | -------------------------------------------------------- |
| 仅规则 (Rules Only) | 确定性基于规则的检测基线 |
| 仅机器学习 (TF-IDF + 逻辑回归) | 带有阈值调节的词汇概率分类器 |
| DeBERTa (ProtectAI) | 语义上下文提示词注入检测器 |
| 混合 OR | 结合机器学习 OR DeBERTa 的激进集成 |
| 混合 AND | 需要机器学习 AND DeBERTa 达成一致的保守集成 |
## 阈值策略
| 模型 | 阈值行为 |
| ---------- | ----------------------------------------- |
| 仅规则 | 确定性逻辑(无阈值) |
| 仅机器学习 | 具有权衡分析的变量阈值 |
| DeBERTa | 固定阈值 0.50 |
| 混合 OR | 固定阈值 0.50 |
| 混合 AND | 固定阈值 0.50 |
为了分析的清晰度和计算效率,阈值权衡分析被有意限制在仅机器学习模型上。
## 数据集
| 数据集 | 大小 |
| -------------------------------------- | ---------- |
| deepset/prompt-injections | 662 行 |
| neuralchemy/Prompt-injection-dataset | 6,274 行 |
| prodnull/prompt-injection-repo-dataset | 5,671 行 |
## 功能
* 跨多种检测范式的比较评估
* 误报 / 漏报分析
* 阈值权衡可视化
* ROC 和混淆矩阵分析
* 混合集成评估
* 交互式 Streamlit 仪表板
* 持久的实验比较日志记录
* 批次优化的 Transformer 推理
* 统计检验
## 技术栈
* Python
* Streamlit
* Scikit-learn
* HuggingFace Transformers
* DeBERTa
* Pandas
* NumPy
* Matplotlib
## 运行应用程序
安装依赖:
```
pip install -r requirements.txt
```
启动 Streamlit 应用程序:
```
streamlit run app4.py
```
## 研究重点
本框架旨在进行以下实验分析:
* 提示词注入误报
* LLM 安全系统中的过度防御倾向
* 词汇与语义检测行为
* 集成放大与抑制效应
* 安全性与可用性的权衡
* 跨领域泛化行为
## 参考文献与背景
本项目的灵感来源于当前与以下相关的研究和安全指南:
* 提示词注入攻击
* LLM 安全与护栏
* 对抗性 NLP
* 安全的 AI 部署
* LLM 应用的 OWASP Top 10
* 基于 Transformer 的安全分类器
## 免责声明
本项目仅用于与提示词注入检测和 LLM 安全评估相关的研究、教育和实验目的。
标签:Apex, DLL 劫持, Kubernetes, 人工智能安全, 合规性, 大语言模型, 机器学习, 评估框架, 误报分析, 逆向工具