• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 关于我们

H2数据库控制台远程代码执行漏洞通告(CVE-2021-42392)

【发布时间:2022-07-06】

漏洞综述

漏洞背景

H2是开源的轻量级Java数据库,可以嵌入Java应用程序中或以客户端-服务器模式运行。H2数据库可以配置为内存数据库运行,这意味着数据将不会持久存储在磁盘上,使得H2成为各种项目的流行数据存储解决方案。近日,新华三攻防实验室威胁预警团队监测到网上爆发了H2数据库控制台远程代码执行漏洞(CVE-2021-42392),该漏洞的原理与Apache Log4jShell (CVE-2021-44228)相似,成功利用此漏洞可在目标服务器上执行任意代码。

漏洞原理

该漏洞的根本原因类似于 Log4Shell,由于H2 数据库框架中的多个代码未能正确处理用户的输入,恶意攻击者通过发送带有恶意命令的URI至服务器,服务器将该请求传递给javax.naming.Context.lookup函数,从而导致未经身份验证的远程代码执行。由于该漏洞直接影响H2控制台服务器,有明确影响范围,所以并不像Apache Log4jShell影响广泛,但由于H2被许多第三方框架使用,且成功利用后造成的影响严重,建议受影响用户尽快更新安全补丁。

漏洞复现

从官网下载受影响版本组件,启动环境,发送带恶意命令的URI:

图片

影响范围

1.1.100<= H2 Console <= 2.0.204

漏洞等级:高危

处置方法

官方补丁

目前官方已发布最新版本,请受影响用户尽快更新。官方链接:https://github.com/h2database/h2database/releases/tag/version-2.0.206

临时修复建议

对于暂时无法升级 H2 的用户,可以采取以下措施进行缓解:

1. 与 Log4Shell 漏洞类似,较新版本的 Java 包含trustURLCodebase,不允许通过 JNDI 加载远程代码库。用户可以通过升级Java (JRE/JDK) 版本进行缓解该漏洞。在以下 Java 版本(或任何更高版本)上默认启用此缓解措施(该方法可能会被绕过):

1. 6u211

2. 7u201

3. 8u191

4. 11.0.1

2. 当 H2 控制台 Servlet 部署在 Web 服务器上(不使用独立的 H2 Web 服务器)时,可以使用设置白名单方法,仅允许特定用户访问控制台页面。

新华三解决方案

1、新华三安全设备防护方案

新华三IPS规则库将在1.0.166版本支持对该漏洞的识别,新华三全系安全产品可通过升级IPS特征库识别该漏洞的攻击流量,并进行主动拦截。

2、态势感知产品解决方案

新华三态势感知产品已支持该漏洞的检测,通过信息搜集整合、数据关联分析等综合研判手段,发现网络中遭受该漏洞攻击及失陷的资产。

3、新华三云安全能力中心解决方案

新华三云安全能力中心知识库已更新该漏洞信息,可查询对应漏洞产生原理、升级补丁、修复措施等。

参考链接

https://github.com/h2database/h2database/security/advisories/GHSA-h376-j262-vhq6

新华三官网
联系我们