ServiceNow多版本 - 输入验证与模板注入漏洞分析
漏洞概述
ServiceNow平台存在输入验证漏洞(CVE-2024-4879),影响Vancouver、Washington DC和Utah多个版本。该漏洞允许未经身份验证的远程攻击者执行代码,CVSS评分为9.8(严重)。
技术细节
受影响版本
- Utah Patch 10 Hot Fix 3之前所有版本
- Utah Patch 10a Hot Fix 2之前所有版本
- Vancouver Patch 6 Hot Fix 2之前所有版本
- Vancouver Patch 7 Hot Fix 3b之前所有版本
- Vancouver Patch 8 Hot Fix 4之前所有版本
- Vancouver Patch 9之前所有版本
- Vancouver Patch 10之前所有版本
- Washington DC Patch 1 Hot Fix 2b之前所有版本
- Washington DC Patch 2 Hot Fix 2之前所有版本
- Washington DC Patch 3 Hot Fix 1之前所有版本
- Washington DC Patch 4之前所有版本
漏洞原理
漏洞存在于ServiceNow的模板注入机制中,攻击者可通过精心构造的Jelly模板实现远程代码执行。
利用代码分析
核心利用载荷
|
|
技术实现
- 输入验证绕过:通过URL参数注入恶意模板
- 模板注入:利用Jelly模板的evaluate功能执行任意代码
- 信息提取:通过文件读取获取数据库配置信息
功能特性
- 支持单目标和批量扫描
- 多线程并发检测
- 详细的日志输出系统
- 自动化的配置信息提取
- SSL验证禁用支持
检测方法
脚本通过发送特定载荷并检查响应中是否包含"1337"(668.5*2的结果)来判断漏洞存在性。
影响范围
- 未经身份验证的远程代码执行
- 系统完全沦陷
- 数据泄露
- 服务中断
技术依赖
- requests>=2.25.1
- colorama>=0.4.4
- urllib3
防护建议
及时更新到最新补丁版本,加强输入验证和过滤机制。