• 公告ID (KylinSec-SA-2024-4190)

摘要:

hdf5 security update

安全等级: Critical

公告ID: KylinSec-SA-2024-4190

发布日期: 2024年11月8日

关联CVE: CVE-2018-13871   CVE-2018-13875   CVE-2018-14034   CVE-2024-29157   CVE-2024-29158   CVE-2024-29159   CVE-2024-29160   CVE-2024-29161   CVE-2024-29162   CVE-2024-29163   CVE-2024-29164   CVE-2024-29165   CVE-2024-32605   CVE-2024-32607   CVE-2024-32608   CVE-2024-32609   CVE-2024-32610   CVE-2024-32611   CVE-2024-32612   CVE-2024-32613   CVE-2024-32614   CVE-2024-32615   CVE-2024-32616   CVE-2024-32617   CVE-2024-32618   CVE-2024-32619   CVE-2024-32620   CVE-2024-32621   CVE-2024-32622   CVE-2024-32623   CVE-2024-32624   CVE-2024-33873   CVE-2024-33874   CVE-2024-33875   CVE-2024-33876   CVE-2024-33877  

  • 详细介绍

1. 漏洞描述

   

HDF5 是一个数据模型、库和文件格式,用于存储和管理数据。它支持无限多种数据类型,并且设计用于灵活高效的 I/O 操作,适用于大量和复杂的数据。HDF5 是可移植和可扩展的,允许应用程序在 HDF5 的使用上发展演变。HDF5 技术套件包括用于管理、操作、查看和分析 HDF5 格式数据的工具和应用程序。

安全修复:

在 HDF HDF5 1.8.20 库中发现了一个漏洞。在 H5FL.c 中的函数 H5FL_blk_malloc 存在基于堆的缓冲区溢出。(CVE-2018-13871)

在 HDF HDF5 1.8.20 库中发现了一个漏洞。在 H5VM.c 中的函数 H5VM_memcpyvv 存在越界读取。(CVE-2018-13875)

在 HDF HDF5 1.8.20 库中发现了一个漏洞。在 H5Opline.c 中的函数 H5O_pline_reset 存在越界读取。(CVE-2018-14034)

HDF5 1.14.3 及之前的版本中存在 H5HG_read 的堆缓冲区溢出,导致指令指针损坏,可能造成服务拒绝或潜在的代码执行。(CVE-2024-29157)

HDF5 1.14.3 及之前的版本中存在 H5FL_arr_malloc 的栈缓冲区溢出,导致指令指针损坏,可能造成服务拒绝或潜在的代码执行。(CVE-2024-29158)

HDF5 1.14.3 及之前的版本中存在 H5Z__filter_scaleoffset 的缓冲区溢出,导致指令指针损坏,可能造成服务拒绝或潜在的代码执行。(CVE-2024-29159)

HDF5 1.14.3 及之前的版本中存在 H5HG__cache_heap_deserialize 的堆缓冲区溢出,导致指令指针损坏,可能造成服务拒绝或潜在的代码执行。(CVE-2024-29160)

HDF5 1.14.3 及之前的版本中存在 H5A__attr_release_table 的堆缓冲区溢出,导致指令指针损坏,可能造成服务拒绝或潜在的代码执行。(CVE-2024-29161)

HDF5 1.13.3 和/或 1.14.2 及之前的版本中存在 H5HG_read 的栈缓冲区溢出,可能导致服务拒绝或潜在的代码执行。(CVE-2024-29162)

HDF5 1.14.3 及之前的版本中存在 H5T__bit_find 的堆缓冲区溢出,导致指令指针损坏,可能造成服务拒绝或潜在的代码执行。(CVE-2024-29163)

HDF5 1.14.3 及之前的版本中存在 H5R__decode_heap 的栈缓冲区溢出,导致指令指针损坏,可能造成服务拒绝或潜在的代码执行。(CVE-2024-29164)

HDF5 1.14.3 及之前的版本中存在 H5Z__filter_fletcher32 的缓冲区溢出,导致指令指针损坏,可能造成服务拒绝或潜在的代码执行。(CVE-2024-29165)

HDF5 库 1.14.3 及之前的版本在 H5VM.c 中的 H5VM_memcpyvv 函数存在基于堆的缓冲区过度读取。(CVE-2024-32605)

HDF5 库 1.14.3 及之前的版本在 H5Aint.c 中的 H5A__close 函数存在 SEGV,导致指令指针损坏。(CVE-2024-32607)

HDF5 库 1.14.3 及之前的版本在 H5A__close 中存在内存损坏,导致指令指针损坏,可能造成服务拒绝或潜在的代码执行。(CVE-2024-32608)

