扫描报告
50 /100
math-utils
基于本地CLI工具的数学计算技能
数学计算工具存在命令注入漏洞:expression参数未经验证直接拼接到shell命令中,SKILL.md未警告此风险
谨慎使用
必须对expression参数进行严格白名单验证(仅允许数字、括号、运算符),或改用安全计算库(如math.js)替代CLI调用
攻击链 3 步
◎
入口 用户提供恶意数学表达式
main.js:18⬡
提权 expression参数未过滤直接拼接入shell命令
main.js:24◉
影响 注入命令执行(如读取/etc/passwd、反弹shell)
main.js:24安全发现 3 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 高危 | 命令注入漏洞 代码执行 | main.js:24 |
| 中危 | 安全风险未声明 文档欺骗 | SKILL.md:6 |
| 低危 | 无第三方依赖锁定 供应链 | main.js:1 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 命令执行 | WRITE | WRITE | ✓ 一致 | main.js:24 execSync调用 |
| 文件系统 | READ | READ | ✓ 一致 | 仅Node.js标准模块加载 |
目录结构
2 文件 · 2.4 KB · 65 行 JavaScript 1f · 47L
Markdown 1f · 18L
├─
main.js
JavaScript
└─
SKILL.md
Markdown
依赖分析 1 项
| 包名 | 版本 | 来源 | 已知漏洞 | 备注 |
|---|---|---|---|---|
Node.js内置模块 | N/A | 标准库 | 否 | 仅用child_process和os模块 |
安全亮点
✓ 代码简洁,仅约50行,易于审查
✓ 仅使用Node.js内置模块,无第三方依赖
✓ 实现了跨平台支持(Linux/macOS/Windows)
✓ 包含备选方案提高鲁棒性