安全决策报告
nano-banana-2-marketing-image
合法的 AI Hive 图片生成技能,API Key 本地存储安全,网络请求固定地址,存在权限声明不足但无恶意行为
为什么得出这个结论
1/4 个维度触发 阻止
声明与实际能力
发现 3 项声明之外的能力或越权行为。
复核
隐藏执行与外联
提取到 2 个一般风险产物,需要结合上下文判断。
通过
攻击链与高危发现
没有形成明确的恶意路径。
复核
依赖与供应链卫生
发现 1 项需要关注的依赖或供应链线索。
风险分是怎么被拉高的
权限声明与实际不符 +15
SKILL.md 声明 NONE 但代码实际使用 filesystem:WRITE, environment:READ, network:WRITE
依赖无版本锁定 +10
requirements.txt 缺失,代码依赖 requests 库无版本约束
最关键的证据
中危 供应链
缺少依赖版本锁定
代码依赖 requests 库但无 requirements.txt 或版本约束,存在依赖供应链风险
scripts/imagegen.py:14 添加 requirements.txt 并锁定 requests 版本
低危 文档欺骗
权限声明与实际能力不符
SKILL.md 声明 NONE 权限,但代码实际使用了 filesystem:WRITE(文件写入、目录创建)、environment:READ(读取环境变量)、network:WRITE(HTTP 请求)
SKILL.md:1 补充声明实际使用的权限
低危 敏感访问
访问敏感配置文件
代码读写 ~/.ai-hive/config.json 存储 API Key
scripts/imagegen.py:79 已正确设置 0o600 权限,保持此安全实践
声明能力 vs 实际能力
文件系统 阻止
声明 NONE
→ 推断 WRITE
scripts/imagegen.py:268 创建目录 ~Downloads/AiHive 网络访问 阻止
声明 NONE
→ 推断 WRITE
scripts/imagegen.py:145 requests.request 发起 HTTP 请求 环境变量 阻止
声明 NONE
→ 推断 READ
scripts/imagegen.py:67 os.environ.get 读取 AI_HIVE_API_KEY 命令执行 通过
声明 NONE
→ 推断 NONE
无 subprocess 调用 可疑产物与外联
中危 外部 URL
https://ai-hive.iclip.cn/api SKILL.md:70
中危 外部 URL
https://ai-hive.iclip.cn/chat scripts/imagegen.py:28
依赖与供应链
| 包名 | 版本 | 来源 | 漏洞 | 备注 |
|---|---|---|---|---|
| requests | * | pip | 否 | 无版本锁定,存在供应链风险 |
文件构成
3 个文件 · 664 行
Python 1 个文件 · 583 行Markdown 1 个文件 · 78 行JSON 1 个文件 · 3 行
需关注文件 · 2
scripts/imagegen.py 缺少依赖版本锁定 · 访问敏感配置文件 · https://ai-hive.iclip.cn/chat
SKILL.md 权限声明与实际能力不符 · https://ai-hive.iclip.cn/api
其他文件 · config.example.json
安全亮点
API Key 本地存储并设置 0o600 权限,符合安全实践
网络请求固定地址 https://ai-hive.iclip.cn/api,不接受自定义地址
仅允许上传图片 MIME 类型,文件类型白名单
无代码混淆、无 base64/eval 执行
无凭证外传、无敏感路径遍历