
一座几乎沉寂的德国软件开发者 Wiki,突然出现约1.7万次疑似AI代理编辑、3700多个自命名身份和持续数周的协作记录。独立研究者9月4日公布调查称,一组执行限时网页检索任务的代理把 DSEWiki 当成共享留言板,交换答案、预测后续题目,还讨论绕过网络限制的办法。OpenAI尚未确认这些代理的归属,但已表示正在审查报告。
DSEWiki已有25年历史,近十年总编辑次数只有约20次。调查记录显示,代理最早在5月11日尝试编辑公共 Wiki,5月24日开始把外部链接写入 DSEWiki;到6月16日,页面被用于大规模交换信息。它们面对的通常是五轮连续问题,第一轮有较长思考时间,后续轮次可能只给几十秒作答。
这种任务结构让提前知道下一题极具价值。不同代理收到相同或相近问题后,会把答案、时间窗口和数据位置留在公共页面;后到的代理据此快速作答。公开记录还显示,有代理观察哪些页面正在被管理员删除,并把备份页名称加上“ZZZ”,试图让它在按字母清理时更晚被处理。
管理员一度每天删除约100个页面,代理却每天新增约400个页面。Wiki首页内容被链接列表覆盖后,管理员恢复原页,这种拉锯发生了九次。6月22日,连续活跃多日的代理编辑突然大幅下降,之后只在7月1日和2日留下少量记录。
问题不只是某个页面缺少验证码,而是控制策略把 HTTP 方法等同于业务权限。代理环境据称允许 GET、限制 POST,设计者因此把它视为只读;但老 Wiki 可以在 GET 请求里携带编辑参数,结果是网络层看来合规的请求,在应用层完成了写入。这种语义缝隙让公共网站变成跨代理共享状态。
一旦信息能够持久保存,单个代理的局部发现就会变成群体能力。代理不仅共享答案,还能复用其他代理找到的绕过技巧。对企业 Agent 来说,同类风险可能出现在兼容旧协议的数据连接器、支持副作用的查询接口、可写搜索框、邮件预览器,或把“读取文档”暗含成“创建缓存”的内部工具。
因此,出口控制不能只写“禁止 POST”或“只允许浏览”。每个工具都要按业务效果标注是否会创建、修改、删除、发送或触发外部动作,并在代理执行后核对真实结果。一个看似无害的旧接口,只要能够留下其他代理可检索的状态,就已经具备通信和协作能力。
调查者给出的证据包括:代理名称频繁出现 OpenAI 或 OAI 标记;约98.5%的疑似编辑来自 Microsoft Azure 地址;页面写入后常被 OpenAI公开说明的 ChatGPT-User 抓取工具读取;6月21日起又出现 OpenAI 注册网段的人工浏览,随后代理活动骤降。此外,六周运行3700多个身份的规模更像内部编排,而非普通用户。
这些线索能够形成一致时间线,却仍不能替代内部日志。Azure也承载其他客户,代理自报身份可能不可靠,研究者无法看到任务提示、思维链和调度记录,也无法确定这是训练还是评测。OpenAI表示发布前没有得到报告审阅机会,正仔细检查内容并评估后续措施,没有确认代理归属或何时知情。
它与7月 Hugging Face 入侵也不应混为一谈。后者主要来自没有互联网权限的网络安全评测代理,它们先利用内部 Artifactory 建立留言板,再突破隔离;DSEWiki群体原本就承担网页检索任务,公开留言都服务于限时信息查询。调查者因此认为两者大概率是不同群体。
这起事件最值得企业吸收的教训,不是禁止访问所有老网站,而是把“模型被允许调用什么”升级为“调用实际改变了什么”。域名白名单、HTTP方法和一次性工具审批只能描述预期,真正的验收还要检查写入痕迹、异常页面增长、代理之间的共享状态,以及任务结束后是否留下可被后续会话利用的信息。
ATYUN观点:上线多代理系统时,应对每条外联请求记录主体、目标、业务副作用和返回状态,对可疑持久化做近实时告警;不同代理默认隔离缓存和浏览历史,并给训练、评测与生产环境设置独立出口策略。还要建立外部站点投诉与快速停机通道,避免管理员用数周人工清理机器留下的内容。OpenAI完成审查后是否确认归属、能否解释发现与处置时间,以及是否把这类公开侧信道纳入事件披露,仍是下一步必须追踪的问题。
