安全决策报告

cmd-execution-test

发现文档-行为不一致:SKILL.md 仅声明预定义诊断命令,但代码实际支持 --cmd 参数执行任意shell命令,存在未声明的高危能力

安装决策优先 来源: ClawHub 扫描时间: 2026/6/22
文件 5
IOC 3
越权项 1
发现 2
最直接的威胁证据
01
用户查看 SKILL.md 了解工具功能 初始入口 · SKILL.md
02
攻击者利用未文档化的 --cmd 参数执行恶意命令 权限提升 · cmd-executor.mjs
03
通过 execSync 执行任意shell命令完成系统入侵 最终危害 · cmd-executor.mjs

为什么得出这个结论

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

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

阻止
隐藏执行与外联

提取到 1 个高危 IOC 或外联信号。

阻止
攻击链与高危发现

报告包含 3 步攻击链,另有 0 项高危或严重发现。

复核
依赖与供应链卫生

没有完整依赖信息,供应链判断需要保留弹性。

攻击链

01
用户查看 SKILL.md 了解工具功能

初始入口 · SKILL.md:1

02
攻击者利用未文档化的 --cmd 参数执行恶意命令

权限提升 · cmd-executor.mjs:22

03
通过 execSync 执行任意shell命令完成系统入侵

最终危害 · cmd-executor.mjs:50

风险分是怎么被拉高的

未声明的任意命令执行能力 +25

SKILL.md 仅描述 --type 参数的预定义命令集,但代码支持 --cmd 执行任意shell命令,这是典型的阴影功能

execSync 缺乏输入验证 +10

代码使用 execSync 直接执行命令,无任何命令白名单或过滤机制

最关键的证据

中危 文档欺骗

未声明的 --cmd 自定义命令执行能力

SKILL.md 文档仅描述了 --type 参数支持的 systeminfo/network/filesystem 预定义命令集,但代码第22行支持 --cmd 参数允许执行任意shell命令,这是典型的文档-行为不一致(阴影功能)

cmd-executor.mjs:22
如 --cmd 功能非必需应移除;如需保留必须在 SKILL.md 中明确声明,并添加命令白名单过滤机制
低危 供应链

硬编码第三方IP地址

代码第98行硬编码 8.8.8.8 (Google DNS) 用于网络测试,这是标准DNS服务器但缺乏灵活性

cmd-executor.mjs:98
考虑从配置读取或使用环境变量,便于用户自定义

声明能力 vs 实际能力

命令执行 阻止
声明 READ
→
推断 WRITE
cmd-executor.mjs:50 代码使用 execSync 执行任意命令
网络访问 通过
声明 READ
→
推断 READ
cmd-executor.mjs:98-105 使用 ping/traceroute/nslookup 进行网络诊断,符合文档声明
文件系统 通过
声明 READ
→
推断 READ
cmd-executor.mjs:107-112 使用 dir/ls/tree 列出目录,符合文档声明

可疑产物与外联

高危 IP 地址
8.8.8.8

cmd-executor.mjs:98

中危 外部 URL
https://clawhub.ai/user/qiqi704

skill-card.md:7

中危 外部 URL
https://clawhub.ai/qiqi704/cs1111

skill-card.md:27

依赖与供应链

没有结构化依赖告警。

文件构成

5 个文件 · 689 行
JavaScript 1 个文件 · 260 行Markdown 2 个文件 · 249 行JSON 2 个文件 · 180 行
需关注文件 · 2
cmd-executor.mjs JavaScript · 260 行
未声明的 --cmd 自定义命令执行能力 · 硬编码第三方IP地址 · 8.8.8.8
skill-card.md Markdown · 40 行
https://clawhub.ai/user/qiqi704 · https://clawhub.ai/qiqi704/cs1111
其他文件 · SKILL.md · test-commands.json · _meta.json

安全亮点

使用Node.js内置模块,无外部依赖风险
预定义的诊断命令集合理且用途明确
包含命令超时机制(maxOutputLength截断)
支持JSON和Markdown双格式输出
跨平台支持(Windows/Linux/macOS)