Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
reverse-captcha-eval — 评估框架,用于测试大型语言模型是否遵循嵌入在正常文本中的不可见 Unicode 编码指令,并跨多个模型和工具条件进行统计分析。 | Kitploit
工具/GitHubGitHub/canonicalmg/reverse-captcha-eval
CTF机器学习论文与研究学习与教育AI 安全对抗性攻击
GitHubcanonicalmg/reverse-captcha-eval

reverse-captcha-eval

评估框架,用于测试大型语言模型是否遵循嵌入在正常文本中的不可见 Unicode 编码指令,并跨多个模型和工具条件进行统计分析。

查看仓库
976个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

反向验证码:评估大语言模型对不可见Unicode指令注入的敏感性

一个评估框架,用于测试大语言模型是否会遵循嵌入在看似正常文本中的不可见Unicode编码指令。传统验证码利用的是人类能解决而机器不能的任务,而反向验证码利用的是机器能访问而人类不能的感知通道。

论文: paper/reverse_captcha.pdf

主要发现

在来自5个模型(GPT-5.2、GPT-4o-mini、Claude Opus 4、Claude Sonnet 4、Claude Haiku 4.5)的 8,308个分级输出 中:

工具使用是主要放大器

代码执行访问将不可见Unicode从可忽略的伪影转变为可解码的指令通道。没有工具时,遵从率低于17%。有工具和提示时,达到98-100%。

工具使用消融实验

编码漏洞因提供商而异

OpenAI模型能解码零宽度二进制,但不能解码Unicode标签。Anthropic模型偏好Unicode标签。攻击者必须为目标提供商定制编码方案。

编码比较

完整遵从热力图

不同模型间提示梯度一致:无提示 << 码点提示 < 完整提示。工具访问和解码指令的结合是关键推动因素。

遵从热力图

工作原理

两种不可见编码方案被嵌入到琐事问题中:

  • 零宽度二进制(ZW): 每个ASCII字符编码为8个二进制数字,使用U+200B(0)和U+200C(1)
  • Unicode标签: 每个ASCII字符映射到U+E0000 + 码点(每个ASCII字符对应一个不可见字符)

模型收到一个已知可见答案的琐事问题。隐藏在不可见字符中的是另一个答案。如果模型输出隐藏的答案,则说明它遵循了不可见指令。

测试矩阵

  • 30个琐事问答对
  • 2种编码方案 × 4个提示级别 + 1个对照 = 9种条件
  • 2种工具条件(开/关)
  • 5个模型
  • 每次评估运行270个案例

统计分析

  • Wilson分数95%置信区间
  • Fisher精确检验与Bonferroni校正
  • 按模型方案变化的卡方检验
  • Cohen's h效应量

快速开始

root@kitploit:~
# 安装
pip install -e ".[dev]"

# 运行反向验证码评估
evalrun run --pack reverse_captcha --model openai:gpt-4o-mini --tools --n 3 --out results.sqlite

# 不启用工具运行
evalrun run --pack reverse_captcha --model openai:gpt-4o-mini --n 3 --out results.sqlite

# 使用Anthropic模型运行
evalrun run --pack reverse_captcha --model anthropic:claude-sonnet-4-20250514 --tools --n 3 --out results.sqlite

# 生成分析结果
python3 scripts/analyze_journal.py

# 生成图表
python3 scripts/generate_figures.py

项目结构

root@kitploit:~
├── packs/reverse_captcha/       # 评估包(案例、评分器、生成器)
│   ├── cases.yaml               # 270个测试案例
│   ├── qa_pairs.yaml            # 30个琐事问答对
│   ├── grader.py                # 确定性评分(5个类别)
│   └── generate_cases.py        # 两种编码的案例生成器
├── src/evalrun/                 # 核心框架
│   ├── adapters/                # OpenAI + Anthropic API适配器
│   ├── cli.py                   # CLI(运行、报告、导出)
│   ├── runner.py                # 带工具使用支持的评估运行器
│   └── db.py                    # SQLite持久化
├── paper/                       # 研讨会论文
│   ├── reverse_captcha.tex      # LaTeX源文件
│   └── reverse_captcha.pdf      # 编译后的PDF
├── results/journal/             # 原始数据
│   ├── analysis/                # 统计分析CSV
│   └── figures/                 # 出版物图表(PDF + PNG)
├── scripts/                     # 分析与图表生成脚本
└── tests/                       # 测试套件

其他评估包

框架中还包含另外两个包:

  • 水印鲁棒性 — 测试模型在改写任务中是否保留来源标记
  • 隐藏消息提取 — 测试模型在给定明确规则后能否提取隐藏消息

环境要求

  • Python 3.10+
  • 使用OpenAI模型需要 OPENAI_API_KEY
  • 使用Anthropic模型需要 ANTHROPIC_API_KEY
  • 依赖项:click, openai, anthropic, pyyaml, matplotlib, pandas, scipy, numpy

许可证

MIT

下载工具