安全审核标准 v2 — 自动化 Skill
元信息
- name: 安全审核标准 v2
- description: 自动扫描 workspace/skills 目录,对所有 Skill 文件进行安全审计、风险评分和安装建议
- version: 2.0
- author: 秦大虾
- trigger: ["扫描技能", "批量检查技能", "安全审计", "风险分析", "安装建议", "自动化", "审核技能", "查漏洞"]
使用方式
用户说「扫描技能」或「安全审计」时,自动执行以下流程,无需额外参数。
核心逻辑
扫描目录
/workspace/skills/(含子目录)
文件类型
.py / .json / .js / .yaml / .yml / .sh
可疑关键词库(分级)
| 等级 | 关键词 | 扣分 |
|---|---|---|
| 严重 | eval(, exec(, os.system, subprocess.call, subprocess.run, __import__, importlib, pty.spawn | -25 |
| 高危 | requests.get, requests.post, urllib.request, http.client, socket.create_connection, curl, wget | -20 |
| 中危 | chmod, chown, sudo, chattr, ACL, passwd, shadow, /etc/passwd, .bashrc, .ssh/ | -15 |
| 低危 | open(, write, base64, gzip, zlib(单独出现不扣分,组合出现-5) | -5 |
评分标准
| 风险评分 | 风险等级 | 建议 |
|---|---|---|
| 81-100 | 🟢 低风险 | 允许安装 |
| 61-80 | 🟡 中风险 | 谨慎安装,运行时监控 |
| 41-60 | 🟠 较高风险 | 沙箱测试,限制权限 |
| 21-40 | 🔴 高风险 | 禁止安装,查看源码 |
| 0-20 | ⛔ 严重风险 | 立即删除 |
输出格式
1. 总览摘要
📊 安全审计报告 | 扫描时间: YYYY-MM-DD HH:MM
目录: /workspace/skills/
共扫描: N 个文件 | 🟢 低风险: X | 🟡 中风险: Y | 🔴 高风险: Z
总体建议: [允许安装 / 需人工审核 / 建议撤下]
2. 分文件结果(每文件输出)
--- [文件名] ---
类型: [.py / .json / ...]
风险评分: XX/100 [🟢/🟡/🟠/🔴/⛔]
风险点:
• [具体风险描述]
• [若无风险则写: "未发现可疑代码"]
建议: [允许安装 / 需审核 / 禁止]
3. 汇总表
| 文件名 | 类型 | 风险分 | 等级 | 建议 |
|---|---|---|---|---|
| skill.md | markdown | 95 | 🟢 | 允许 |
执行脚本伪代码
1. os.walk('/workspace/skills/')
2. 读取每个文件内容
3. 匹配SUSPICIOUS_KEYWORDS
4. 累加扣分
5. 判断风险等级
6. 生成 Markdown 报告
7. 保存到 /workspace/技能安全审计报告.md
安全原则
- 零误报不拦截安装 — 仅提示风险,不自动禁止
- 先审计后安装 — 风险分<40的文件,不输出任何安装指引
- 不修改原文件 — 只读扫描,不触碰 skills 目录
- 日志可追溯 — 每次扫描记录时间和结果