运行时依赖
安装命令
点击复制技能文档
Security Sentinel 扫描技能目录中的安全问题、配置错误和最佳实践。它可以检测以下类别和示例:
严重调用(严重)os.system、eval、exec 严重调用(警告)subprocess.run、os.popen 硬编码密钥 API 密钥、令牌、密码、凭证在字符串字面量中 网络调用 requests.get、urllib.request.urlopen、http.client 混淆 getattr间接调用、__import__/importlib 动态加载、chr()编码字符串 隐藏文件 以 . 开头的文件和目录(例如 .env、.hidden_script.py)
严重性模型: 扫描器使用三个级别的严重性系统: 状态 含义 严重 安全风险 — 硬编码密钥、eval/exec、os.system、混淆检测到。需要立即审查。 警告 潜在风险 — subprocess 使用、网络调用、隐藏文件。建议审查。 成功 无发现。文件干净。 每个文件都有一个单独的严重性评级。总体状态是所有文件中最高的严重性 — 如果一个文件是红色,则整个扫描被标记为 严重。
混淆防御(防御深度): 扫描器捕获三个常见的绕过技术: getattr间接调用 — getattr(os, 'system')('whoami') 因为第二个参数解析为一个已知的危险属性名称。 动态导入 — __import__('subprocess') 和 importlib.import_module('subprocess') 都被检测并标记为危险模块加载。 * 字符串构造 — 通过连接(key = "sk-" + "abcd...")或 chr() 序列构建的密钥在扫描时被解析并与密钥模式匹配。
使用方法: scan_skill 工具接受一个 path 参数,指向一个技能目录。它运行 scanner.py 对该目录树中的所有 .py 文件,并返回一个 Markdown 报告,包含按文件和类别分组的发现表。