跳转到正文
报告库
用途分类 / 其他用途

Image Edit Skill 安全审计

作者说它能做什么(原文)

>

第三方安全检查结论

先别安装或运行

已检查文件
1
发现的风险
3
会不会运行危险命令?检查是否下载程序后直接运行、让他人远程控制电脑,或藏起要运行的命令。发现 1 项风险
中风险

安装步骤会在全局范围运行并安装第三方 npm 软件

原文依据:4 处
发现了什么

文档要求通过 `npm i -g` 安装 RunComfy CLI,并展示通过 `npx` 从 GitHub 仓库全局添加技能。npm 安装过程可能执行包提供的安装脚本,而全局安装会在当前用户环境中留下可执行文件和持久改动。提供的材料没有包含这些依赖的实现,因此无法从本次审计核实它们实际执行什么。

为什么需要注意

如果下载的软件包、其依赖或发布账户被入侵,安装时运行的代码可读取当前用户有权访问的文件和凭据,并修改该用户的开发环境。

文档给出两个全局安装操作:通过 `npx` 从第三方 GitHub 仓库添加技能,以及用 `npm -g` 安装 RunComfy CLI。用户执行后会在其环境中安装并运行未包含于本次材料的第三方软件;材料无法证明这些包是否含安装脚本或具体会做什么。用户可要求提供固定版本、完整依赖源码和发布校验信息,并优先在隔离的低权限环境中检验。

SKILL.md:28来自说明文档打开原文件
```bashnpx skills add agentspace-so/runcomfy-skills --skill image-edit -g```
查看另外 3 个位置
SKILL.md:50来自说明文档打开原文件
## Prerequisites1. **RunComfy CLI** — `npm i -g @runcomfy/cli`2. **RunComfy account** — `runcomfy login`.3. **CI / containers** — set `RUNCOMFY_TOKEN=<token>`.
SKILL.md:29来自说明文档打开原文件
```bashnpx skills add agentspace-so/runcomfy-skills --skill image-edit -g```
SKILL.md:52来自说明文档打开原文件
1. **RunComfy CLI** — `npm i -g @runcomfy/cli`2. **RunComfy account** — `runcomfy login`.3. **CI / containers** — set `RUNCOMFY_TOKEN=<token>`.
会不会泄露文件和密钥?检查是否发送含密码或密钥的文件,以及代码里是否直接写了密钥。发现 1 项风险
高风险

图像、遮罩和编辑文字会交给第三方 RunComfy 服务处理

原文依据:4 处
发现了什么

CLI 会把包含编辑提示和输入 URL 的 JSON 发给 RunComfy Model API,图像及遮罩则由 RunComfy 服务器获取。要求“公开可获取”的 URL 还可能使输入文件在知道地址的情况下无需本机权限即可访问。

为什么需要注意

如果输入包含人脸、客户素材、未发布产品、文档截图、位置数据或隐藏在图像中的凭据,第三方服务及图像托管方会接触这些内容;公开 URL 也会扩大意外访问范围。

执行编辑时,提示词和输入 URL 会发送到 RunComfy Model API;图像及遮罩由其服务器获取。因此,用户提供的图像内容、遮罩和编辑文字会离开本机并交给第三方处理。Nano Banana 路由还明确要求可公开获取的 HTTPS URL,这可能扩大知道 URL 者的访问范围。用户可要求作者说明保留、训练和删除政策,并只提交已获授权且不敏感的素材。

