WadesWeaponShed/CheckPoint-CVE-Webscanner

GitHub: WadesWeaponShed/CheckPoint-CVE-Webscanner

基于 Check Point Management API 的本地 Web 工具,用于扫描并临时修复 CVE-2026-50751 和 CVE-2026-50752 相关的 VPN IKEv1 配置风险。

Stars: 1 | Forks: 0

# CVE Web 检查 这是一个基于审批机制的本地 Web 应用,用于通过受信任的 Check Point Management API 命令,扫描和修复潜在的 Check Point CVE-2026-50751 和 CVE-2026-50752 暴露风险。 此工具并非由 Check Point 创建或提供支持,使用风险由您自行承担。修复措施是临时性的。Check Point 建议您使用 [Check Point Security Advisories](https://support.checkpoint.com/security-advisories) 中为每个 CVE 提供的补丁尽快进行修补。 该应用在本地运行,登录到 Check Point Security Management Server 或 MDS,扫描相关的 VPN 配置,准确显示可能需要修复的位置,允许操作员批准更改,通过 Management API 应用更改,并且可以发布管理会话。发布后仍需安装策略,修复更改才能在网关上生效。 ## 检查内容 ### IKE 版本全局属性扫描与修复 (CVE-2026-50751) 扫描 SMS 全局 Remote Access VPN 属性: ``` remote-access.vpn-authentication-and-encryption.encryption-method ``` 如果当前值不是 `ike_v2_only`,应用可以批准并应用更改,将属性设置为: ``` ike_v2_only ``` 此扫描旨在识别 VPN Remote Access 和 Mobile Access 仍然全局允许已弃用的 IKEv1 密钥交换的暴露情况。IKEv1 已被弃用,不再是行业的最佳实践。此更改可能会影响较旧的 VPN 客户端。请查看 [SK166415](https://support.checkpoint.com/results/sk/sk166415) 以获取更多 Check Point 指南。 ### 旧版客户端允许检查扫描与修复 (CVE-2026-50751) 扫描简单网关,并检查每个网关通用对象内的 VPN realm: ``` realmsForBlades ``` 应用会报告是否支持或已禁用旧版客户端。当批准修复时,它会将 VPN realm 所拥有对象的 `disabled` 值设置为 `true`。 面向用户的结果文本: - `Legacy clients are disabled` - `Legacy Clients are Supported` 允许旧版客户端可以保留对 IKEv1 的支持,这已不再是行业的最佳实践。我们建议禁用此设置,除非仍然需要旧版客户端。如果需要旧版客户端,请计划将其迁移到更安全的现代 VPN 客户端。 ### 站点到站点 VPN 社区扫描与修复 (CVE-2026-50752) 扫描两种 Check Point 站点到站点 VPN 社区类型: - Star 社区 - Mesh 社区 应用仅在观察到以下所有情况时才标记 VPN 社区: - 已启用站点到站点 VPN。 - VPN 社区使用 IKEv1。 - 参与 VPN 社区的网关使用基于证书的身份验证。 对于 Star 社区,应用会分别显示中心网关和卫星网关。当 API 数据提供足够的对象类型信息时,网关名称会被标记为本地管理或外部管理。 对于 Mesh 社区,应用从社区 `gateways` 列表中提取网关名称。Mesh 社区在此工具中不包含外部管理的网关处理,因此该字段显示为不适用。 当批准修复时,应用会尝试将 VPN 社区加密方法设置为仅使用 IKEv2。Star 社区使用: ``` set-vpn-community-star ``` Mesh 社区使用: ``` set-vpn-community-meshed ``` 如果选定的 Star 社区包含外部管理的网关,应用会在应用更改之前发出警告。您必须确保在外部管理的网关端也进行了相应的仅限 IKEv2 的更改。 ## 工作流程 1. 使用 Check Point Management API 用户登录。 2. 点击 **Scan Check Point Config**。 3. 查看 SMS 全局属性、旧版客户端网关发现以及站点到站点 VPN 社区发现。 4. 仅批准您想要应用的更改。 5. 点击相应的应用按钮。 6. 从工具中发布,或者如果您想手动检查并发布,请取消勾选 **Publish after successful apply**。 7. 发布后安装策略,以便网关端的更改生效。 ## 安全说明 - 连接到 Check Point 管理服务器时,应用默认使用 HTTPS。 - 请勿以 `http://...` 形式输入管理服务器地址;这会通过明文 HTTP 发送 Check Point API 登录信息。 - 浏览器通过 `http://127.0.0.1:3000` 与本地后端通信。 - 用户名和密码仅在 localhost 上从浏览器发送到本地后端。 - 后端通过 Management API 登录请求将用户名和密码发送到 Check Point。 - 应用不会记录密码。 - Check Point 会话 ID 仅在本地 Node 进程的生命周期内存储在服务器内存中。 - **Allow self-signed certificate** 选项保留 TLS 加密,但禁用证书验证。仅在需要时使用。 ## 使用的 API 命令 后端代理以下 Check Point Management API 命令: - `login` - `logout` - `publish` - `show-simple-gateways` - `show-generic-object` - `set-generic-object` - `show-global-properties` - `set-global-properties` - `show-vpn-communities-star` - `show-vpn-communities-meshed` - `set-vpn-community-star` - `set-vpn-community-meshed` ## 安装与运行 此项目没有第三方 npm 依赖项。从源代码运行时,它仅需要 Node.js 18 或更高版本。 ### macOS 从源代码运行 1. 从 [nodejs.org](https://nodejs.org/) 或 Homebrew 安装 Node.js 18 或更高版本。 brew install node 2. 下载或克隆此项目。 git clone cd CVE-Web-Check 3. 启动本地应用。 npm start 因为没有 npm 依赖项,所以这同样有效: node server.js 4. 打开应用。 http://127.0.0.1:3000 ### Windows 从源代码运行 1. 从 [nodejs.org](https://nodejs.org/) 安装 Node.js 18 或更高版本。 2. 下载并解压项目 ZIP 文件,或使用 Git for Windows 克隆存储库。 git clone cd CVE-Web-Check 3. 启动本地应用。 npm start 因为没有 npm 依赖项,所以这同样有效: node server.js 4. 在浏览器中打开应用。 http://127.0.0.1:3000 ### 可选端口更改 默认情况下,应用监听 `127.0.0.1:3000`。要使用其他端口: macOS: ``` PORT=3100 npm start ``` Windows PowerShell: ``` $env:PORT = "3100" npm start ``` 然后打开: ``` http://127.0.0.1:3100 ``` ## 故障排除 服务器会将请求诊断信息打印到终端。成功的登录尝试将显示类似于以下内容的行: ``` Local API request requestId=abc12345 route=/api/login Login request received target=https://mgmt.example.com/web_api/login user=admin Check Point API request starting command=login target=https://mgmt.example.com/web_api/login ``` 如果浏览器显示带有请求 ID 的登录错误,但网络抓包显示没有向管理服务器发送出站请求,请将终端的 `target=` 值与您的抓包过滤器进行比较。 如果根本没有 `Local API request` 行,则说明浏览器未连接到本地后端。请确认应用正在运行,并且您打开了正确的本地 URL。
标签:API集成, Check Point, MITM代理, VPN安全, XXE攻击, 可观测性, 多模态安全, 数据可视化, 本地Web应用, 漏洞缓解, 自定义脚本