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

Gws Slides Skill 安全审计

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

Google Slides: Read and write presentations.

第三方安全检查结论

发现安全风险

已检查文件
1
发现的风险
1
会不会运行危险命令?检查是否下载程序后直接运行、让他人远程控制电脑,或藏起要运行的命令。未发现风险
会不会泄露文件和密钥?检查是否发送含密码或密钥的文件,以及代码里是否直接写了密钥。未发现风险
会不会删除文件或一直在后台运行?检查是否大范围删除文件、改写磁盘,或设置自动启动。发现 1 项风险
中风险

缺少共享安全说明时会要求运行生成命令

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

这是一条实际前置指令:如果相邻的共享 Skill 不存在,代理将运行 `gws generate-skills`。该命令由外部 `gws` 程序执行,并被描述为会创建缺失文件,但这里没有列出生成路径、生成内容或是否覆盖其他文件。

为什么需要注意

在启用写权限的环境中,外部程序可能在用户的 Skill 目录中产生持久文件。由于生成实现和输出均未提供,用户无法从本次材料确认变更边界,也无法在执行前审核生成的身份验证与安全规则。

这段证据能说明什么

这是一条生效的前置指令:仅当相邻的共享 Skill 缺失时,代理会运行外部 `gws generate-skills` 命令。文本表明该命令用于创建缺失文件,因此可能写入本地文件系统;但所给源码没有说明写入位置、生成内容或覆盖行为,无法据此确认会损害用户文件。用户可要求作者说明该命令的准确写入范围和覆盖策略,或仅允许在隔离目录中运行。

这项判断针对展示的代码和适用条件,不表示风险已经实际发生。
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.
会不会绕过安全保护?检查是否跳过网站安全验证、开放过多文件权限,或取消操作前的确认。未发现风险
会不会误导 AI 或隐藏内容?检查工作说明是否要求 AI 忽略你的指令、干扰检查结果,或夹带看不见的文字。未发现风险
会不会偷偷改推广链接或收款方?检查是否强制替换推广链接或收款对象,同时要求隐瞒更改。未发现风险

Skill 逻辑拆解

2 个说明模块

该 Skill 是 Google Slides 的命令行操作说明,依赖本机已有的 `gws` 程序,并通过 `gws slides` 调用演示文稿 API。

查看原文
SKILL.md:8来自说明文档打开原文件
    category: "productivity"    requires:      bins:        - gws    cliHelp: "gws slides --help"---
SKILL.md:18来自说明文档打开原文件
```bashgws slides <resource> <method> [flags]```

所列功能既包括读取最新演示文稿,也包括创建空白演示文稿和批量修改现有演示文稿;批量请求在全部验证通过后应用。

查看原文
SKILL.md:26来自说明文档打开原文件
  - `batchUpdate` — Applies one or more updates to the presentation. Each request is validated before being applied. If any request is not valid, then the entire request will fail and nothing will be applied. Some requests have replies to give you some information about how they are applied. Other requests do not need to return information; these each return an empty reply. The order of replies matches that of the requests.  - `create` — Creates a blank presentation using the title given in the request. If a `presentationId` is provided, it is used as the ID of the new presentation. Otherwise, a new ID is generated. Other fields in the request, including any provided content, are ignored. Returns the created presentation.  - `get` — Gets the latest version of the specified presentation.  - `pages` — Operations on the 'pages' resource

在调用 API 前,该 Skill 要求先查看命令帮助和具体方法的 schema,再据此构造参数及 JSON 请求。

查看原文
SKILL.md:31来自说明文档打开原文件
## Discovering CommandsBefore calling any API method, inspect it:```bash# Browse resources and methodsgws slides --help# Inspect a method's required params, types, and defaultsgws schema slides.<resource>.<method>```Use `gws schema` output to build your `--params` and `--json` flags.

身份验证、全局参数和安全规则不在所提供源码中,而是委托给相邻的共享 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-slides
连线表示工作说明包含的模块,不是实际运行顺序。点击模块可查看原文。
文件与检查记录1 个文件

检查范围与遗漏

逐文件查看涉及的内容

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

  • SKILL.md已纳入全文

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

  • SKILL.md工作说明

代码和说明中提到的操作

运行命令
SKILL.md:18来自说明文档打开原文件
```bashgws slides <resource> <method> [flags]
SKILL.md:35来自说明文档打开原文件
```bash# Browse resources and methods
连接外部网站
SKILL.md:26来自说明文档打开原文件
  - `batchUpdate` — Applies one or more updates to the presentation. Each request is validated before being applied. If any request is not valid, then the entire request will fail and nothing will be applied. Some requests have replies to give you some information about how they are applied. Other requests do not need to return information; these each return an empty reply. The order of replies matches that of the requests.  - `create` — Creates a blank presentation using the title given in the request. If a `presentationId` is provided, it is used as the ID of the new presentation. Otherwise, a new ID is generated. Other fields in the request, including any  
读取了多少行
45
文件校验值(用于核对版本)
89ff0847a7e9daf23f64685e70dd614382723ff461fc80f5c7a8d814bbe7a5a9