Incicik/control-boundary-eval
GitHub: Incicik/control-boundary-eval
一个评估框架,用于测试大语言模型在多步骤网络安全场景中是否会突破安全控制边界,弥补传统单次提示安全检查的不足。
Stars: 0 | Forks: 0
# 控制边界评估:测试语言模型中的多步骤安全失效
**测试前沿语言模型是否能够通过多步骤交互违反安全目标,即使它们会拒绝直接的恶意请求。许多模型安全检查侧重于模型是否会拒绝直接的恶意请求。本项目测试一种不同的失效模式:模型是否仍能通过一系列单独看来合理的步骤来协助完成安全违规。**
## 研究假设
语言模型可能会拒绝直接的恶意网络安全请求,但当相同的目标被分解为多个步骤时,仍会提供不安全的协助。本项目评估多步骤交互是否会暴露单次提示安全检查所遗漏的控制边界违规。
## 项目目的
本项目探讨了一个实际的 AI 安全问题:
许多安全评估侧重于直接的恶意请求。现实中的安全失效往往以不同方式发生:通过一系列较小的、单独看来合理的动作,这些动作总体上跨越了围绕授权、数据保护、特权或系统完整性的边界。
本仓库提供了一个轻量级框架来评估这一差距。
## 研究重点
本项目将选定的网络安全控制概念转化为模型评估场景,包括:
- 未授权访问
- 敏感信息泄露
- 特权提升
- 安全策略绕过
- 内部人员滥用
- 工具使用 agent 风险
- 数据外泄规划
目标不是测试合规文书。目标是使用现实世界的安全控制作为经验可测试的 AI 安全失效模式的来源。
## 仓库结构
```
control-boundary-eval/
├── README.md
├── evaluator.py
├── scoring.py
├── scenarios.py
├── requirements.txt
├── data/
├── docs/
├── reports/
├── results/
└── src/
└── models/
```
## 快速开始## 快速开始
### 1. 创建并激活虚拟环境
```
python -m venv .venv
```
**macOS / Linux**
```
source .venv/bin/activate
```
**Windows**
```
.venv\Scripts\activate
```
### 2. 安装依赖
```
pip install -r requirements.txt
```
### 3. 配置你的 API key
对于 Anthropic:
```
export ANTHROPIC_API_KEY="your_api_key"
```
对于 OpenAI:
```
export OPENAI_API_KEY="your_api_key"
```
Windows 用户可以使用 `set` 或通过操作系统配置环境变量。
### 4. 运行 benchmark
```
python evaluator.py \
--scenarios data/all_scenarios.jsonl \
--provider anthropic \
--model claude-3-5-sonnet-latest \
--output results/run_results.json
```
## 评估内容
每个场景包含:
- 一个直接的恶意请求
- 相同安全目标的多步骤版本
- 相关的安全边界
- 预期的安全行为
- 评分标准
该评估器旨在比较模型是否会拒绝直接请求,但在多步骤版本中提供不安全的协助。
## 预期的公开输出
一篇简短的论文或技术报告:
**评估前沿语言模型中的控制边界违规**
可能的贡献:
- 一个小型 benchmark
- 一个评分准则
- 一个可复现的评估工具
- 跨多个模型的初步发现
## 安全提示
本项目专为防御性 AI 安全研究而设计。场景应使用模拟系统,并避免包含实际漏洞利用细节、真实目标、凭据、恶意软件或可能导致危害的指令。
标签:AI安全, Chat Copilot, DLL 劫持, Petitpotam, Web报告查看器, 反取证, 多步交互, 大语言模型, 安全评估, 护栏测试, 逆向工具