← 返回 Skills 市场
OSV Scanner
作者
Nassi Mohammed
· GitHub ↗
· v1.0.0
879
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install osv-scanner
功能描述
Scans Node.js/NPM and Linux packages for known vulnerabilities using the Google OSV API by analyzing dependencies and reporting related CVEs.
安全使用建议
This skill is coherent for vulnerability scanning and doesn't ask for secrets, but review and fix before running: 1) scanner.py has a clear bug in the npm branch: the f-string lines.append(f'{name}=={version.split('^')[1]}') uses conflicting quotes and will cause a syntax error (and will break for versions without '^'). Fix by stripping '^' or using version.lstrip('^') and proper quoting. 2) SKILL.md asks you to rename template/ScanResult.txt → template/ScanResult.xlsx because the script expects the .xlsx path; do that or change TEMPLATE_PATH. 3) The script uses subprocess(shell=True) for static commands (lsb_release, dpkg-query) — these are reasonable for enumerating OS packages but avoid running the script on systems with sensitive data or where you do not trust included files. 4) The script POSTs package info to api.osv.dev (expected); if you need to avoid sending data externally, do not run it or modify it to use a local DB. 5) As always, run untrusted scripts in an isolated environment (container or VM), inspect/patch the code (npm branch and error handling) before use, and verify the template/header ('MachineA') matches your expected spreadsheet format.
功能分析
Type: OpenClaw Skill
Name: osv-scanner
Version: 1.0.0
The skill bundle is classified as suspicious due to two main indicators. First, the `SKILL.md` and `README.md` files contain an explicit instruction to rename `template/ScanResult.txt` to `template/ScanResult.xlsx`. The `ScanResult.txt` file is actually a ZIP archive (an XLSX file disguised with a .txt extension), which is a suspicious file manipulation pattern that could be used for evasion. Second, the `scanner.py` script utilizes `subprocess.run` with `shell=True` for executing system commands (`lsb_release`, `dpkg-query`). While the commands are hardcoded and not directly exploitable in this specific context, the use of `shell=True` is a risky capability that generally increases the attack surface for shell injection vulnerabilities if any part of the command string were to become user-controlled or untrusted.
能力评估
Purpose & Capability
Name/description (OSV-based vulnerability scanner) align with the files and behavior: scanner.py reads dependency lists, queries api.osv.dev, and writes results to an Excel template. The included package lists (npm/python/linux) match the stated scan targets.
Instruction Scope
SKILL.md instructions are within the claimed scope (create venv, install requests/openpyxl, provide packages files, run scanner.py). The README and SKILL.md instruct the user to rename template/ScanResult.txt to .xlsx — scanner.py expects template/ScanResult.xlsx. This is odd but documented in SKILL.md. No instructions request reading unrelated system secrets or sending data to endpoints other than the OSV API.
Install Mechanism
No automated install spec; this is instruction-only and requires the user to pip-install 'requests' and 'openpyxl' in a venv. No downloads from unknown URLs or archive extraction are present.
Credentials
The skill requires no environment variables, credentials, or config paths. It only posts dependency name/version payloads to the Google OSV API (api.osv.dev), which is expected for this purpose.
Persistence & Privilege
Skill does not request persistent or elevated privileges and is not always-enabled. It does run local shell commands (lsb_release, dpkg-query) to enumerate OS packages when asked to scan the OS — this is within scope for an OS package scanner.
如何使用
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install osv-scanner - 安装完成后,直接呼叫该 Skill 的名称或使用
/osv-scanner触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
- Changed ScanResult file extension from .txt to .xlsx in the template.
- Initial release of a Node.js/NPM and Linux package vulnerability scanner using the Google OSV API.
- Reads project dependencies, checks for CVEs, and displays results.
- Now requires openpyxl for spreadsheet output.
元数据
常见问题
OSV Scanner 是什么?
Scans Node.js/NPM and Linux packages for known vulnerabilities using the Google OSV API by analyzing dependencies and reporting related CVEs. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 879 次。
如何安装 OSV Scanner?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install osv-scanner」即可一键安装,无需额外配置。
OSV Scanner 是免费的吗?
是的,OSV Scanner 完全免费(开源免费),可自由下载、安装和使用。
OSV Scanner 支持哪些平台?
OSV Scanner 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 OSV Scanner?
由 Nassi Mohammed(@moenassi)开发并维护,当前版本 v1.0.0。
推荐 Skills