Scan Report
This report was generated in Chinese. Some content may be in Chinese.
5 /100
nanobanana-image-generation
Gemini API 图像生成 + 本地 matplotlib 绑图工具,生成科研出版级图片
功能完整的 Gemini 图像生成+本地绑图技能,所有行为均与文档声明一致,无恶意代码、无越权操作、无数据外泄。
Safe to install
可直接使用。注意仅通过配置 NANOBANANA_ALLOW_THIRD_PARTY 使用可信第三方端点。
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | READ | READ | ✓ Aligned | SKILL.md: 文件读取仅用于 input images、prompt files、JSON specs;输出仅写 output/nanobanana/ 和… |
| Network | READ | READ | ✓ Aligned | SKILL.md: 仅向配置的 Gemini 端点发送 prompt+API key+input images;plot 模式纯本地 |
| Shell | NONE | NONE | — | 所有脚本均无 subprocess/os.system/eval 调用,纯 urllib/fetch HTTP |
1 Critical 3 High 5 findings
Critical Encoded Execution Base64 编码执行(代码混淆)
Buffer.from(inlineData.data, "base64" scripts/generate_image.js:330 High API Key 疑似硬编码凭证
API_KEY="your-provider-key" SKILL.md:59 High API Key 疑似硬编码凭证
api_key="your_provider_api_key" SKILL.md:217 High API Key 疑似硬编码凭证
api_key="your_zzz_api_key" SKILL.md:222 Medium External URL 外部 URL
https://api.zhizengzeng.com/google SKILL.md:67 File Tree
15 files · 97.8 KB · 2602 lines Markdown 8f · 1264L
Python 4f · 965L
JavaScript 1f · 348L
JSON 1f · 18L
YAML 1f · 7L
├─
▾
agents
│ └─
openai.yaml
YAML
├─
▾
references
│ ├─
api-reference.md
Markdown
│ ├─
materials-science-figure-template.md
Markdown
│ ├─
materials-science-figure-templates.json
JSON
│ ├─
natural-language-plot-workflow.md
Markdown
│ ├─
prompt-templates.md
Markdown
│ ├─
publication-chart-patterns.md
Markdown
│ ├─
publication-figure-design.md
Markdown
│ └─
publication-plot-api.md
Markdown
├─
▾
scripts
│ ├─
build_materials_figure_prompt.py
Python
│ ├─
build_plot_spec.py
Python
│ ├─
generate_image.js
JavaScript
│ ├─
generate_image.py
Python
│ └─
plot_publication_figure.py
Python
└─
SKILL.md
Markdown
Dependencies 3 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
matplotlib | * | pip | No | 无版本锁定但属可信科学计算库,plot 模式本地使用 |
numpy | * | pip | No | 无版本锁定但属可信数值计算库,plot 模式本地使用 |
Node.js built-in (fs, path, url, fetch) | bundled | Node.js stdlib | No | 无第三方依赖 |
Security Positives
✓ 所有脚本代码清晰可审计,无 subprocess/shell 执行,无 base64 解码执行代码
✓ 网络请求使用标准 urllib/fetch,无自定义协议或混淆载荷
✓ 第三方针点端点有 fail-closed 保护(无 --allow-third-party 则拒绝)
✓ API key 支持通过文件读取(NANOBANANA_API_KEY_FILE)避免命令行泄露
✓ plot 模式完全本地运行,无需网络和凭证
✓ prompt-only 模式(--print-prompt / build_materials_figure_prompt.py)可本地预览不触发 API
✓ 文档完整说明了两种模式的边界(image vs plot),权限边界清晰
✓ 代码无环境变量遍历、无凭证收割、无文件遍历越权