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

Gws Workflow File Announce Skill 安全审计

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

Google Workflow: Announce a Drive file in a Chat space.

第三方安全检查结论

发现安全风险

已检查文件
1
发现的风险
2
会不会运行危险命令?检查是否下载程序后直接运行、让他人远程控制电脑,或藏起要运行的命令。未发现风险
会不会泄露文件和密钥?检查是否发送含密码或密钥的文件,以及代码里是否直接写了密钥。发现 2 项风险
中风险

Drive 文件名和自定义文字会披露给目标 Chat 空间

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

该命令会读取 Drive 文件名、构造公告并向指定空间发送消息。空间由调用者提供,材料中没有显示发送前核对成员或预览内容的步骤。

为什么需要注意

如果空间填错、成员范围过大,或文件名及自定义消息含敏感信息,空间成员会看到这些内容;发送行为还会以调用者账户留下持久消息。

该工作流会从 Drive 获取文件名,并向调用者指定的 Chat 空间发送公告;可选的自定义消息也会随公告发送。因此,如果空间标识填错或该空间包含不应知情的成员,文件名和消息文字可能被披露。材料未说明会核对空间成员或发送前预览。用户可要求作者提供收件空间确认与消息预览,并限制可用空间。

SKILL.md:30来自说明文档打开原文件
|------|----------|---------|-------------|| `--file-id` | ✓ | — | Drive file ID to announce || `--space` | ✓ | — | Chat space name (e.g. spaces/SPACE_ID) || `--message` | — | — | Custom announcement message || `--format` | — | — | Output format: json (default), table, yaml, csv |
查看另外 3 个位置
SKILL.md:44来自说明文档打开原文件
- This is a write command — sends a Chat message.- Use `gws drive +upload` first to upload the file, then announce it here.- Fetches the file name from Drive to build the announcement.
SKILL.md:23来自说明文档打开原文件
```bashgws workflow +file-announce --file-id <ID> --space <SPACE>```
SKILL.md:32来自说明文档打开原文件
| `--space` | ✓ | — | Chat space name (e.g. spaces/SPACE_ID) || `--message` | — | — | Custom announcement message || `--format` | — | — | Output format: json (default), table, yaml, csv |
中风险

上传建议可能把本地文件额外复制到 Google Drive

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

该 Skill 的声明目的只是公告已有的 Drive 文件,但提示又建议先运行另一个上传命令。上传会把本地文件内容传到云端,属于公告之外的独立数据操作。

为什么需要注意

如果代理把这条提示当作默认步骤,原本未获准上传的本地文件可能被存入 Google Drive,并受目标账户的共享、保留和管理员策略约束。

这段代码的正常用途

上传只是提示中的可选前置建议,不是此工作流的命令或自动步骤。实际用法要求提供已有的 Drive 文件 ID,并执行公告;所示命令不会读取或上传本地文件。因此材料不支持该 Skill 会自行把本地文件复制到 Drive。若用户另行选择运行上传命令,那是独立且应单独授权的数据操作。

这项判断针对展示的代码和适用条件,不表示风险已经实际发生。
SKILL.md:18来自说明文档打开原文件
Announce a Drive file in a Chat space
查看另外 2 个位置
SKILL.md:45来自说明文档打开原文件
- This is a write command — sends a Chat message.- Use `gws drive +upload` first to upload the file, then announce it here.- Fetches the file name from Drive to build the announcement.
SKILL.md:23来自说明文档打开原文件
```bashgws workflow +file-announce --file-id <ID> --space <SPACE>```
会不会删除文件或一直在后台运行?检查是否大范围删除文件、改写磁盘,或设置自动启动。未发现风险
会不会绕过安全保护?检查是否跳过网站安全验证、开放过多文件权限,或取消操作前的确认。未发现风险
会不会误导 AI 或隐藏内容?检查工作说明是否要求 AI 忽略你的指令、干扰检查结果,或夹带看不见的文字。未发现风险
会不会偷偷改推广链接或收款方?检查是否强制替换推广链接或收款对象,同时要求隐瞒更改。未发现风险

Skill 逻辑拆解

5 个说明模块

该 Skill 调用 `gws workflow +file-announce`,使用用户提供的 Drive 文件 ID 和 Chat 空间名称发布公告。

查看原文
SKILL.md:23来自说明文档打开原文件
```bashgws workflow +file-announce --file-id <ID> --space <SPACE>```
SKILL.md:30来自说明文档打开原文件
|------|----------|---------|-------------|| `--file-id` | ✓ | — | Drive file ID to announce || `--space` | ✓ | — | Chat space name (e.g. spaces/SPACE_ID) || `--message` | — | — | Custom announcement message || `--format` | — | — | Output format: json (default), table, yaml, csv |

该命令会从 Drive 读取文件名来构造公告,并执行向 Google Chat 发送消息的写操作。

查看原文
SKILL.md:44来自说明文档打开原文件
- This is a write command — sends a Chat message.- Use `gws drive +upload` first to upload the file, then announce it here.- Fetches the file name from Drive to build the announcement.

身份验证、全局参数和安全规则未包含在本次材料中;该 Skill 要求读取相邻的共享 Skill,缺失时还要求生成它。

查看原文
SKILL.md:16来自说明文档打开原文件
> **PREREQUISITE:** Read `../gws-shared/SKILL.md` for auth, global flags, and security rules. If missing, run `gws generate-skills` to create it.
从这里开始 · 工作说明SKILL.md
gws-workflow-file-announce
连线表示工作说明包含的模块,不是实际运行顺序。点击模块可查看原文。
文件与检查记录1 个文件

检查范围与遗漏

逐文件查看涉及的内容

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

  • SKILL.md已纳入全文

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

  • SKILL.md工作说明

代码和说明中提到的操作

运行命令
SKILL.md:22来自说明文档打开原文件
```bashgws workflow +file-announce --file-id <ID> --space <SPACE>
SKILL.md:37来自说明文档打开原文件
```bashgws workflow +file-announce --file-id FILE_ID --space spaces/ABC123
读取了多少行
52
文件校验值(用于核对版本)
5bc6c3f510019ff1173f3730ebd950b7ced3cf13998fa29e08360a9fc1e1d50b