安全决策报告
MiniMax TTS
硬编码 API 密钥暴露是严重安全问题,同时存在未声明的文件系统写入操作
最直接的威胁证据
严重 凭证窃取
硬编码 API 密钥暴露 API 密钥被硬编码在源代码中,任何能访问代码的人都可以获取并使用该密钥。密钥类型为 sk-api- 格式,属于 MiniMax 平台的真实认证凭证。
scripts/tts.py:17 为什么得出这个结论
2/4 个维度触发 阻止
声明与实际能力
发现 1 项声明之外的能力或越权行为。
复核
隐藏执行与外联
提取到 2 个一般风险产物,需要结合上下文判断。
阻止
攻击链与高危发现
报告包含 3 步攻击链,另有 2 项高危或严重发现。
复核
依赖与供应链卫生
发现 1 项需要关注的依赖或供应链线索。
攻击链
01
用户通过 SKILL.md 了解技能功能
初始入口 · SKILL.md:1
02
攻击者获取代码后发现硬编码的 API 密钥
权限提升 · scripts/tts.py:17
03
利用泄露的 API 密钥在 MiniMax 平台进行未授权消费或窃取服务
最终危害 · N/A
风险分是怎么被拉高的
硬编码 API 密钥 +40
scripts/tts.py:17 硬编码了真实 API 密钥 sk-api-Tszh1qpO-8wtcF_ySIPlvkPN_o9FizrEbr4O6BobaceSqXjknZ8Vy05GYjBWpnYWvmME1pSpDV7GFKrx6gOyTrakw8i3v23VYd4ndyeeCSJkI3H_LGT-LoE,任何能读取代码的人均可使用
未声明的文件写入 +15
SKILL.md 未声明文件系统 WRITE 权限,但代码会创建 ./audio/ 目录并写入音频文件
文档-行为差异 +10
文档未提及密钥处理方式,存在误导性
最关键的证据
严重 凭证窃取
硬编码 API 密钥暴露
API 密钥被硬编码在源代码中,任何能访问代码的人都可以获取并使用该密钥。密钥类型为 sk-api- 格式,属于 MiniMax 平台的真实认证凭证。
scripts/tts.py:17 使用环境变量 os.environ.get('MINIMAX_API_KEY') 获取密钥,绝不将密钥写入源代码
高危 文档欺骗
未声明的文件系统写入操作
SKILL.md 完全未提及技能会创建目录和写入文件,但代码在第73-74行会创建 ./audio/ 目录并保存音频文件
scripts/tts.py:73 在 SKILL.md 中明确声明需要 filesystem:WRITE 权限,并说明输出文件路径
中危 供应链
requests 库无版本锁定
代码依赖 requests 库但未在 requirements.txt 中指定版本,可能引入依赖混淆风险
scripts/tts.py:8 创建 requirements.txt 并锁定版本:requests>=2.28.0
声明能力 vs 实际能力
网络访问 通过
声明 READ
→ 推断 READ
scripts/tts.py:35 向 api.minimaxi.com 发起 API 请求,与 TTS 功能相关 文件系统 阻止
声明 NONE
→ 推断 WRITE
scripts/tts.py:73-74 创建 ./audio/ 目录并写入音频文件 可疑产物与外联
中危 外部 URL
https://platform.minimax.io/docs/api-reference/speech-t2a-http SKILL.md:4
中危 外部 URL
https://api.minimaxi.com scripts/tts.py:14
依赖与供应链
| 包名 | 版本 | 来源 | 漏洞 | 备注 |
|---|---|---|---|---|
| requests | * | pip | 否 | 无版本锁定,存在供应链风险 |
文件构成
2 个文件 · 240 行
Python 1 个文件 · 177 行Markdown 1 个文件 · 63 行
需关注文件 · 2
scripts/tts.py 硬编码 API 密钥暴露 · 未声明的文件系统写入操作 · requests 库无版本锁定 · https://api.minimaxi.com
SKILL.md https://platform.minimax.io/docs/api-reference/speech-t2a-http
安全亮点
功能相对简单,核心逻辑清晰
使用了 HTTPS 进行 API 通信
有基本的错误处理和超时设置
未发现代码混淆或隐藏的恶意行为