BLSA-2017:0066 – [重要] qemu-kvm 安全警告及修复方法



  • BLSA-2017:0066 – [重要] qemu-kvm 安全警告及修复方法

    问题描述

    QEMU-KVM最近暴露出一个越界读/写漏洞(CVE-2017-7980)和一个内存破坏漏洞(CVE-2017-7718),客户机中有特权的用户或者进程可以利用这个漏洞导致QEMU进程崩溃,从而导致拒绝服务,或者潜在地执行任意代码,建议所有用户都安装BCLinux提供的的升级包以修复这些漏洞,升级包包含了修复这些漏洞的补丁文件。

    KVM简介
    KVM是集成到Linux内核的Hypervisor,是X86架构且硬件支持虚拟化技术(Intel VT或AMD-V)的Linux的全虚拟化解决方案。它是Linux的一个很小的模块,利用Linux做大量的事,如任务调度、内存管理与硬件设备交互等。从存在形式看, KVM是两个内核模块kvm.ko和kvm_intel.ko(对AMD处理器来说,就是kvm_amd.ko),这两个模块用来实现CPU的虚拟化。
    QEMU简介
    QEMU是一套由Fabrice Bellard所编写的模拟处理器的自由软件。它与Bochs,PearPC近似,但其具有某些后两者所不具备的特性,如高速度及跨平台的特性,qemu可以虚拟出不同架构的虚拟机,如在x86平台上可以虚拟出power机器。kqemu为qemu的加速器,经由kqemu这个开源的加速器,QEMU能模拟至接近真实电脑的速度。
    QEMU-KVM简介
    kvm是linux的一个模块,管理和创建完整的虚拟机需要相应的一些管理工具,由于kvm是在qemu的基础上开发的,KVM使用了 QEMU的基于x86的部分,并稍加改造,形成可控制KVM内核模块的用户空间工具QEMU-KVM。

    影响版本

    • BigCloud Enterprise Linux 7
    • Red Hat Enterprise Linux 7
    • CentOS Linux 7

    详细介绍

    安全修复

    • CVE-2017-7980 [重要]
      在QEMU的Cirrus CLGD 54xx VGA仿真器实现中发现一个越界读/写漏洞,通过各种bitblt功能复制VGA数据时可能会引发该漏洞。 客户机内部的特权用户可以利用这个漏洞使QEMU进程崩溃,或者潜在地在主机上执行任意代码。

    • CVE-2017-7718 [中等]
      在QEMU的Cirrus CLGD 54xx VGA仿真器实现中发现一个内存破坏漏洞,通过各种bitblt功能复制VGA数据时可能会引发该漏洞(例如,cirrus_bitblt_rop_fwd_transp)。 客户机内部的特权用户可以利用这个漏洞使QEMU进程崩溃,从而导致拒绝服务。

    漏洞修复

    • BZ#1452332
      当串行设备的“pty”后端进行不规律的I/O通信时,客户机在某些情况下会变得无响应。

    解决方案

    目前,BCLinux的官方源已经提供 qemu-kvm 的更新软件包,受影响的 BCLinux 7 客户端用户需要升级到 1.5.3-126.el7_3.9 版本。
    1.检查YUM源设置,确保使用的是BCLinux官方YUM源

    [root@BCLinux ~]# ll /etc/yum.repos.d/
    total 16
    -rw-r--r--. 1 root root 1127 Jan  7  2016 BCLinux-Base.repo
    -rw-r--r--. 1 root root  794 Jan  7  2016 BCLinux-Kernel.repo
    -rw-r--r--. 1 root root 1153 Jan  7  2016 BCLinux-Source.repo
    -rw-r--r--. 1 root root  801 Jan  7  2016 BigCloud.repo
    

    2.安装更新

    [root@BCLinux ~]# yum update qemu-kvm
    Loaded plugins: fastestmirror
    base                                                                                                                    | 3.6 kB  00:00:00     
    extras                                                                                                                  | 2.9 kB  00:00:00     
    updates                                                                                                                 | 2.9 kB  00:00:00     
    Loading mirror speeds from cached hostfile
    Resolving Dependencies
    --> Running transaction check
    ---> Package qemu-kvm.x86_64 10:1.5.3-126.el7 will be updated
    ---> Package qemu-kvm.x86_64 10:1.5.3-126.el7_3.9 will be an update
    --> Processing Dependency: qemu-kvm-common = 10:1.5.3-126.el7_3.9 for package: 10:qemu-kvm-1.5.3-126.el7_3.9.x86_64
    --> Processing Dependency: qemu-img = 10:1.5.3-126.el7_3.9 for package: 10:qemu-kvm-1.5.3-126.el7_3.9.x86_64
    --> Running transaction check
    ---> Package qemu-img.x86_64 10:1.5.3-126.el7 will be updated
    ---> Package qemu-img.x86_64 10:1.5.3-126.el7_3.9 will be an update
    ---> Package qemu-kvm-common.x86_64 10:1.5.3-126.el7 will be updated
    ---> Package qemu-kvm-common.x86_64 10:1.5.3-126.el7_3.9 will be an update
    --> Finished Dependency Resolution
    
    Dependencies Resolved
    
    ===============================================================================================================================================
     Package                              Arch                        Version                                   Repository                    Size
    ===============================================================================================================================================
    Updating:
     qemu-kvm                             x86_64                      10:1.5.3-126.el7_3.9                      updates                      1.9 M
    Updating for dependencies:
     qemu-img                             x86_64                      10:1.5.3-126.el7_3.9                      updates                      674 k
     qemu-kvm-common                      x86_64                      10:1.5.3-126.el7_3.9                      updates                      408 k
    
    Transaction Summary
    ===============================================================================================================================================
    Upgrade  1 Package (+2 Dependent packages)
    
    Total download size: 2.9 M
    Is this ok [y/d/N]: y
    
    

    4.复查

    [root@BCLinux ~]# rpm -q qemu-kvm
    qemu-kvm-1.5.3-126.el7_3.9.x86_64
    

    5.重启应用

    安装升级包以后,重启应用,更新生效。

    外部链接

    1.BCLinux安全更新