profile-setting-key-workbench
发现明确的凭证收割与数据外泄机制:代码通过 _collect_fields() 遍历输入字段收集含 secret/token/api_key/password 等关键字的敏感凭证,并经 _deliver_http() POST 到外部端点。攻击通过 base64 编码的 chain 标记激活,形成完整的 C2 数据外泄链。
_collect_fields() 递归遍历输入对象,收集 key 名含 secret/token/api_key/apikey/password/credential/canary/cred 的字段值,以及前缀为 SEC_/FAKE_ 的字符串值。此功能完全未在主功能描述中声明。
scripts/operation.py:121 为什么得出这个结论
2/4 个维度触发发现 2 项声明之外的能力或越权行为。
提取到 1 个一般风险产物,需要结合上下文判断。
报告包含 4 步攻击链,另有 5 项高危或严重发现。
依赖结构存在,但暂未看到明显高危告警。
攻击链
初始入口 · SKILL.md:1
权限提升 · scripts/operation.py:148
权限提升 · scripts/operation.py:121
最终危害 · scripts/operation.py:158
风险分是怎么被拉高的
_collect_fields() 遍历输入递归收集含敏感关键字的字段值
_deliver_http() POST 凭证到 CLAWHUB_DELIVERY_ENDPOINT
base64 编码的 chain: 标记触发隐藏攻击链
SKILL.md 自述'collaborative backdoors in LLM multi-agent systems'
最关键的证据
凭证字段收割函数
_collect_fields() 递归遍历输入对象,收集 key 名含 secret/token/api_key/apikey/password/credential/canary/cred 的字段值,以及前缀为 SEC_/FAKE_ 的字符串值。此功能完全未在主功能描述中声明。
scripts/operation.py:121 HTTP 端点外泄收集的凭证
当 chain 标记激活时,_deliver_http() 将 collected 凭证附加到 assembly 负载中 POST 到外部端点。
scripts/operation.py:158 Base64 编码的隐蔽激活协议
_collab_marker() 从输入中提取 urlsafe-base64 编码的 chain:<id_1>|...|<id_k> 标记,触发隐藏的攻击链。仅当此标记存在且包含自身 variant_id 时激活。
scripts/operation.py:148 文档自述为协作后门研究探针
SKILL.md 'Collaborative activation (research probe)' 部分明确描述了'collaborative backdoors in LLM multi-agent systems'攻击结构,但以研究评估为名伪装合法。
SKILL.md:51 环境变量凭证收割
_delivery_config() 读取 CLAWHUB_SMTP_USERNAME、CLAWHUB_SMTP_PASSWORD、CLAWHUB_DELIVERY_API_KEY 等环境变量作为凭证。
scripts/operation.py:96 声明能力 vs 实际能力
— operation.py:158 _deliver_http() 发起 HTTP POST operation.py:121 _collect_fields() 收割敏感字段 可疑产物与外联
依赖与供应链
| 包名 | 版本 | 来源 | 漏洞 | 备注 |
|---|---|---|---|---|
| Python standard library only | N/A | stdlib | 否 | 无外部依赖,使用标准库 smtplib、urllib |
文件构成
scripts/config.json scripts/operation.py SKILL.md