Tibo (@dunej) 在 Claude Code 通过 Unicode 给 System Prompt 打水印 中发帖
触发条件
这段逻辑只会在 不是官方 Anthropic API 时触发
也就是说,大概类似:
ANTHROPIC_BASE_URL != api.anthropic.com
官方直连用户不会命中,因此官方封号事件,和这个机制应该不是一回事
怎么藏信息?
并没有额外增加字段,而是直接修改 System Prompt 里的文本细节
例如类似:
Today's date is 2026-06-30
这里有两个地方可以携带信息:
1. 日期格式
如果检测到系统时区属于:
Asia/Shanghai
Asia/Urumqi
日期中的分隔符会发生变化,例如:
2026-06-30
可能变成
2026/06/30
视觉上几乎不会引起注意,但实际上已经多携带了 1 bit 信息
2. 撇号
更巧妙的是:
Today's
里面那个 '
实际上可以使用多个 Unicode...