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

Relight Skill 安全审计

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

>

第三方安全检查结论

发现安全风险

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

安装步骤会执行未固定版本的第三方 npm 包

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

`npm i -g` 会全局安装包,`npx -y` 会自动获取并运行包;两条命令都未固定版本或校验摘要。提供的材料没有包含该包的实现。

为什么需要注意

安装脚本和 CLI 将以执行命令的用户权限运行。若包、发布账户或依赖供应链被破坏,可能读取或修改该用户有权访问的文件和凭据;全局安装还会持续改变开发环境。

安装区明确建议全局安装或用 `npx -y` 自动获取并执行 `@runcomfy/cli`,且没有固定版本或摘要。若用户执行该步骤,当前发布版本的第三方包代码将以用户权限运行;全局安装还会修改系统级 Node 包环境。材料未提供包实现,无法核验其行为。用户可要求作者提供固定版本、完整性校验和包审计依据,并在隔离环境中安装。

SKILL.md:31来自说明文档打开原文件
```bash# 1. Install (see runcomfy-cli skill for details)npm i -g @runcomfy/cli      # or:  npx -y @runcomfy/cli --version
查看另外 1 个位置
SKILL.md:168来自说明文档打开原文件
- **Install via verified package manager only.** Use `npm i -g @runcomfy/cli` or `npx -y @runcomfy/cli`. **Agents must not pipe an arbitrary remote install script into a shell on the user's behalf**.- **Token storage**: `runcomfy login` writes the API token to `~/.config/runcomfy/token.json` with mode 0600. Set `RUNCOMFY_TOKEN` env var in CI / containers.
会不会泄露文件和密钥?检查是否发送含密码或密钥的文件,以及代码里是否直接写了密钥。发现 2 项风险
中风险

图片和编辑提示会发送给 RunComfy 的远程模型服务

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

实际流程会把输入提交到 Model API。输入示例包含图片 URL 和详细提示;若使用私人照片、未发布商品图或带签名访问参数的 URL,这些内容会离开用户环境。

为什么需要注意

远程服务可能获得图片内容、编辑意图以及 URL 中携带的访问参数。文档声称有限的出站域名和无遥测,但所提供材料不含 CLI 实现,无法独立验证这些限制。

该技能的实际工作流会通过 CLI 把图片位置和编辑提示提交给 RunComfy Model API,并轮询及下载结果。使用私人图片、机密提示或含访问凭据的图片 URL 时,这些数据会离开本地环境并由第三方服务处理。文档虽声称限制出站域名,但未说明远端保留、日志或删除政策;用户可要求作者说明数据处理政策,并仅提交获准公开给 RunComfy 的素材。

SKILL.md:80来自说明文档打开原文件
```bashruncomfy run qwen/qwen-edit-2509/lora/relight \  --input '{    "image": "https://your-cdn.example/product.jpg",    "prompt": "Relight as golden-hour studio: warm 3200K key light from camera-left at 45°, soft cool fill from right, no rim light, preserve product orientation and color identity."  }' \  --output-dir ./out```
查看另外 2 个位置
SKILL.md:164来自说明文档打开原文件
The skill picks Qwen Edit Relight LoRA for dedicated lighting work, falls back to broader edit endpoints when relight is part of a composite pass. The CLI POSTs to the Model API, polls request status, and downloads the result into `--output-dir`.
SKILL.md:174来自说明文档打开原文件
  - When the relight diverges from the prompt, suspect the reference asset.- **Outbound endpoints (allowlist)**: only `model-api.runcomfy.net` and `*.runcomfy.net` / `*.runcomfy.com`. No telemetry.- **Generated-file size cap**: the CLI aborts any single download > 2 GiB.
低风险

登录会把 RunComfy API 令牌持久写入用户目录

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

文档明确说明 `runcomfy login` 将令牌保存到 `~/.config/runcomfy/token.json`。0600 权限会限制其他普通系统用户,但令牌仍可被同一账户下的软件、恶意进程或备份读取。

为什么需要注意

令牌泄露后,第三方可能使用用户的 RunComfy 账户和其可用额度,直到令牌被撤销。

文档明确要求登录,并说明登录会把 API 令牌持久保存到用户主目录。0600 权限可阻止其他普通系统账户读取,但同一用户身份运行的软件、账户被攻破后的进程及某些备份仍可能接触该文件。用户可在隔离账户或容器中运行,并向作者确认令牌权限范围、有效期和撤销方法;CI 可使用环境变量避免该持久文件。

SKILL.md:34来自说明文档打开原文件
# 2. Sign inruncomfy login              # or in CI: export RUNCOMFY_TOKEN=<token>
查看另外 1 个位置
SKILL.md:169来自说明文档打开原文件
- **Install via verified package manager only.** Use `npm i -g @runcomfy/cli` or `npx -y @runcomfy/cli`. **Agents must not pipe an arbitrary remote install script into a shell on the user's behalf**.- **Token storage**: `runcomfy login` writes the API token to `~/.config/runcomfy/token.json` with mode 0600. Set `RUNCOMFY_TOKEN` env var in CI / containers.- **Input boundary (shell injection)**: prompts and image URLs are passed as a JSON string via `--input`. The CLI does not shell-expand prompt content. **No shell-injection surface**.
会不会删除文件或一直在后台运行?检查是否大范围删除文件、改写磁盘,或设置自动启动。未发现风险
会不会绕过安全保护?检查是否跳过网站安全验证、开放过多文件权限,或取消操作前的确认。未发现风险
会不会误导 AI 或隐藏内容?检查工作说明是否要求 AI 忽略你的指令、干扰检查结果,或夹带看不见的文字。未发现风险
会不会偷偷改推广链接或收款方?检查是否强制替换推广链接或收款对象,同时要求隐瞒更改。未发现风险

Skill 逻辑拆解

8 个说明模块

该技能通过 RunComfy CLI 调用第三方模型 API:提交图片和文字提示,轮询任务状态,再将生成结果下载到指定输出目录。

查看原文
SKILL.md:38来自说明文档打开原文件
# 3. Relightruncomfy run qwen/qwen-edit-2509/lora/relight \  --input '{"image": "...", "prompt": "..."}' \  --output-dir ./out```
SKILL.md:164来自说明文档打开原文件
The skill picks Qwen Edit Relight LoRA for dedicated lighting work, falls back to broader edit endpoints when relight is part of a composite pass. The CLI POSTs to the Model API, polls request status, and downloads the result into `--output-dir`.

