安全决策报告

elevenlabs-toolkit

ElevenLabs语音API工具包存在未声明的MISTRAL_API_KEY环境变量访问,SKILL.md仅声明ELEVENLABS_API_KEY但代码实际还使用Mistral API进行对话增强功能,属于文档-行为差异。

安装决策优先 来源: ClawHub 扫描时间: 2026/5/1
文件 2
IOC 3
越权项 1
发现 2
最直接的威胁证据

为什么得出这个结论

1/4 个维度触发
阻止
声明与实际能力

发现 1 项声明之外的能力或越权行为。

复核
隐藏执行与外联

提取到 3 个一般风险产物,需要结合上下文判断。

通过
攻击链与高危发现

没有形成明确的恶意路径。

复核
依赖与供应链卫生

发现 3 项需要关注的依赖或供应链线索。

风险分是怎么被拉高的

未声明的环境变量访问 +20

代码访问MISTRAL_API_KEY但SKILL.md仅声明ELEVENLABS_API_KEY

文档-行为差异 +15

story_concierge功能使用了未声明的第三方API集成

最关键的证据

中危 文档欺骗

未声明的环境变量依赖

SKILL.md metadata仅声明ELEVENLABS_API_KEY为必需环境变量,但scripts/elevenlabs_api.py第162行还读取MISTRAL_API_KEY用于story_concierge功能的对话增强。

scripts/elevenlabs_api.py:162
在SKILL.md的requires.env数组中补充MISTRAL_API_KEY,或将Mistral集成改为可选功能并添加条件判断处理缺失情况。
低危 文档欺骗

安全说明与实际代码不符

SKILL.md安全备注声称使用base64编码音频数据,但实际elevenlabs_api.py代码中使用的是r.content直接获取bytes,无base64处理。

SKILL.md:33
移除或修正安全说明中的base64描述,使其与实际代码一致。

声明能力 vs 实际能力

网络访问 通过
声明 READ
推断 READ
SKILL.md声明outbound调用elevenlabs.io
环境变量 阻止
声明 READ
推断 READ
scripts/elevenlabs_api.py:162 - 额外读取MISTRAL_API_KEY
文件系统 通过
声明 NONE
推断 NONE
无文件写入操作

可疑产物与外联

中危 外部 URL
https://api.elevenlabs.io/v1/voices

SKILL.md:89

中危 外部 URL
https://api.elevenlabs.io/v1/user/subscription

SKILL.md:227

中危 外部 URL
https://api.elevenlabs.io/v1

scripts/elevenlabs_api.py:13

依赖与供应链

包名版本来源漏洞备注
httpx 未锁定 pip 代码导入但无版本锁定
fastapi 未锁定 pip 代码导入但无版本锁定
websockets 未锁定 pip WebSocket流功能需要,无版本锁定
mistralai 未锁定 pip 隐藏依赖,SKILL.md未声明

文件构成

2 个文件 · 448 行
Markdown 1 个文件 · 267 行Python 1 个文件 · 181 行
需关注文件 · 2
SKILL.md Markdown · 267 行
安全说明与实际代码不符 · https://api.elevenlabs.io/v1/voices · https://api.elevenlabs.io/v1/user/subscription
scripts/elevenlabs_api.py Python · 181 行
未声明的环境变量依赖 · https://api.elevenlabs.io/v1

安全亮点

代码结构清晰,无混淆或隐蔽执行逻辑
无反向shell或远程代码执行
网络请求仅指向官方ElevenLabs API域名
依赖项为标准安全库(httpx, fastapi)
API密钥仅用于直接调用对应服务,无外传行为