HDF5 库 1.14.3 及之前的版本在 H5Eint.c 中的 H5E_printf_stack 函数允许栈消耗。(CVE-2024-32609)

HDF5 库 1.14.3 及之前的版本在 H5T.c 中的 H5T_close_real 函数存在 SEGV,导致指令指针损坏。(CVE-2024-32610)

HDF5 库 1.14.3 及之前的版本在 H5Aint.c 中的 H5A__attr_release_table 可能使用了未初始化的值。(CVE-2024-32611)

HDF5 库 1.14.3 及之前的版本在 H5HLcache.c 中的 H5HL__fl_deserialize 函数存在基于堆的缓冲区过度读取,与 CVE-2024-32613 不同的漏洞。(CVE-2024-32612)

HDF5 库 1.14.3 及之前的版本在 H5HLcache.c 中的函数 H5HL__fl_deserialize 存在基于堆的缓冲区过度读取,与 CVE-2024-32612 不同的漏洞。(CVE-2024-32613)

HDF5 库 1.14.3 及之前的版本在 H5VM.c 中的 H5VM_memcpyvv 函数存在 SEGV。(CVE-2024-32614)

HDF5 库 1.14.3 及之前的版本在 H5Znbit.c 中的 H5Z__nbit_decompress_one_byte 函数存在基于堆的缓冲区溢出,由先前使用的初始化指针引起。(CVE-2024-32615)

HDF5 库 1.14.3 及之前的版本在 H5Odtype.c 中的 H5O__dtype_encode_helper 函数存在基于堆的缓冲区过度读取。(CVE-2024-32616)

HDF5 库 1.14.3 及之前的版本在 H5MM.c 中的 H5MM_xstrdup 函数(从 H5Glink.c 中的 H5G__ent_to_link 调用)由于不安全地使用 strdup 存在基于堆的缓冲区过度读取。(CVE-2024-32617)

HDF5 库 1.14.3 及之前的版本在 H5Tnative.c 中的 H5T__get_native_type 函数存在基于堆的缓冲区溢出,导致指令指针损坏。(CVE-2024-32618)

HDF5 库 1.14.3 及之前的版本在 H5T.c 中的 H5T_copy_reopen 函数存在基于堆的缓冲区溢出,导致指令指针损坏。(CVE-2024-32619)

HDF5 库 1.14.3 及之前的版本在 H5Fint.c 中的 H5F_addr_decode_len 函数存在基于堆的缓冲区溢出,导致指令指针损坏。(CVE-2024-32620)

HDF5 库 1.14.3 及之前的版本在 H5HG.c 中的 H5HG_read 函数(从 H5VLnative_blob.c 中的 H5VL__native_blob_get 调用)存在基于堆的缓冲区溢出,导致指令指针损坏。(CVE-2024-32621)

HDF5 库 1.14.3 及之前的版本在 H5FL.c 中的 H5FL_arr_malloc 函数(从 H5S.c 中的 H5S_set_extent_simple 调用)存在越界读取操作。(CVE-2024-32622)

HDF5 库 1.14.3 及之前的版本在 H5VM.c 中的 H5VM_array_fill 函数(从 H5Spoint.c 中的 H5S_select_elements 调用)存在基于堆的缓冲区溢出。(CVE-2024-32623)

HDF5 库 1.14.3 及之前的版本在 H5Tref.c 中的 H5T__ref_mem_setnull 函数(从 H5Tconv.c 中的 H5T__conv_ref 调用)存在基于堆的缓冲区溢出,导致指令指针损坏。(CVE-2024-32624)

HDF5 库 1.14.3 及之前的版本在 H5Dscatgath.c 中的 H5D__scatter_mem 函数存在基于堆的缓冲区溢出。(CVE-2024-33873)

HDF5 库 1.14.3 及之前的版本在 H5Omtime.c 中的 H5O__mtime_new_encode 函数存在堆缓冲区溢出。(CVE-2024-33874)

HDF5 库 1.14.3 及之前的版本在 H5Olayout.c 中的 H5O__layout_encode 函数存在基于堆的缓冲区溢出,导致指令指针损坏。(CVE-2024-33875)

HDF5 库 1.14.3 及之前的版本在 H5Spoint.c 中的 H5S__point_deserialize 函数存在堆缓冲区溢出。(CVE-2024-33876)

HDF5 库在 1.14.3 及之前的版本中,在 H5Tconv.c 文件的 H5T__conv_struct_opt 函数存在基于堆的缓冲区溢出。(CVE-2024-33877)

2. 影响范围

