公告ID(KYSA-202208-1357)
公告ID:KYSA-202208-1357
公告摘要:libvirt安全漏洞
等級:Important
發布日期:2022-08-23
詳細介紹
1.修復的CVE
·CVE-2012-3411
描述:Dnsmasq是軟件開發者Simon Kelley所研發的一款使用C語言編寫的開源輕量級DNS轉發和DHCP、TFTP服務器。Dnsmasq 2.63test1之前版本中存在漏洞,該漏洞源于程序與某些libvirt配置使用時,回復來自禁止接口的請求。通過偽造的DNS查詢,遠程攻擊者利用該漏洞導致拒絕服務漏洞(流量擴增)。
·CVE-2013-1962
描述:libvirt是一個用于實現Linux虛擬化功能的Linux API,它支持各種Hypervisor,包括Xen和KVM,以及QEMU和用于其他操作系統的一些虛擬產品。libvirt 1.0.5版本中的存儲池管理器中的‘remoteDispatchStoragePoolListAllVolumes’函數中存在漏洞。遠程攻擊者可通過大量的請求‘對特定的池列出所有的卷’利用該漏洞造成拒絕服務(文件描述符消耗)。
·CVE-2013-4296
描述:libvirt是一個用于實現Linux虛擬化功能的Linux API,它支持各種Hypervisor,包括Xen和KVM,以及QEMU和用于其他操作系統的一些虛擬產品。libvirt中的daemon/remote.c文件中的‘remoteDispatchDomainMemoryStats’函數中的‘stats’變量中存在漏洞。遠程經過授權的攻擊者可借助特制的RPC調用利用該漏洞導致拒絕服務(未初始化指針引用以及死機)。以下版本受到影響:libvirt 0.9.1至0.10.1.x版本,0.10.2.8之前的0.10.2.x版本,1.0.5.6之前的1.0.x版本,以及1.1.2之前的1.1.x版本。
·CVE-2013-4311
描述:libvirt是一個用于實現Linux虛擬化功能的Linux API,它支持各種Hypervisor,包括Xen和KVM,以及QEMU和用于其他操作系統的一些虛擬產品。libvirt中存在安全漏洞,該漏洞源于程序調用PolicyKit pkcheck小工具處理授權時存在競爭條件。本地攻擊者可通過setuid或pkexec進程利用該漏洞繞過既定的訪問限制。以下版本受到影響:libvirt 1.0.5.6之前的1.0.5.x版本,0.10.2.8之前的0.10.2.x版本,0.9.12.2之前的0.9.12.x版本。
·CVE-2013-6458
描述:libvirt是一個用于實現Linux虛擬化功能的Linux API,它支持各種Hypervisor,包括Xen和KVM,以及QEMU和用于其他操作系統的一些虛擬產品。libvirt 1.2.1之前版本中的virDomainBlockStats、virDomainGetBlockInf、qemuDomainBlockJobImpl以及virDomainGetBlockIoTune函數中存在多個競爭條件漏洞,該漏洞源于程序沒有正確地檢驗是否連接磁盤。具有只讀權限的遠程攻擊者可借助virDomainDetachDeviceFlags命令利用該漏洞導致拒絕服務(libvirtd崩潰)。
·CVE-2013-7336
描述:libvirt是一個用于實現Linux虛擬化功能的Linux API,它支持各種Hypervisor,包括Xen和KVM,以及QEMU和用于其他操作系統的一些虛擬產品。libvirt 1.1.2及之前的版本的qemu/qemu_migration.c文件中的‘qemuMigrationWaitForSpice’函數存在安全漏洞,該漏洞源于在移動SPICE期間,不能正常進入顯示器。本地攻擊者可利用該漏洞造成拒絕服務(空指針逆向引用和libvirtd崩潰)。
·CVE-2014-0179
描述:libvirt是一個用于實現Linux虛擬化功能的Linux API,它支持各種Hypervisor,包括Xen和KVM,以及QEMU和用于其他操作系統的一些虛擬產品。libvirt 0.7.5至1.2.4版本中存在安全漏洞。本地攻擊者可通過向virConnectCompareCPU或virConnectBaselineCPU API方法發送特制的XML文件利用該漏洞造成拒絕服務(讀取塊和掛起)。
·CVE-2014-1447
描述:libvirt是一個用于實現Linux虛擬化功能的Linux API,它支持各種Hypervisor,包括Xen和KVM,以及QEMU和用于其他操作系統的一些虛擬產品。libvirt 1.2.0及之前版本中的‘virNetServerClientStartKeepAlive’函數中存在競爭條件漏洞。遠程攻擊者可通過在發送keepalive響應前關閉連接,利用該漏洞造成拒絕服務(libvirtd崩潰)。
·CVE-2014-3633
描述:libvirt是一個用于實現Linux虛擬化功能的Linux API,它支持各種Hypervisor,包括Xen和KVM,以及QEMU和用于其他操作系統的一些虛擬產品。libvirt 1.2.8及之前版本中qemu/qemu_driver.c文件中的‘qemuDomainGetBlockIoTune’函數中存在安全漏洞,該漏洞源于程序沒有正確處理磁盤的熱插和刪除。遠程攻擊者可借助特制的blkiotune查詢利用該漏洞造成拒絕服務(崩潰)或讀取敏感的堆信息。
·CVE-2014-3657
描述:libvirt是一個用于實現Linux虛擬化功能的Linux API,它支持各種Hypervisor,包括Xen和KVM,以及QEMU和用于其他操作系統的一些虛擬產品。libvirt 1.2.8及之前版本中的conf/domain_conf.c腳本中的‘virDomainListPopulate’函數中存在安全漏洞,該漏洞源于程序沒有正確清除域列表的鎖定。遠程攻擊者可借助virConnectListAllDomains API命令的‘second’參數的空值利用該漏洞造成拒絕服務(死鎖)。
·CVE-2014-7823
描述:libvirt 1.2.10及之前版本的virDomainGetXMLDesc API中存在安全漏洞,該漏洞源于程序處理qemuDomainFormatXML命令時沒有正確處理權限。遠程只讀攻擊者可通過使用VIR_DOMAIN_XML_MIGRATABLE利用該漏洞獲取VNC密碼。
2.受影響的軟件包
·中標麒麟高級服務器操作系統 V6
·x86_64架構:
libvirt、libvirt-client、libvirt-devel、libvirt-lock-sanlock、libvirt-python
3.軟件包修復版本
·中標麒麟高級服務器操作系統 V6 (x86_64)
libvirt-0.10.2-62.el6_9.1或以上版本
libvirt-client-0.10.2-62.el6_9.1或以上版本
libvirt-devel-0.10.2-62.el6_9.1或以上版本
libvirt-lock-sanlock-0.10.2-62.el6_9.1或以上版本
libvirt-python-0.10.2-62.el6_9.1或以上版本
4.修復方法
方法一:配置源進行升級安裝
1.打開軟件包源配置文件,根據倉庫地址進行修改。
倉庫源地址:
中標麒麟高級服務器操作系統 V6
x86_64:https://update.cs2c.com.cn/NS/V6/V6.9/os/lic/updates/x86_64/
2.配置完成后執行更新命令進行升級,命令如下:
yum update Packagename
方法二:下載安裝包進行升級安裝
通過軟件包地址下載軟件包,使用軟件包升級命令根據受影響的軟件包
列表進行升級安裝, 命令如下:
yum install Packagename
3.升級完成后是否需要重啟服務或操作系統:
CVE-2012-3411:需要重啟 libvirt 以使漏洞修復生效。
CVE-2013-1962:需要重啟 libvirt 以使漏洞修復生效。
CVE-2013-4296:需要重啟 libvirt 以使漏洞修復生效。
CVE-2013-4311:需要重啟 libvirt 以使漏洞修復生效。
CVE-2013-6458:需要重啟 libvirt 以使漏洞修復生效。
CVE-2013-7336:需要重啟 libvirt 以使漏洞修復生效。
CVE-2014-0179:需要重啟 libvirt 以使漏洞修復生效。
CVE-2014-1447:需要重啟 libvirt 以使漏洞修復生效。
CVE-2014-3633:需要重啟 libvirt 以使漏洞修復生效。
CVE-2014-3657:需要重啟 libvirt 以使漏洞修復生效。
CVE-2014-7823:需要重啟 libvirt 以使漏洞修復生效。
5.軟件包下載地址
·中標麒麟高級服務器操作系統 V6
libvirt(x86_64)軟件包下載地址:
https://update.cs2c.com.cn/NS/V6/V6.9/os/lic/updates/x86_64/Packages/libvirt-0.10.2-62.el6_9.1.x86_64.rpm
https://update.cs2c.com.cn/NS/V6/V6.9/os/lic/updates/x86_64/Packages/libvirt-client-0.10.2-62.el6_9.1.i686.rpm
https://update.cs2c.com.cn/NS/V6/V6.9/os/lic/updates/x86_64/Packages/libvirt-client-0.10.2-62.el6_9.1.x86_64.rpm
https://update.cs2c.com.cn/NS/V6/V6.9/os/lic/updates/x86_64/Packages/libvirt-devel-0.10.2-62.el6_9.1.i686.rpm
https://update.cs2c.com.cn/NS/V6/V6.9/os/lic/updates/x86_64/Packages/libvirt-devel-0.10.2-62.el6_9.1.x86_64.rpm
https://update.cs2c.com.cn/NS/V6/V6.9/os/lic/updates/x86_64/Packages/libvirt-lock-sanlock-0.10.2-62.el6_9.1.x86_64.rpm
https://update.cs2c.com.cn/NS/V6/V6.9/os/lic/updates/x86_64/Packages/libvirt-python-0.10.2-62.el6_9.1.x86_64.rpm
注:其他相關依賴包請到相同目錄下載
6.修復驗證
使用軟件包查詢命令,查看相關軟件包版本是否與修復版本一致,如果版本一致,則說明修復成功。
sudo rpm -qa | grep Packagename