H2数据库控制台发现类似Log4Shell的关键RCE缺陷

研究人员披露了一个影响H2数据库控制台的安全漏洞,该漏洞可能导致远程代码执行,与上月曝光的Log4j“Log4Shell”漏洞类似
这个问题被追踪为CVE-2021-42392,是“自Log4Shell发布以来,在Log4j以外的组件上发布的第一个关键问题,它利用了Log4Shell漏洞的相同根源,即JNDI远程类加载,”JFrog研究人员Andrey Polkovnychenko和Shachar Menashe说
H2是一个用Java编写的开源关系数据库管理系统,可以嵌入到应用程序中,也可以在客户机-服务器模式下运行。根据Maven存储库,H2数据库引擎由6807个工件使用
JNDI是Java命名和目录接口的缩写,指的是为Java应用程序提供命名和目录功能的API,它可以将该API与LDAP结合使用,以定位可能需要的特定资源

在Log4Shell的情况下,此功能允许运行时查找网络内外的服务器,这反过来,可以对其进行武器化,以允许未经验证的远程代码执行,并在服务器上植入恶意软件,方法是制作一个恶意JNDI查找,作为任何使用易受攻击的Log4j库版本进行日志记录的Java应用程序的输入
“与12月初发现的Log4Shell漏洞类似,传播到JNDI查找中的由攻击者控制的URL可以允许未经验证的远程代码执行,使攻击者能够完全控制另一个人或组织系统的操作,”JFrog security research的高级主管Menashe解释道
该漏洞影响H2数据库版本1.1.100至2.0.204,并已在2022年1月5日发布的版本2.0.206中解决
“H2数据库被许多第三方框架使用,包括Spring Boot、Play Framework和JHipster,”Menashe补充道。“虽然这个漏洞不像Log4Shell那么普遍,但如果不相应地解决,它仍然会对开发人员和生产系统产生巨大影响。”