安全决策报告

xerg

纯文档型技能,通过npx执行外部npm包实现功能。权限声明与文档行为存在偏差(skill_invoke:ADMIN未使用、database:WRITE缺失),存在供应链风险和未声明的网络写权限。

安装决策优先 来源: ClawHub 扫描时间: 10 天前
文件 2
IOC 10
越权项 4
发现 6
最直接的威胁证据

为什么得出这个结论

1/4 个维度触发
阻止
声明与实际能力

发现 4 项声明之外的能力或越权行为。

复核
隐藏执行与外联

提取到 10 个一般风险产物,需要结合上下文判断。

通过
攻击链与高危发现

没有形成明确的恶意路径。

通过
依赖与供应链卫生

依赖结构存在,但暂未看到明显高危告警。

风险分是怎么被拉高的

供应链依赖风险 +10

通过npx执行外部npm包@xerg/cli,无法审查实际代码行为

权限声明-行为偏差 +10

声明skill_invoke:ADMIN但文档未使用;未声明database:WRITE但读取Hermes state.db

未声明的network:WRITE +8

activate --push-latest会POST审计结果到api.xerg.ai,但只声明network:READ

外部依赖声明宽泛 +5

SSH/rsync/railway/fly列为依赖但未明确是否实际调用

文档透明度高 +-5

文档详细说明权限请求、用户确认机制和边界限制

最关键的证据

中危 供应链

外部npm包供应链依赖

技能通过npx执行外部包@xerg/cli,无法审查实际代码。所有功能实现依赖于第三方npm包。

SKILL.md:62
考虑fork npm包或使用预安装模式,确保可审查代码版本
中危 权限提升

权限声明超出实际需要

声明skill_invoke:ADMIN但文档中未使用此权限。技能仅调用npx命令,不涉及技能间调用。

_meta.json:4
将skill_invoke降级为NONE,与实际使用一致
中危 权限提升

缺少database权限声明

文档明确说明读取Hermes state.db(SQLite数据库),但未声明database:READ权限。

SKILL.md:128
在_meta.json中添加database:READ权限声明
低危 权限提升

缺少filesystem权限声明

技能读取日志文件、转录文件等本地数据,但未声明filesystem:READ。

SKILL.md:109
添加filesystem:READ或明确列出需要访问的路径
低危 权限提升

未声明的network:WRITE

activate --push-latest命令将审计结果POST到api.xerg.ai,但权限声明只有network:READ。

SKILL.md:77
将network:READ更新为network:WRITE或network:READ+network:WRITE
低危 文档欺骗

外部工具依赖声明不明确

dependencies列表包含ssh/rsync/railway/fly,但文档未明确这些是否实际被调用。SSH/rsync可能用于远程审计功能。

_meta.json:18
明确标注这些依赖的可选性质或实际使用场景

声明能力 vs 实际能力

环境变量 通过
声明 READ
推断 READ
SKILL.md:30-40 声明读取XERG_API_KEY等变量
网络访问 阻止
声明 READ
推断 WRITE
SKILL.md:77 activate --push-latest POST数据到api.xerg.ai
命令执行 通过
声明 WRITE
推断 WRITE
SKILL.md:62-67 所有npx命令执行
技能调用 阻止
声明 ADMIN
推断 NONE
_meta.json:4 声明但SKILL.md未使用
数据库 阻止
声明 NONE
推断 READ
SKILL.md:125-128 读取Hermes state.db
文件系统 阻止
声明 NONE
推断 READ
SKILL.md:109-115 读取日志、转录文件、CSV

可疑产物与外联

中危 外部 URL
https://xerg.ai/skill.md

README.md:9

中危 外部 URL
https://xerg.ai/docs

README.md:10

中危 外部 URL
https://status.xerg.ai

README.md:11

中危 外部 URL
https://api.xerg.ai.

README.md:32

中危 外部 URL
https://www.npmjs.com/package/@xerg/cli

README.md:39

中危 外部 URL
https://www.openssh.com/

README.md:42

中危 外部 URL
https://rsync.samba.org/

README.md:45

中危 外部 URL
https://fly.io/docs/flyctl/

README.md:51

中危 外部 URL
https://xerg.ai/agents

README.md:66

提示 邮箱
[email protected]

README.md:221

依赖与供应链

包名版本来源漏洞备注
@xerg/cli latest npm 外部npm包,实际代码不可审查
ssh N/A system 外部二进制,用于远程审计功能
rsync N/A system 外部二进制,用于远程审计功能
railway N/A npm Railway CLI依赖
fly N/A system Fly.io CLI依赖

文件构成

2 个文件 · 442 行
Markdown 2 个文件 · 442 行
需关注文件 · 2
README.md Markdown · 221 行
https://xerg.ai/skill.md · https://xerg.ai/docs · https://status.xerg.ai · https://api.xerg.ai. · https://www.npmjs.com/package/@xerg/cli · https://www.openssh.com/ · https://rsync.samba.org/ · https://fly.io/docs/flyctl/ · https://xerg.ai/agents · [email protected]
SKILL.md Markdown · 221 行
外部npm包供应链依赖 · 缺少database权限声明 · 缺少filesystem权限声明 · 未声明的network:WRITE

安全亮点

文档透明度高,详细说明权限请求和用户确认机制
明确禁止自动推送数据,强调本地优先
明确禁止粘贴API密钥到终端
QM场景有专门的私有作用域程序
不处理provider bills,边界清晰
明确说明credential处理的限制