严重 PostgreSQL JDBC 驱动远程代码执行漏洞(CVE-2022-21724)

CVE编号

CVE-2022-21724

利用情况

EXP 已公开

补丁情况

官方补丁

披露时间

2022-02-02
该漏洞EXP已公开传播,漏洞利用成本极低,建议您立即关注并修复。
漏洞描述
pgjdbc 是官方的 PostgreSQL JDBC 驱动程序。近日,postgresql发布了新版pgjdbc版本,并披露了此前版本中的一起远程代码执行漏洞。

在 postgresql 数据库的 jdbc 驱动程序中发现了一个安全漏洞。当攻击者控制 jdbc url 或属性时,使用 postgresql 库的系统将受到攻击。pgjdbc 根据通过 `authenticationPluginClassName`、`sslhostnameverifier`、`socketFactory`、`sslfactory`、`sslpasswordcallback` 连接属性提供的类名实例化插件实例。但是,驱动程序在实例化类之前没有验证类是否实现了预期的接口。这可能导致通过任意类加载远程代码执行。建议相关用户及时升级。
解决建议
该漏洞的细节已经公开,建议相关用户及时更新pgjdbc到安全版本,当前安全版本为42.3.2。
受影响软件情况
# 类型 厂商 产品 版本 影响面
1
运行在以下环境
应用 postgresql pgjdbc * Up to
(excluding)
42.2.25
运行在以下环境
应用 postgresql pgjdbc * From
(including)
42.3.0
Up to
(excluding)
42.3.2
运行在以下环境
系统 alpine_3.16 java-postgresql-jdbc * Up to
(excluding)
42.2.25-r0
运行在以下环境
系统 alpine_3.17 java-postgresql-jdbc * Up to
(excluding)
42.2.25-r0
运行在以下环境
系统 alpine_3.18 java-postgresql-jdbc * Up to
(excluding)
42.2.25-r0
运行在以下环境
系统 alpine_3.19 java-postgresql-jdbc * Up to
(excluding)
42.2.25-r0
运行在以下环境
系统 debian_10 libpgjava * Up to
(excluding)
42.2.5-2+deb10u1
运行在以下环境
系统 debian_11 libpgjava * Up to
(excluding)
42.2.15-1+deb11u1
运行在以下环境
系统 debian_12 libpgjava * Up to
(excluding)
42.3.2-1
运行在以下环境
系统 debian_9 libpgjava * Up to
(excluding)
9.4.1212-1+deb9u1
运行在以下环境
系统 fedora_35 postgresql-jdbc * Up to
(excluding)
42.2.25-1.fc35
运行在以下环境
系统 kylinos_aarch64_V10SP2 postgresql-jdbc * Up to
(excluding)
42.2.25-1.ky10
运行在以下环境
系统 kylinos_x86_64_V10SP2 postgresql-jdbc * Up to
(excluding)
42.2.25-1.ky10
阿里云评分
9.4
  • 攻击路径
    远程
  • 攻击复杂度
    容易
  • 权限要求
    无需权限
  • 影响范围
    全局影响
  • EXP成熟度
    EXP 已公开
  • 补丁情况
    官方补丁
  • 数据保密性
    数据泄露
  • 数据完整性
    无影响
  • 服务器危害
    服务器失陷
  • 全网数量
    N/A
CWE-ID 漏洞类型
CWE-665 初始化不恰当
CWE-668 将资源暴露给错误范围
阿里云安全产品覆盖情况