SKILL.md:67来自说明文档打开原文件
| `prompt` | string | yes | — | Lead with preservation goals, end with the change. || `image_urls` | array | yes | — | **1–20** publicly-fetchable HTTPS URLs. || `number_of_images` | int | no | 1 | 1–4 outputs per call. |
查看另外 3 个位置
SKILL.md:195来自说明文档打开原文件
|---|---|---|---|| `prompt` | string | yes | What to fill / replace; preservation constraints for the unmasked surround. || `image` | string | yes | Source image URL. || `mask_image` | string | yes | **Grayscale mask URL** (white = inpaint, black = preserve). || `strength` | float | no | 0.3–0.6 retouching, 0.7–1.0 full replacement. |
SKILL.md:262来自说明文档打开原文件
The skill picks one of Nano Banana Edit / GPT Image 2 Edit / Flux Kontext Pro / Z-Image Turbo Inpaint based on user intent and invokes `runcomfy run <model_id>` with the matching JSON body. The CLI POSTs to the Model API, polls the request, fetches the result, and downloads any `.runcomfy.net`/`.runcomfy.com` URL into `--output-dir`. `Ctrl-C` cancels the remote request before exit.
SKILL.md:268来自说明文档打开原文件
- **Input boundary**: the user prompt is passed as a JSON string to the CLI via `--input`. The CLI does NOT shell-expand the prompt; it transmits the JSON body directly to the Model API over HTTPS. No shell injection surface from prompt content.- **Third-party content**: image / mask / video URLs you pass are fetched by the RunComfy model server, not by the CLI on your machine. Treat external URLs as untrusted; image-based prompt injection is a known risk for any image-edit / video-edit model.- **Outbound endpoints**: only `model-api.runcomfy.net` (request submission) and `*.runcomfy.net` / `*.runcomfy.com` (download whitelist for generated outputs). No telemetry, no callbacks.
会不会删除文件或一直在后台运行?检查是否大范围删除文件、改写磁盘,或设置自动启动。未发现风险
会不会绕过安全保护?检查是否跳过网站安全验证、开放过多文件权限,或取消操作前的确认。发现 1 项风险
低风险

安装命令没有固定依赖版本

原文依据:1 处
发现了什么

安装命令没有指定依赖版本。同样的命令以后可能下载不同代码,你实际安装的内容可能与这次检查时不同。

为什么需要注意

即使命令和报告没变,以后安装时也可能下载到另一份代码。

该全局安装命令只指定 GitHub 仓库和技能名,没有版本、标签或提交哈希。用户以后运行同一命令时,仓库内容可能已变化,因而安装的代码未必是本次材料所对应的版本。可要求作者提供固定提交或已签名发布版本,并在安装前核对来源。

SKILL.md:29来自说明文档打开原文件
```bashnpx skills add agentspace-so/runcomfy-skills --skill image-edit -g```
会不会误导 AI 或隐藏内容?检查工作说明是否要求 AI 忽略你的指令、干扰检查结果,或夹带看不见的文字。未发现风险
会不会偷偷改推广链接或收款方?检查是否强制替换推广链接或收款对象,同时要求隐瞒更改。未发现风险

Skill 逻辑拆解

8 个说明模块

该技能会根据编辑意图在四个 RunComfy 托管模型中选择一个,并通过本地 CLI 提交请求、轮询结果,再把生成文件下载到指定目录。

查看原文
SKILL.md:262来自说明文档打开原文件
The skill picks one of Nano Banana Edit / GPT Image 2 Edit / Flux Kontext Pro / Z-Image Turbo Inpaint based on user intent and invokes `runcomfy run <model_id>` with the matching JSON body. The CLI POSTs to the Model API, polls the request, fetches the result, and downloads any `.runcomfy.net`/`.runcomfy.com` URL into `--output-dir`. `Ctrl-C` cancels the remote request before exit.

输入图像并非只在本机处理:多个路由要求提供可通过 HTTPS 获取的图像或遮罩 URL,RunComfy 的服务器会读取这些地址。

查看原文
SKILL.md:67来自说明文档打开原文件
| `prompt` | string | yes | — | Lead with preservation goals, end with the change. || `image_urls` | array | yes | — | **1–20** publicly-fetchable HTTPS URLs. || `number_of_images` | int | no | 1 | 1–4 outputs per call. |
SKILL.md:117来自说明文档打开原文件
| `prompt` | string | yes | — | Edit instruction; lead with preservation. || `images` | string[] | yes | — | **Up to 10** HTTPS URLs. First is primary; rest are auxiliary. || `size` | enum | no | `auto` | `auto`, `1024_1024`, `1024_1536`, `1536_1024`. **Only these.** |
SKILL.md:196来自说明文档打开原文件
| `prompt` | string | yes | What to fill / replace; preservation constraints for the unmasked surround. || `image` | string | yes | Source image URL. || `mask_image` | string | yes | **Grayscale mask URL** (white = inpaint, black = preserve). || `strength` | float | no | 0.3–0.6 retouching, 0.7–1.0 full replacement. |
SKILL.md:268来自说明文档打开原文件
- **Input boundary**: the user prompt is passed as a JSON string to the CLI via `--input`. The CLI does NOT shell-expand the prompt; it transmits the JSON body directly to the Model API over HTTPS. No shell injection surface from prompt content.- **Third-party content**: image / mask / video URLs you pass are fetched by the RunComfy model server, not by the CLI on your machine. Treat external URLs as untrusted; image-based prompt injection is a known risk for any image-edit / video-edit model.- **Outbound endpoints**: only `model-api.runcomfy.net` (request submission) and `*.runcomfy.net` / `*.runcomfy.com` (download whitelist for generated outputs). No telemetry, no callbacks.

