openscan

🛡️ 轻量级二进制恶意代码检测

🥥31总安装量 15评分人数 19
100% 的用户推荐

基于 Harkonnen 引擎的轻量级二进制扫描工具,可在安装技能前检测恶意代码和可疑模式,保障系统安全。

A

基本安全,请在特定环境下使用

  • 来自社区或个人来源,建议先隔离验证
  • ✅ 零网络通信与数据上传,纯本地静态分析保障隐私
  • ✅ 零外部 npm 依赖,仅使用 Node.js 标准库,供应链攻击面极小
  • ⚠️ 调用 execSync 执行系统 codesign 命令(仅用于 macOS 代码签名验证,参数硬编码无注入风险)
  • ⚠️ T3 个人开发者来源,建议生产环境部署前进行代码审查
  • ✅ 完善的输入验证与边界保护(文件大小 ≤50MB、目录深度 ≤10 层、自动排除敏感目录)

使用说明

OpenScan 是一款移植自 Harkonnen 反恶意软件引擎的轻量级静态分析工具,专为 macOS 和 Linux 系统设计,用于在安装第三方技能或不可信二进制文件前执行安全审查。

核心用法

用户可通过命令行界面(CLI)或编程 API 调用扫描功能。CLI 支持单文件扫描、整目录递归扫描,并提供 JSON 输出格式便于集成到自动化流程。威胁评分系统(0-100 分)将检测结果分为 CLEAN、LOW、MEDIUM、HIGH、CRITICAL 五个等级,通过退出码(0/1/2)实现脚本化判断。对于开发者,可直接引入 scanFile API 在技能安装流程中嵌入安全检查点,当威胁评分超过 40 分时自动阻断安装。

显著优点

该工具最大的优势在于零外部依赖,仅基于 Node.js 标准库(fs、path、crypto、child_process)实现,彻底规避了供应链攻击风险。支持 Mach-O(macOS)和 ELF(Linux)双平台二进制格式解析,能够检测代码签名状态、安全特性(PIE/NX/RELRO)启用情况、动态库注入风险以及高熵加密/打包行为。对于脚本文件,可识别危险的 curl|bash 管道、eval 执行、权限提升尝试等模式。完善的边界保护机制包括 50MB 默认文件大小限制、10 层目录深度限制以及自动跳过 node_modules 等目录。

潜在缺点与局限性

首先明确这不是完整的杀毒软件替代品,缺乏基于哈希的特征库,无法检测运行时恶意行为或高级混淆技术。由于采用启发式检测,对合法安全工具(如调试器、注入框架)可能产生误报。此外,作为 T3 来源的个人开发者项目,长期维护能力和更新频率存在不确定性。

适合的目标群体

主要面向 Skill 平台管理员、DevSecOps 工程师、开源软件审计人员以及在安装未知来源技能前需要安全验证的高级用户。特别适合集成到 CI/CD 流水线中作为前置安全检查步骤,或作为开发环境的安全审计辅助工具。

使用风险

虽然代码整体安全,但需注意 scanner.js 中使用 execSync 调用 macOS 系统的 codesign 命令进行签名验证,尽管该调用为硬编码且不接受用户输入,理论上无命令注入风险,但在极端情况下若系统 PATH 被篡改可能存在隐患。扫描超大二进制文件(接近 50MB 限制)时可能产生性能开销。此外,威胁评分为启发式算法结果,不应作为唯一的安全决策依据,对于 MEDIUM 级别以上的检测结果建议结合人工审查。

openscan 内容

文件夹图标bin文件夹
文件夹图标lib文件夹
手动下载zip · 19.2 kB
scan.jstext/javascript
请选择文件