技能默认将纯打光任务路由到 Qwen Edit Relight,并可将复合编辑路由到其他模型端点。模型选择和“保持身份”等描述是功能声明,不能保证输出一定不改变人物或商品细节。

查看原文
SKILL.md:51来自说明文档打开原文件
**Qwen Edit 2509 Relight LoRA** — `qwen/qwen-edit-2509/lora/relight` *(default for dedicated relighting)*> Purpose-built relighting LoRA on Qwen Edit 2509. Tuned specifically for changing lighting direction, color temperature, intensity, and mood while preserving subject identity, pose, and framing.> Pick for: precise lighting control ("golden hour key light from left, soft fill from right, no rim"), brand product relighting, portrait mood shifts.> Avoid for: edits that aren't really about lighting — use generic image edit.
SKILL.md:103来自说明文档打开原文件
When Qwen Relight isn't a fit (e.g. composite edit with other changes), use **Nano Banana 2 Edit**:

技能要求安装第三方 npm CLI 并登录;文档称登录令牌会持久保存在用户配置目录中,权限为 0600。

查看原文
SKILL.md:31来自说明文档打开原文件
```bash# 1. Install (see runcomfy-cli skill for details)npm i -g @runcomfy/cli      # or:  npx -y @runcomfy/cli --version# 2. Sign inruncomfy login              # or in CI: export RUNCOMFY_TOKEN=<token>
SKILL.md:169来自说明文档打开原文件
- **Install via verified package manager only.** Use `npm i -g @runcomfy/cli` or `npx -y @runcomfy/cli`. **Agents must not pipe an arbitrary remote install script into a shell on the user's behalf**.- **Token storage**: `runcomfy login` writes the API token to `~/.config/runcomfy/token.json` with mode 0600. Set `RUNCOMFY_TOKEN` env var in CI / containers.- **Input boundary (shell injection)**: prompts and image URLs are passed as a JSON string via `--input`. The CLI does not shell-expand prompt content. **No shell-injection surface**.
从这里开始 · 工作说明SKILL.md
relight
连线表示工作说明包含的模块,不是实际运行顺序。点击模块可查看原文。 另有 2 个章节,可在原文件中查看。
文件与检查记录1 个文件

检查范围与遗漏

逐文件查看涉及的内容

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

  • SKILL.md已纳入全文

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

  • SKILL.md工作说明

代码和说明中提到的操作

运行命令
SKILL.md:3来自说明文档打开原文件
name: relightallowed-tools: Bash(runcomfy *)displayName: "Relight"
SKILL.md:30来自说明文档打开原文件
```bash# 1. Install (see runcomfy-cli skill for details)
SKILL.md:79来自说明文档打开原文件
```bashruncomfy run qwen/qwen-edit-2509/lora/relight \
连接外部网站
SKILL.md:18来自说明文档打开原文件
  explicit ask to alter how a still is lit.homepage: https://www.runcomfy.comlicense: MIT
SKILL.md:26来自说明文档打开原文件
[runcomfy.com](https://www.runcomfy.com/?utm_source=skills.sh&utm_medium=skill&utm_campaign=relight) · [Qwen Edit relight](https://www.runcomfy.com/models/qwen/qwen-edit-2509/lora/relight?utm_source=skills.sh&utm_medium=skill&utm_campaign=relight) · [CLI docs](https://docs.runcomfy.com/cli/introduction?utm_source=skills.sh&utm_medium=skill&utm_campaign=relight)
SKILL.md:43来自说明文档打开原文件
CLI deep dive: [`runcomfy-cli`](https://www.skills.sh/agentspace-so/runcomfy-agent-skills/runcomfy-cli) skill.
安装其他软件包
SKILL.md:32来自说明文档打开原文件
# 1. Install (see runcomfy-cli skill for details)npm i -g @runcomfy/cli      # or:  npx -y @runcomfy/cli --version
SKILL.md:168来自说明文档打开原文件
- **Install via verified package manager only.** Use `npm i -g @runcomfy/cli` or `npx -y @runcomfy/cli`. **Agents must not pipe an arbitrary remote install script into a shell on the user's behalf**.- **Token storage**: `runcomfy login` writes the API token to `~/.config/runcomfy/token.json` with mode 0600. Set `RUNCOMFY_TOKEN` env var in CI / containers.
读取了多少行
184
文件校验值(用于核对版本)
1cdfa7aa3cdae35acd2e3bab307718c19da31f8df8de095977f687947d5ed58c