使用该技能需要 RunComfy 账户和 API 凭据;登录方式会把令牌写入用户配置目录,CI 方式则从环境变量读取令牌。

查看原文
SKILL.md:52来自说明文档打开原文件
1. **RunComfy CLI** — `npm i -g @runcomfy/cli`2. **RunComfy account** — `runcomfy login`.3. **CI / containers** — set `RUNCOMFY_TOKEN=<token>`.
SKILL.md:266来自说明文档打开原文件
- **Token storage**: `runcomfy login` writes the API token to `~/.config/runcomfy/token.json` with mode 0600 (owner-only read/write). Set `RUNCOMFY_TOKEN` env var to bypass the file entirely in CI / containers.- **Input boundary**: the user prompt is passed as a JSON string to the CLI via `--input`. The CLI does NOT shell-expand the prompt; it transmits the JSON body directly to the Model API over HTTPS. No shell injection surface from prompt content.
从这里开始 · 工作说明SKILL.md
image-edit
连线表示工作说明包含的模块,不是实际运行顺序。点击模块可查看原文。 另有 2 个章节,可在原文件中查看。
文件与检查记录1 个文件

检查范围与遗漏

逐文件查看涉及的内容

下方列出本次涉及的原文范围;纳入检查不代表已查清所有问题。

  • SKILL.md已纳入全文

这份报告只针对上方版本。我们看了拿到的代码和说明文件,没有实际运行 Skill,也没有检查它另外安装的软件包。因此,这不是“保证安全”的承诺;换了版本或使用环境,结果也可能不同。

  • SKILL.md工作说明

代码和说明中提到的操作

连接外部网站
SKILL.md:18来自说明文档打开原文件
  of images.homepage: https://www.runcomfy.comlicense: MIT
SKILL.md:24来自说明文档打开原文件
[runcomfy.com](https://www.runcomfy.com/?utm_source=skills.sh&utm_medium=skill&utm_campaign=image-edit) · [Nano Banana Edit](https://www.runcomfy.com/models/google/nano-banana-2/edit?utm_source=skills.sh&utm_medium=skill&utm_campaign=image-edit) · [GPT Image 2 Edit](https://www.runcomfy.com/models/openai/gpt-image-2/edit?utm_source=skills.sh&utm_medium=skill&utm_campaign=image-edit) · [Flux Kontext](https://www.runcomfy.com/models/blackforestlabs/flux-1-kontext-pro/image-to-image?utm_source=skills.sh&utm_medium=skill&utm_campaign=image-edit) · [Z-Image Inpaint](https://www.runcomfy.com/models/tongyi-mai/z-image/turbo/inpainting?utm_source=skills.sh&utm_medium=skill&utm_campaign=image-edit) · [GitHub](https://github.com/agentspace-so/runcomfy-skills/tree/main/image-edit)
SKILL.md:81来自说明文档打开原文件
    "prompt": "Keep the subject identity, pose, and clothing unchanged. Convert the background into a rainy neon cyberpunk street.",    "image_urls": ["https://.../portrait.jpg"]  }' \
运行命令
SKILL.md:28来自说明文档打开原文件
```bashnpx skills add agentspace-so/runcomfy-skills --skill image-edit -g
SKILL.md:77来自说明文档打开原文件
```bashruncomfy run google/nano-banana-2/edit \
SKILL.md:88来自说明文档打开原文件
```bashruncomfy run google/nano-banana-2/edit \
安装其他软件包
SKILL.md:29来自说明文档打开原文件
```bashnpx skills add agentspace-so/runcomfy-skills --skill image-edit -g```
读取了多少行
271
文件校验值(用于核对版本)
e00b0a73bc3a5cccef65f64548af88b2fbe12fc85534341a3d4ce90e3342e663