公告ID(KYSA-202302-1039)
公告ID:KYSA-202302-1039
公告摘要:libvncserver安全漏洞
等级:Important
发布日期:2023-02-10
详细介绍
1.修复的CVE
·CVE-2018-21247
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中的libvncclient/rfbproto.c文件的‘ConnectToRFBRepeater’函数存在安全漏洞。攻击者可利用该漏洞造成拒绝服务(内存泄漏)。
·CVE-2019-20839
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中的libvncclient/sockets.c文件存在缓冲区错误漏洞。远程攻击者可利用该漏洞导致服务器崩溃。
·CVE-2019-20840
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中的libvncserver/ws_decode.c文件的‘hybiReadAndDecode’函数存在安全漏洞。攻击者可利用该漏洞导致拒绝服务(崩溃)。
·CVE-2020-14396
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中的libvncclient/tls_openssl.c文件存在代码问题漏洞。远程攻击者可利用该漏洞导致应用程序崩溃。
·CVE-2020-14397
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中的libvncserver/rfbregion.c文件存在代码问题漏洞。远程攻击者可利用该漏洞导致应用程序崩溃。
·CVE-2020-14398
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中的libvncclient/sockets.c文件存在安全漏洞,该漏洞源于程序没有正确连接TCP。攻击者可利用该漏洞导致无限循环。
·CVE-2020-14399
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中存在安全漏洞。攻击者可借助libvncclient/rfbproto.c文件的uint32_t指针利用该漏洞访问字节对齐的数据。
·CVE-2020-14400
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中存在安全漏洞。攻击者可借助libvncserver/translate.c文件的uint16_t指针利用该漏洞访问字节对齐的数据。
·CVE-2020-14401
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中的libvncserver/scale.c文件存在输入验证错误漏洞。远程攻击者可利用该漏洞在系统上执行任意代码。
·CVE-2020-14402
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中的libvncserver/corre.c文件存在缓冲区错误漏洞。远程攻击者可利用该漏洞在系统上执行任意代码或导致应用程序崩溃。
·CVE-2020-14403
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中的libvncserver/hextile.c文件存在缓冲区错误漏洞。远程攻击者可利用该漏洞在系统上执行任意代码或导致应用程序崩溃。
·CVE-2020-14404
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中的libvncserver/rre.c文件存在缓冲区错误漏洞。远程攻击者可利用该漏洞在系统上执行任意代码或导致应用程序崩溃。
·CVE-2020-14405
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer 0.9.13之前版本中的libvncclient/rfbproto.c文件存在安全漏洞,该漏洞源于程序未限制TextChat的大小。目前尚无此漏洞的相关信息,请随时关注CNNVD或厂商公告。
·CVE-2020-29260
描述:LibVNCServer是一款支持在程序中实现VNC(虚拟网络计算)服务器或客户端功能的跨平台C语言库。LibVNCServer libvncclient v0.9.13版本存在安全漏洞,该漏洞源于函数 rfbClientCleanup()包含一个内存泄漏。
2.受影响的软件包
·银河麒麟高级服务器操作系统 V10 SP3
·aarch64架构:
libvncserver、libvncserver-devel
·x86_64架构:
libvncserver、libvncserver-devel
3.软件包修复版本
·银河麒麟高级服务器操作系统 V10 SP3 (aarch64、x86_64)
libvncserver-0.9.13-3.ky10或以上版本
libvncserver-devel-0.9.13-3.ky10或以上版本
4.修复方法
方法一:配置源进行升级安装
1.打开软件包源配置文件,根据仓库地址进行修改。
仓库源地址:
银河麒麟高级服务器操作系统 V10 SP3
aarch64:https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/updates/aarch64/
x86_64:https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/updates/x86_64/
2.配置完成后执行更新命令进行升级,命令如下:
yum update Packagename
方法二:下载安装包进行升级安装
通过软件包地址下载软件包,使用软件包升级命令根据受影响的软件包
列表进行升级安装, 命令如下:
yum install Packagename
3.升级完成后是否需要重启服务或操作系统:
CVE-2018-21247:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2019-20839:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2019-20840:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2020-14396:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2020-14397:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2020-14398:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2020-14399:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2020-14400:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2020-14401:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2020-14402:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2020-14403:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2020-14404:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2020-14405:无需重启操作系统与服务即可使漏洞修复生效。
CVE-2020-29260:无需重启操作系统与服务即可使漏洞修复生效。
5.软件包下载地址
·银河麒麟高级服务器操作系统 V10 SP3
libvncserver(aarch64)软件包下载地址:
https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/updates/aarch64/Packages/libvncserver-0.9.13-3.ky10.aarch64.rpm
https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/updates/aarch64/Packages/libvncserver-devel-0.9.13-3.ky10.aarch64.rpm
libvncserver(x86_64)软件包下载地址:
https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/updates/x86_64/Packages/libvncserver-0.9.13-3.ky10.x86_64.rpm
https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/updates/x86_64/Packages/libvncserver-devel-0.9.13-3.ky10.x86_64.rpm
注:其他相关依赖包请到相同目录下载
6.修复验证
使用软件包查询命令,查看相关软件包版本是否与修复版本一致,如果版本一致,则说明修复成功。
sudo rpm -qa | grep Packagename