cve名称 产品 组件 是否受影响
CVE-2018-13871 KY3.5.2 hdf5 Fixed
CVE-2018-13875 KY3.5.2 hdf5 Fixed
CVE-2018-14034 KY3.5.2 hdf5 Fixed
CVE-2024-29157 KY3.5.2 hdf5 Fixed
CVE-2024-29158 KY3.5.2 hdf5 Fixed
CVE-2024-29159 KY3.5.2 hdf5 Fixed
CVE-2024-29160 KY3.5.2 hdf5 Fixed
CVE-2024-29161 KY3.5.2 hdf5 Fixed
CVE-2024-29162 KY3.5.2 hdf5 Fixed
CVE-2024-29163 KY3.5.2 hdf5 Fixed
CVE-2024-29164 KY3.5.2 hdf5 Fixed
CVE-2024-29165 KY3.5.2 hdf5 Fixed
CVE-2024-32605 KY3.5.2 hdf5 Fixed
CVE-2024-32607 KY3.5.2 hdf5 Fixed
CVE-2024-32608 KY3.5.2 hdf5 Fixed
CVE-2024-32609 KY3.5.2 hdf5 Fixed
CVE-2024-32610 KY3.5.2 hdf5 Fixed
CVE-2024-32611 KY3.5.2 hdf5 Fixed
CVE-2024-32612 KY3.5.2 hdf5 Fixed
CVE-2024-32613 KY3.5.2 hdf5 Fixed
CVE-2024-32614 KY3.5.2 hdf5 Fixed
CVE-2024-32615 KY3.5.2 hdf5 Fixed
CVE-2024-32616 KY3.5.2 hdf5 Fixed
CVE-2024-32617 KY3.5.2 hdf5 Fixed
CVE-2024-32618 KY3.5.2 hdf5 Fixed
CVE-2024-32619 KY3.5.2 hdf5 Fixed
CVE-2024-32620 KY3.5.2 hdf5 Fixed
CVE-2024-32621 KY3.5.2 hdf5 Fixed
CVE-2024-32622 KY3.5.2 hdf5 Fixed
CVE-2024-32623 KY3.5.2 hdf5 Fixed
CVE-2024-32624 KY3.5.2 hdf5 Fixed
CVE-2024-33873 KY3.5.2 hdf5 Fixed
CVE-2024-33874 KY3.5.2 hdf5 Fixed
CVE-2024-33875 KY3.5.2 hdf5 Fixed
CVE-2024-33876 KY3.5.2 hdf5 Fixed
CVE-2024-33877 KY3.5.2 hdf5 Fixed

3. 影响组件

    hdf5

4. 修复版本

   

KY3.5.2

软件名称 架构 版本号
hdf5 x86_64 1.14.5-1.ky3_5
hdf5-devel x86_64 1.14.5-1.ky3_5
hdf5-mpich x86_64 1.14.5-1.ky3_5
hdf5-mpich-devel x86_64 1.14.5-1.ky3_5
hdf5-mpich-static x86_64 1.14.5-1.ky3_5
hdf5-openmpi x86_64 1.14.5-1.ky3_5
hdf5-openmpi-devel x86_64 1.14.5-1.ky3_5
hdf5-openmpi-static x86_64 1.14.5-1.ky3_5
hdf5 aarch64 1.14.5-1.ky3_5
hdf5-devel aarch64 1.14.5-1.ky3_5
hdf5-mpich aarch64 1.14.5-1.ky3_5
hdf5-mpich-devel aarch64 1.14.5-1.ky3_5
hdf5-mpich-static aarch64 1.14.5-1.ky3_5
hdf5-openmpi aarch64 1.14.5-1.ky3_5
hdf5-openmpi-devel aarch64 1.14.5-1.ky3_5
hdf5-openmpi-static aarch64 1.14.5-1.ky3_5

5. 修复方法


方法一:下载安装包进行升级安装
1、通过下载链接下载需要升级的升级包保存,如 xxx.rpm
2、通过rpm命令升级,如 rpm -Uvh xxx.rpm

方法二:通过软件源进行升级安装
1、保持能够连接上互联网
2、通过yum命令升级指定的包,如 yum install 包名

6. 下载链接

   

KY3.5.2:

x86_64:

     hdf5   

     hdf5-devel   

     hdf5-mpich   

     hdf5-mpich-devel   

     hdf5-mpich-static   

     hdf5-openmpi   

     hdf5-openmpi-devel   

     hdf5-openmpi-static   

aarch64:

     hdf5   

     hdf5-devel   

     hdf5-mpich   

     hdf5-mpich-devel   

     hdf5-mpich-static   

     hdf5-openmpi   

     hdf5-openmpi-devel   

     hdf5-openmpi-static   

上一篇:KylinSec-SA-2024-4147 下一篇:KylinSec-SA-2024-4191