安全决策报告

xzz-video-factory

合法视频生成流水线,存在API密钥硬编码和依赖版本未锁定问题,但无恶意行为证据

安装决策优先 来源: ClawHub 扫描时间: 2026/7/11
文件 6
IOC 1
越权项 0
发现 4

为什么得出这个结论

1/4 个维度触发
通过
声明与实际能力

声明资源与推断能力基本一致。

复核
隐藏执行与外联

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

阻止
攻击链与高危发现

报告包含 0 步攻击链,另有 1 项高危或严重发现。

复核
依赖与供应链卫生

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

风险分是怎么被拉高的

硬编码API密钥 +15

tts_engine.py:18 包含明文MiniMax API密钥后备值

依赖版本未锁定 +8

所有依赖均无版本锁定,存在供应链风险

目录结构文档与实际不符 +2

SKILL.md声明pipeline/目录,实际为scripts/

最关键的证据

高危 凭证窃取

API密钥硬编码

tts_engine.py包含明文MiniMax API密钥后备值,若.env文件不存在则使用该密钥。密钥已公开暴露在代码中。

scripts/tts_engine.py:18
删除硬编码密钥,强制要求.env文件配置;或使用空字符串作为默认值并在缺失时抛出错误
中危 供应链

依赖版本未锁定

SKILL.md和references/config.md中声明的依赖均无版本锁定约束,pip install时可能安装不兼容版本或含漏洞版本。

SKILL.md:23
使用pip freeze生成requirements.txt并锁定版本;或使用poetry/PDM管理依赖
低危 文档欺骗

目录结构文档与实际不符

SKILL.md声称脚本位于pipeline/目录,但实际文件位于scripts/目录。不影响安全但影响可用性。

SKILL.md:1
统一文档与实际目录结构
低危 敏感访问

硬编码本地路径暴露用户环境

多个脚本包含硬编码的Windows用户目录路径(C:\Users\85064\Desktop\...),暴露开发者个人机器信息。

scripts/make_videos.py, scripts/analyze_ref.py:11-12, 28
使用相对路径或环境变量配置素材目录

声明能力 vs 实际能力

文件系统 通过
声明 WRITE
→
推断 WRITE
多个脚本读写本地文件用于视频处理
网络访问 通过
声明 READ
→
推断 READ
tts_engine.py:24 调用MiniMax API
命令执行 通过
声明 WRITE
→
推断 WRITE
make_videos.py/analyze_ref.py 通过subprocess调用FFmpeg
环境变量 通过
声明 NONE
→
推断 READ
tts_engine.py:13-16 读取MINIMAX_API_KEY等环境变量

可疑产物与外联

中危 外部 URL
https://api.minimax.chat/v1/t2a_v2

scripts/tts_engine.py:24

依赖与供应链

包名版本来源漏洞备注
faster-whisper * pip 否 无版本锁定
aiohttp * pip 否 无版本锁定
pypinyin * pip 否 无版本锁定
jieba * pip 否 无版本锁定
pillow * pip 否 无版本锁定
numpy * pip 否 无版本锁定
edge-tts * pip 否 无版本锁定
python-dotenv * pip 否 无版本锁定

文件构成

6 个文件 · 1364 行
Python 4 个文件 · 1127 行Markdown 2 个文件 · 237 行
需关注文件 · 2
SKILL.md Markdown · 129 行
依赖版本未锁定 · 目录结构文档与实际不符
scripts/tts_engine.py Python · 112 行
API密钥硬编码 · https://api.minimax.chat/v1/t2a_v2
其他文件 · make_videos.py · analyze_ref.py · text_corrector.py · config.md

安全亮点

纯本地视频处理流水线,无数据外传行为
API密钥读取逻辑正确(优先.env,环境变量次之,硬编码仅作后备)
FFmpeg调用仅用于视频处理,范围合理
无Base64编码、eval()、subprocess管道等危险模式
未发现凭证收割、路径遍历或敏感文件访问