用户说「扫描技能」或「安全审计」时,自动执行以下流程,无需额外参数。
/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⛔ 严重风险立即删除
text
📊 安全审计报告 | 扫描时间: YYYY-MM-DD HH:MM
目录: /workspace/skills/
共扫描: N 个文件 | 🟢 低风险: X | 🟡 中风险: Y | 🔴 高风险: Z
总体建议: [允许安装 / 需人工审核 / 建议撤下]
text
--- [文件名] ---
类型: [.py / .json / ...]
风险评分: XX/100 [🟢/🟡/🟠/🔴/⛔]
风险点:
• [具体风险描述]
• [若无风险则写: "未发现可疑代码"]
建议: [允许安装 / 需审核 / 禁止]
文件名类型风险分等级建议skill.mdmarkdown95🟢允许
text
1. os.walk('/workspace/skills/')
2. 读取每个文件内容
3. 匹配SUSPICIOUS_KEYWORDS
4. 累加扣分
5. 判断风险等级
6. 生成 Markdown 报告
7. 保存到 /workspace/技能安全审计报告.md