Vulnerabilities > CVE-2010-0309 - Configuration vulnerability in Linux Kernel

047910
CVSS 0.0 - NONE
Attack vector
UNKNOWN
Attack complexity
UNKNOWN
Privileges required
UNKNOWN
Confidentiality impact
UNKNOWN
Integrity impact
UNKNOWN
Availability impact
UNKNOWN

Summary

The pit_ioport_read function in the Programmable Interval Timer (PIT) emulation in i8254.c in KVM 83 does not properly use the pit_state data structure, which allows guest OS users to cause a denial of service (host OS crash or hang) by attempting to read the /dev/port file.

Vulnerable Configurations

Part Description Count
Application
Linux
1

Common Weakness Enumeration (CWE)

Nessus

  • NASL familyOracle Linux Local Security Checks
    NASL idORACLELINUX_ELSA-2010-0088.NASL
    descriptionFrom Red Hat Security Advisory 2010:0088 : Updated kvm packages that fix multiple security issues and several bugs are now available for Red Hat Enterprise Linux 5. This update has been rated as having important security impact by the Red Hat Security Response Team. KVM (Kernel-based Virtual Machine) is a full virtualization solution for Linux on AMD64 and Intel 64 systems. KVM is a Linux kernel module built for the standard Red Hat Enterprise Linux kernel. The x86 emulator implementation was missing a check for the Current Privilege Level (CPL) and I/O Privilege Level (IOPL). A user in a guest could leverage these flaws to cause a denial of service (guest crash) or possibly escalate their privileges within that guest. (CVE-2010-0298, CVE-2010-0306) A flaw was found in the Programmable Interval Timer (PIT) emulation. Access to the internal data structure pit_state, which represents the data state of the emulated PIT, was not properly validated in the pit_ioport_read() function. A privileged guest user could use this flaw to crash the host. (CVE-2010-0309) A flaw was found in the USB passthrough handling code. A specially crafted USB packet sent from inside a guest could be used to trigger a buffer overflow in the usb_host_handle_control() function, which runs under the QEMU-KVM context on the host. A user in a guest could leverage this flaw to cause a denial of service (guest hang or crash) or possibly escalate their privileges within the host. (CVE-2010-0297) This update also fixes the following bugs : * pvclock MSR values were not preserved during remote migration, causing time drift for guests. (BZ#537028) * SMBIOS table 4 data is now generated for Windows guests. (BZ#545874) * if the qemu-kvm
    last seen2020-06-01
    modified2020-06-02
    plugin id67993
    published2013-07-12
    reporterThis script is Copyright (C) 2013-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/67993
    titleOracle Linux 5 : kvm (ELSA-2010-0088)
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from Red Hat Security Advisory RHSA-2010:0088 and 
    # Oracle Linux Security Advisory ELSA-2010-0088 respectively.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(67993);
      script_version("1.15");
      script_cvs_date("Date: 2019/10/25 13:36:08");
    
      script_cve_id("CVE-2010-0297", "CVE-2010-0298", "CVE-2010-0306", "CVE-2010-0309");
      script_xref(name:"RHSA", value:"2010:0088");
    
      script_name(english:"Oracle Linux 5 : kvm (ELSA-2010-0088)");
      script_summary(english:"Checks rpm output for the updated packages");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote Oracle Linux host is missing one or more security updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "From Red Hat Security Advisory 2010:0088 :
    
    Updated kvm packages that fix multiple security issues and several
    bugs are now available for Red Hat Enterprise Linux 5.
    
    This update has been rated as having important security impact by the
    Red Hat Security Response Team.
    
    KVM (Kernel-based Virtual Machine) is a full virtualization solution
    for Linux on AMD64 and Intel 64 systems. KVM is a Linux kernel module
    built for the standard Red Hat Enterprise Linux kernel.
    
    The x86 emulator implementation was missing a check for the Current
    Privilege Level (CPL) and I/O Privilege Level (IOPL). A user in a
    guest could leverage these flaws to cause a denial of service (guest
    crash) or possibly escalate their privileges within that guest.
    (CVE-2010-0298, CVE-2010-0306)
    
    A flaw was found in the Programmable Interval Timer (PIT) emulation.
    Access to the internal data structure pit_state, which represents the
    data state of the emulated PIT, was not properly validated in the
    pit_ioport_read() function. A privileged guest user could use this
    flaw to crash the host. (CVE-2010-0309)
    
    A flaw was found in the USB passthrough handling code. A specially
    crafted USB packet sent from inside a guest could be used to trigger a
    buffer overflow in the usb_host_handle_control() function, which runs
    under the QEMU-KVM context on the host. A user in a guest could
    leverage this flaw to cause a denial of service (guest hang or crash)
    or possibly escalate their privileges within the host. (CVE-2010-0297)
    
    This update also fixes the following bugs :
    
    * pvclock MSR values were not preserved during remote migration,
    causing time drift for guests. (BZ#537028)
    
    * SMBIOS table 4 data is now generated for Windows guests. (BZ#545874)
    
    * if the qemu-kvm '-net user' option was used, unattended Windows XP
    installations did not receive an IP address after reboot. (BZ#546562)
    
    * when being restored from migration, a race condition caused Windows
    Server 2008 R2 guests to hang during shutdown. (BZ#546563)
    
    * the kernel symbol checking on the kvm-kmod build process has a
    safety check for ABI changes. (BZ#547293)
    
    * on hosts without high-res timers, Windows Server 2003 guests
    experienced significant time drift. (BZ#547625)
    
    * in some situations, installing Windows Server 2008 R2 from an ISO
    image resulted in a blue screen 'BAD_POOL_HEADER' stop error.
    (BZ#548368)
    
    * a bug in the grow_refcount_table() error handling caused infinite
    recursion in some cases. This caused the qemu-kvm process to hang and
    eventually crash. (BZ#552159)
    
    * for Windows Server 2003 R2, Service Pack 2, 32-bit guests, an
    'unhandled vm exit' error could occur during reboot on some systems.
    (BZ#552518)
    
    * for Windows guests, QEMU could attempt to stop a stopped audio
    device, resulting in a 'snd_playback_stop: ASSERT
    playback_channel->base.active failed' error. (BZ#552519)
    
    * the Hypercall driver did not reset the device on power-down.
    (BZ#552528)
    
    * mechanisms have been added to make older savevm versions to be
    emitted in some cases. (BZ#552529)
    
    * an error in the Makefile prevented users from using the source RPM
    to install KVM. (BZ#552530)
    
    * guests became unresponsive and could use up to 100% CPU when running
    certain benchmark tests with more than 7 guests running
    simultaneously. (BZ#553249)
    
    * QEMU could terminate randomly with virtio-net and SMP enabled.
    (BZ#561022)
    
    All KVM users should upgrade to these updated packages, which contain
    backported patches to resolve these issues. Note: The procedure in the
    Solution section must be performed before this update will take
    effect."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://oss.oracle.com/pipermail/el-errata/2010-February/001350.html"
      );
      script_set_attribute(attribute:"solution", value:"Update the affected kvm packages.");
      script_set_cvss_base_vector("CVSS2#AV:L/AC:L/Au:N/C:C/I:C/A:C");
      script_cwe_id(16, 119, 264);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:kmod-kvm");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:kvm");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:kvm-qemu-img");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:oracle:linux:kvm-tools");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:oracle:linux:5");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2010/02/12");
      script_set_attribute(attribute:"patch_publication_date", value:"2010/02/09");
      script_set_attribute(attribute:"plugin_publication_date", value:"2013/07/12");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2013-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Oracle Linux Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/OracleLinux", "Host/RedHat/release", "Host/RedHat/rpm-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    if (!get_kb_item("Host/OracleLinux")) audit(AUDIT_OS_NOT, "Oracle Linux");
    release = get_kb_item("Host/RedHat/release");
    if (isnull(release) || !pregmatch(pattern: "Oracle (?:Linux Server|Enterprise Linux)", string:release)) audit(AUDIT_OS_NOT, "Oracle Linux");
    os_ver = pregmatch(pattern: "Oracle (?:Linux Server|Enterprise Linux) .*release ([0-9]+(\.[0-9]+)?)", string:release);
    if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "Oracle Linux");
    os_ver = os_ver[1];
    if (! preg(pattern:"^5([^0-9]|$)", string:os_ver)) audit(AUDIT_OS_NOT, "Oracle Linux 5", "Oracle Linux " + os_ver);
    
    if (!get_kb_item("Host/RedHat/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && "ia64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Oracle Linux", cpu);
    if ("x86_64" >!< cpu) audit(AUDIT_ARCH_NOT, "x86_64", cpu);
    
    flag = 0;
    if (rpm_check(release:"EL5", cpu:"x86_64", reference:"kmod-kvm-83-105.0.1.el5_4.22")) flag++;
    if (rpm_check(release:"EL5", cpu:"x86_64", reference:"kvm-83-105.0.1.el5_4.22")) flag++;
    if (rpm_check(release:"EL5", cpu:"x86_64", reference:"kvm-qemu-img-83-105.0.1.el5_4.22")) flag++;
    if (rpm_check(release:"EL5", cpu:"x86_64", reference:"kvm-tools-83-105.0.1.el5_4.22")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_hole(port:0, extra:rpm_report_get());
      else security_hole(0);
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "kmod-kvm / kvm / kvm-qemu-img / kvm-tools");
    }
    
  • NASL familyDebian Local Security Checks
    NASL idDEBIAN_DSA-1996.NASL
    descriptionSeveral vulnerabilities have been discovered in the Linux kernel that may lead to a denial of service, sensitive memory leak or privilege escalation. The Common Vulnerabilities and Exposures project identifies the following problems : - CVE-2009-3939 Joseph Malicki reported that the dbg_lvl sysfs attribute for the megaraid_sas device driver had world-writable permissions, permitting local users to modify logging settings. - CVE-2009-4027 Lennert Buytenhek reported a race in the mac80211 subsystem that may allow remote users to cause a denial of service (system crash) on a system connected to the same wireless network. - CVE-2009-4536 CVE-2009-4538 Fabian Yamaguchi reported issues in the e1000 and e1000e drivers for Intel gigabit network adapters which allow remote users to bypass packet filters using specially crafted ethernet frames. - CVE-2010-0003 Andi Kleen reported a defect which allows local users to gain read access to memory reachable by the kernel when the print-fatal-signals option is enabled. This option is disabled by default. - CVE-2010-0007 Florian Westphal reported a lack of capability checking in the ebtables netfilter subsystem. If the ebtables module is loaded, local users can add and modify ebtables rules. - CVE-2010-0291 Al Viro reported several issues with the mmap/mremap system calls that allow local users to cause a denial of service (system panic) or obtain elevated privileges. - CVE-2010-0298 & CVE-2010-0306 Gleb Natapov discovered issues in the KVM subsystem where missing permission checks (CPL/IOPL) permit a user in a guest system to denial of service a guest (system crash) or gain escalated privileges with the guest. - CVE-2010-0307 Mathias Krause reported an issue with the load_elf_binary code on the amd64 flavor kernels that allows local users to cause a denial of service (system crash). - CVE-2010-0309 Marcelo Tosatti fixed an issue in the PIT emulation code in the KVM subsystem that allows privileged users in a guest domain to cause a denial of service (crash) of the host system. - CVE-2010-0410 Sebastian Krahmer discovered an issue in the netlink connector subsystem that permits local users to allocate large amounts of system memory resulting in a denial of service (out of memory). - CVE-2010-0415 Ramon de Carvalho Valle discovered an issue in the sys_move_pages interface, limited to amd64, ia64 and powerpc64 flavors in Debian. Local users can exploit this issue to cause a denial of service (system crash) or gain access to sensitive kernel memory.
    last seen2020-06-01
    modified2020-06-02
    plugin id44860
    published2010-02-24
    reporterThis script is Copyright (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/44860
    titleDebian DSA-1996-1 : linux-2.6 - privilege escalation/denial of service/sensitive memory leak
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from Debian Security Advisory DSA-1996. The text 
    # itself is copyright (C) Software in the Public Interest, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(44860);
      script_version("1.28");
      script_cvs_date("Date: 2019/08/02 13:32:22");
    
      script_cve_id("CVE-2009-3939", "CVE-2009-4027", "CVE-2009-4536", "CVE-2009-4538", "CVE-2010-0003", "CVE-2010-0007", "CVE-2010-0291", "CVE-2010-0298", "CVE-2010-0306", "CVE-2010-0307", "CVE-2010-0309", "CVE-2010-0410", "CVE-2010-0415");
      script_bugtraq_id(37019, 37170, 37519, 37523, 37724, 37762, 37906, 38027, 38058, 38144);
      script_xref(name:"DSA", value:"1996");
    
      script_name(english:"Debian DSA-1996-1 : linux-2.6 - privilege escalation/denial of service/sensitive memory leak");
      script_summary(english:"Checks dpkg output for the updated package");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote Debian host is missing a security-related update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "Several vulnerabilities have been discovered in the Linux kernel that
    may lead to a denial of service, sensitive memory leak or privilege
    escalation. The Common Vulnerabilities and Exposures project
    identifies the following problems :
    
      - CVE-2009-3939
        Joseph Malicki reported that the dbg_lvl sysfs attribute
        for the megaraid_sas device driver had world-writable
        permissions, permitting local users to modify logging
        settings.
    
      - CVE-2009-4027
        Lennert Buytenhek reported a race in the mac80211
        subsystem that may allow remote users to cause a denial
        of service (system crash) on a system connected to the
        same wireless network.
    
      - CVE-2009-4536 CVE-2009-4538
        Fabian Yamaguchi reported issues in the e1000 and e1000e
        drivers for Intel gigabit network adapters which allow
        remote users to bypass packet filters using specially
        crafted ethernet frames.
    
      - CVE-2010-0003
        Andi Kleen reported a defect which allows local users to
        gain read access to memory reachable by the kernel when
        the print-fatal-signals option is enabled. This option
        is disabled by default.
    
      - CVE-2010-0007
        Florian Westphal reported a lack of capability checking
        in the ebtables netfilter subsystem. If the ebtables
        module is loaded, local users can add and modify
        ebtables rules.
    
      - CVE-2010-0291
        Al Viro reported several issues with the mmap/mremap
        system calls that allow local users to cause a denial of
        service (system panic) or obtain elevated privileges.
    
      - CVE-2010-0298 & CVE-2010-0306
        Gleb Natapov discovered issues in the KVM subsystem
        where missing permission checks (CPL/IOPL) permit a user
        in a guest system to denial of service a guest (system
        crash) or gain escalated privileges with the guest.
    
      - CVE-2010-0307
        Mathias Krause reported an issue with the
        load_elf_binary code on the amd64 flavor kernels that
        allows local users to cause a denial of service (system
        crash).
    
      - CVE-2010-0309
        Marcelo Tosatti fixed an issue in the PIT emulation code
        in the KVM subsystem that allows privileged users in a
        guest domain to cause a denial of service (crash) of the
        host system.
    
      - CVE-2010-0410
        Sebastian Krahmer discovered an issue in the netlink
        connector subsystem that permits local users to allocate
        large amounts of system memory resulting in a denial of
        service (out of memory).
    
      - CVE-2010-0415
        Ramon de Carvalho Valle discovered an issue in the
        sys_move_pages interface, limited to amd64, ia64 and
        powerpc64 flavors in Debian. Local users can exploit
        this issue to cause a denial of service (system crash)
        or gain access to sensitive kernel memory."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2009-3939"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2009-4027"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2009-4536"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2009-4538"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0003"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0007"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0291"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0298"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0306"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0307"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0309"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0410"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0415"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.debian.org/security/2010/dsa-1996"
      );
      script_set_attribute(
        attribute:"solution", 
        value:
    "Upgrade the linux-2.6 and user-mode-linux packages.
    
    For the stable distribution (lenny), this problem has been fixed in
    version 2.6.26-21lenny3.
    
    For the oldstable distribution (etch), these problems, where
    applicable, will be fixed in updates to linux-2.6 and linux-2.6.24.
    
    Note: Debian carefully tracks all known security issues across every
    linux kernel package in all releases under active security support.
    However, given the high frequency at which low-severity security
    issues are discovered in the kernel and the resource requirements of
    doing an update, updates for lower priority issues will normally not
    be released for all kernels at the same time. Rather, they will be
    released in a staggered or 'leap-frog' fashion.
    
    The following matrix lists additional source packages that were
    rebuilt for compatibility with or to take advantage of this update :
    
                            stable/lenny           
      user-mode-linux        2.6.26-1um-2+21lenny3"
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C");
      script_set_cvss_temporal_vector("CVSS2#E:H/RL:OF/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
      script_set_attribute(attribute:"exploited_by_malware", value:"true");
      script_cwe_id(16, 189, 200, 264, 362, 399);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:linux-2.6");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:5.0");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2009/11/16");
      script_set_attribute(attribute:"patch_publication_date", value:"2010/02/12");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/02/24");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Debian Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/Debian/release", "Host/Debian/dpkg-l");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("debian_package.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    if (!get_kb_item("Host/Debian/release")) audit(AUDIT_OS_NOT, "Debian");
    if (!get_kb_item("Host/Debian/dpkg-l")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    
    flag = 0;
    if (deb_check(release:"5.0", prefix:"linux-doc-2.6.26", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-486", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-4kc-malta", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-5kc-malta", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-686", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-686-bigmem", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all-alpha", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all-amd64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all-arm", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all-armel", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all-hppa", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all-i386", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all-ia64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all-mips", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all-mipsel", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all-powerpc", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all-s390", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-all-sparc", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-alpha-generic", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-alpha-legacy", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-alpha-smp", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-amd64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-common", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-common-openvz", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-common-vserver", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-common-xen", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-footbridge", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-iop32x", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-itanium", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-ixp4xx", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-mckinley", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-openvz-686", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-openvz-amd64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-orion5x", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-parisc", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-parisc-smp", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-parisc64", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-parisc64-smp", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-powerpc", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-powerpc-smp", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-powerpc64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-r4k-ip22", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-r5k-cobalt", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-r5k-ip32", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-s390", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-s390x", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-sb1-bcm91250a", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-sb1a-bcm91480b", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-sparc64", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-sparc64-smp", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-versatile", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-vserver-686", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-vserver-686-bigmem", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-vserver-amd64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-vserver-itanium", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-vserver-mckinley", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-vserver-powerpc", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-vserver-powerpc64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-vserver-s390x", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-vserver-sparc64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-xen-686", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-headers-2.6.26-2-xen-amd64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-486", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-4kc-malta", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-5kc-malta", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-686", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-686-bigmem", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-alpha-generic", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-alpha-legacy", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-alpha-smp", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-amd64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-footbridge", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-iop32x", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-itanium", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-ixp4xx", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-mckinley", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-openvz-686", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-openvz-amd64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-orion5x", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-parisc", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-parisc-smp", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-parisc64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-parisc64-smp", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-powerpc", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-powerpc-smp", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-powerpc64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-r4k-ip22", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-r5k-cobalt", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-r5k-ip32", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-s390", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-s390-tape", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-s390x", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-sb1-bcm91250a", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-sb1a-bcm91480b", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-sparc64", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-sparc64-smp", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-versatile", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-vserver-686", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-vserver-686-bigmem", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-vserver-amd64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-vserver-itanium", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-vserver-mckinley", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-vserver-powerpc", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-vserver-powerpc64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-vserver-s390x", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-vserver-sparc64", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-xen-686", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-image-2.6.26-2-xen-amd64", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-libc-dev", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-manual-2.6.26", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-modules-2.6.26-2-xen-686", reference:"2.6.26-21lenny2")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-modules-2.6.26-2-xen-amd64", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-patch-debian-2.6.26", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-source-2.6.26", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-support-2.6.26-2", reference:"2.6.26-21lenny3")) flag++;
    if (deb_check(release:"5.0", prefix:"linux-tree-2.6.26", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"xen-linux-system-2.6.26-2-xen-686", reference:"2.6.26-21lenny1")) flag++;
    if (deb_check(release:"5.0", prefix:"xen-linux-system-2.6.26-2-xen-amd64", reference:"2.6.26-21lenny2")) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_hole(port:0, extra:deb_report_get());
      else security_hole(0);
      exit(0);
    }
    else audit(AUDIT_HOST_NOT, "affected");
    
  • NASL familyUbuntu Local Security Checks
    NASL idUBUNTU_USN-914-1.NASL
    descriptionMathias Krause discovered that the Linux kernel did not correctly handle missing ELF interpreters. A local attacker could exploit this to cause the system to crash, leading to a denial of service. (CVE-2010-0307) Marcelo Tosatti discovered that the Linux kernel
    last seen2020-06-01
    modified2020-06-02
    plugin id45081
    published2010-03-17
    reporterUbuntu Security Notice (C) 2010-2019 Canonical, Inc. / NASL script (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/45081
    titleUbuntu 6.06 LTS / 8.04 LTS / 8.10 / 9.04 / 9.10 : linux, linux-source-2.6.15 vulnerabilities (USN-914-1)
    code
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were
    # extracted from Ubuntu Security Notice USN-914-1. The text 
    # itself is copyright (C) Canonical, Inc. See 
    # <http://www.ubuntu.com/usn/>. Ubuntu(R) is a registered 
    # trademark of Canonical, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(45081);
      script_version("1.22");
      script_cvs_date("Date: 2019/09/19 12:54:26");
    
      script_cve_id("CVE-2010-0307", "CVE-2010-0309", "CVE-2010-0410", "CVE-2010-0415", "CVE-2010-0622", "CVE-2010-0623");
      script_bugtraq_id(38027, 38058, 38144, 38165);
      script_xref(name:"USN", value:"914-1");
    
      script_name(english:"Ubuntu 6.06 LTS / 8.04 LTS / 8.10 / 9.04 / 9.10 : linux, linux-source-2.6.15 vulnerabilities (USN-914-1)");
      script_summary(english:"Checks dpkg output for updated packages.");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:
    "The remote Ubuntu host is missing one or more security-related
    patches."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "Mathias Krause discovered that the Linux kernel did not correctly
    handle missing ELF interpreters. A local attacker could exploit this
    to cause the system to crash, leading to a denial of service.
    (CVE-2010-0307)
    
    Marcelo Tosatti discovered that the Linux kernel's hardware
    virtualization did not correctly handle reading the /dev/port special
    device. A local attacker in a guest operating system could issue a
    specific read that would cause the host system to crash, leading to a
    denial of service. (CVE-2010-0309)
    
    Sebastian Krahmer discovered that the Linux kernel did not correctly
    handle netlink connector messages. A local attacker could exploit this
    to consume kernel memory, leading to a denial of service.
    (CVE-2010-0410)
    
    Ramon de Carvalho Valle discovered that the Linux kernel did not
    correctly validate certain memory migration calls. A local attacker
    could exploit this to read arbitrary kernel memory or cause a system
    crash, leading to a denial of service. (CVE-2010-0415)
    
    Jermome Marchand and Mikael Pettersson discovered that the Linux
    kernel did not correctly handle certain futex operations. A local
    attacker could exploit this to cause a system crash, leading to a
    denial of service. (CVE-2010-0622, CVE-2010-0623).
    
    Note that Tenable Network Security has extracted the preceding
    description block directly from the Ubuntu security advisory. Tenable
    has attempted to automatically clean and format it as much as possible
    without introducing additional issues."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://usn.ubuntu.com/914-1/"
      );
      script_set_attribute(attribute:"solution", value:"Update the affected packages.");
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:S/C:N/I:N/A:C");
      script_set_cvss_temporal_vector("CVSS2#E:POC/RL:OF/RC:C");
      script_set_attribute(attribute:"exploitability_ease", value:"Exploits are available");
      script_set_attribute(attribute:"exploit_available", value:"true");
      script_set_attribute(attribute:"exploited_by_malware", value:"true");
      script_cwe_id(16, 20, 399);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-doc");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-doc-2.6.15");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-doc-2.6.24");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-doc-2.6.27");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-doc-2.6.28");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-ec2-doc");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-ec2-source-2.6.31");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-386");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-686");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-amd64-generic");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-amd64-k8");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-amd64-server");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-amd64-xeon");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-ec2");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-generic");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-generic-pae");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-openvz");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-rt");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-server");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-virtual");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-headers-2.6-xen");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-386");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-686");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-amd64-generic");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-amd64-k8");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-amd64-server");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-amd64-xeon");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-dove");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-dove-z0");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-ec2");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-generic");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-generic-pae");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-lpia");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-lpiacompat");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-openvz");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-rt");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-server");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-versatile");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-virtual");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-2.6-xen");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-debug-2.6-386");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-debug-2.6-generic");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-debug-2.6-server");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-image-debug-2.6-virtual");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-kernel-devel");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-libc-dev");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-source-2.6.15");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-source-2.6.24");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-source-2.6.27");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-source-2.6.28");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:canonical:ubuntu_linux:linux-source-2.6.31");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:6.06:-:lts");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:8.04:-:lts");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:8.10");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:9.04");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:canonical:ubuntu_linux:9.10");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2010/02/12");
      script_set_attribute(attribute:"patch_publication_date", value:"2010/03/16");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/03/17");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"Ubuntu Security Notice (C) 2010-2019 Canonical, Inc. / NASL script (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Ubuntu Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl", "linux_alt_patch_detect.nasl");
      script_require_keys("Host/cpu", "Host/Ubuntu", "Host/Ubuntu/release", "Host/Debian/dpkg-l");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("ubuntu.inc");
    include("ksplice.inc");
    
    if ( ! get_kb_item("Host/local_checks_enabled") ) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/Ubuntu/release");
    if ( isnull(release) ) audit(AUDIT_OS_NOT, "Ubuntu");
    release = chomp(release);
    if (! preg(pattern:"^(6\.06|8\.04|8\.10|9\.04|9\.10)$", string:release)) audit(AUDIT_OS_NOT, "Ubuntu 6.06 / 8.04 / 8.10 / 9.04 / 9.10", "Ubuntu " + release);
    if ( ! get_kb_item("Host/Debian/dpkg-l") ) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Ubuntu", cpu);
    
    if (get_one_kb_item("Host/ksplice/kernel-cves"))
    {
      rm_kb_item(name:"Host/uptrack-uname-r");
      cve_list = make_list("CVE-2010-0307", "CVE-2010-0309", "CVE-2010-0410", "CVE-2010-0415", "CVE-2010-0622", "CVE-2010-0623");
      if (ksplice_cves_check(cve_list))
      {
        audit(AUDIT_PATCH_INSTALLED, "KSplice hotfix for USN-914-1");
      }
      else
      {
        _ubuntu_report = ksplice_reporting_text();
      }
    }
    
    flag = 0;
    
    if (ubuntu_check(osver:"6.06", pkgname:"linux-doc-2.6.15", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-headers-2.6.15-55", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-headers-2.6.15-55-386", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-headers-2.6.15-55-686", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-headers-2.6.15-55-amd64-generic", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-headers-2.6.15-55-amd64-k8", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-headers-2.6.15-55-amd64-server", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-headers-2.6.15-55-amd64-xeon", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-headers-2.6.15-55-server", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-image-2.6.15-55-386", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-image-2.6.15-55-686", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-image-2.6.15-55-amd64-generic", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-image-2.6.15-55-amd64-k8", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-image-2.6.15-55-amd64-server", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-image-2.6.15-55-amd64-xeon", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-image-2.6.15-55-server", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-kernel-devel", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"6.06", pkgname:"linux-source-2.6.15", pkgver:"2.6.15-55.83")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-doc-2.6.24", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-headers-2.6.24-27", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-headers-2.6.24-27-386", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-headers-2.6.24-27-generic", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-headers-2.6.24-27-openvz", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-headers-2.6.24-27-rt", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-headers-2.6.24-27-server", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-headers-2.6.24-27-virtual", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-headers-2.6.24-27-xen", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-2.6.24-27-386", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-2.6.24-27-generic", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-2.6.24-27-lpia", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-2.6.24-27-lpiacompat", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-2.6.24-27-openvz", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-2.6.24-27-rt", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-2.6.24-27-server", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-2.6.24-27-virtual", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-2.6.24-27-xen", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-debug-2.6.24-27-386", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-debug-2.6.24-27-generic", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-debug-2.6.24-27-server", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-image-debug-2.6.24-27-virtual", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-kernel-devel", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-libc-dev", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.04", pkgname:"linux-source-2.6.24", pkgver:"2.6.24-27.68")) flag++;
    if (ubuntu_check(osver:"8.10", pkgname:"linux-doc-2.6.27", pkgver:"2.6.27-17.46")) flag++;
    if (ubuntu_check(osver:"8.10", pkgname:"linux-headers-2.6.27-17", pkgver:"2.6.27-17.46")) flag++;
    if (ubuntu_check(osver:"8.10", pkgname:"linux-headers-2.6.27-17-generic", pkgver:"2.6.27-17.46")) flag++;
    if (ubuntu_check(osver:"8.10", pkgname:"linux-headers-2.6.27-17-server", pkgver:"2.6.27-17.46")) flag++;
    if (ubuntu_check(osver:"8.10", pkgname:"linux-image-2.6.27-17-generic", pkgver:"2.6.27-17.46")) flag++;
    if (ubuntu_check(osver:"8.10", pkgname:"linux-image-2.6.27-17-server", pkgver:"2.6.27-17.46")) flag++;
    if (ubuntu_check(osver:"8.10", pkgname:"linux-image-2.6.27-17-virtual", pkgver:"2.6.27-17.46")) flag++;
    if (ubuntu_check(osver:"8.10", pkgname:"linux-libc-dev", pkgver:"2.6.27-17.46")) flag++;
    if (ubuntu_check(osver:"8.10", pkgname:"linux-source-2.6.27", pkgver:"2.6.27-17.46")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"linux-doc-2.6.28", pkgver:"2.6.28-18.60")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"linux-headers-2.6.28-18", pkgver:"2.6.28-18.60")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"linux-headers-2.6.28-18-generic", pkgver:"2.6.28-18.60")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"linux-headers-2.6.28-18-server", pkgver:"2.6.28-18.60")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"linux-image-2.6.28-18-generic", pkgver:"2.6.28-18.60")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"linux-image-2.6.28-18-lpia", pkgver:"2.6.28-18.60")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"linux-image-2.6.28-18-server", pkgver:"2.6.28-18.60")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"linux-image-2.6.28-18-versatile", pkgver:"2.6.28-18.60")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"linux-image-2.6.28-18-virtual", pkgver:"2.6.28-18.60")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"linux-libc-dev", pkgver:"2.6.28-18.60")) flag++;
    if (ubuntu_check(osver:"9.04", pkgname:"linux-source-2.6.28", pkgver:"2.6.28-18.60")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-doc", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-ec2-doc", pkgver:"2.6.31-305.13")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-ec2-source-2.6.31", pkgver:"2.6.31-305.13")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-headers-2.6.31-20", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-headers-2.6.31-20-386", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-headers-2.6.31-20-generic", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-headers-2.6.31-20-generic-pae", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-headers-2.6.31-20-server", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-headers-2.6.31-305", pkgver:"2.6.31-305.13")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-headers-2.6.31-305-ec2", pkgver:"2.6.31-305.13")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-image-2.6.31-20-386", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-image-2.6.31-20-generic", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-image-2.6.31-20-generic-pae", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-image-2.6.31-20-lpia", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-image-2.6.31-20-server", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-image-2.6.31-20-virtual", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-image-2.6.31-212-dove", pkgver:"2.6.31-212.26")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-image-2.6.31-212-dove-z0", pkgver:"2.6.31-212.26")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-image-2.6.31-305-ec2", pkgver:"2.6.31-305.13")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-libc-dev", pkgver:"2.6.31-20.58")) flag++;
    if (ubuntu_check(osver:"9.10", pkgname:"linux-source-2.6.31", pkgver:"2.6.31-20.58")) flag++;
    
    if (flag)
    {
      security_report_v4(
        port       : 0,
        severity   : SECURITY_WARNING,
        extra      : ubuntu_report_get()
      );
      exit(0);
    }
    else
    {
      tested = ubuntu_pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "linux-doc / linux-doc-2.6.15 / linux-doc-2.6.24 / linux-doc-2.6.27 / etc");
    }
    
  • NASL familyRed Hat Local Security Checks
    NASL idREDHAT-RHSA-2010-0088.NASL
    descriptionUpdated kvm packages that fix multiple security issues and several bugs are now available for Red Hat Enterprise Linux 5. This update has been rated as having important security impact by the Red Hat Security Response Team. KVM (Kernel-based Virtual Machine) is a full virtualization solution for Linux on AMD64 and Intel 64 systems. KVM is a Linux kernel module built for the standard Red Hat Enterprise Linux kernel. The x86 emulator implementation was missing a check for the Current Privilege Level (CPL) and I/O Privilege Level (IOPL). A user in a guest could leverage these flaws to cause a denial of service (guest crash) or possibly escalate their privileges within that guest. (CVE-2010-0298, CVE-2010-0306) A flaw was found in the Programmable Interval Timer (PIT) emulation. Access to the internal data structure pit_state, which represents the data state of the emulated PIT, was not properly validated in the pit_ioport_read() function. A privileged guest user could use this flaw to crash the host. (CVE-2010-0309) A flaw was found in the USB passthrough handling code. A specially crafted USB packet sent from inside a guest could be used to trigger a buffer overflow in the usb_host_handle_control() function, which runs under the QEMU-KVM context on the host. A user in a guest could leverage this flaw to cause a denial of service (guest hang or crash) or possibly escalate their privileges within the host. (CVE-2010-0297) This update also fixes the following bugs : * pvclock MSR values were not preserved during remote migration, causing time drift for guests. (BZ#537028) * SMBIOS table 4 data is now generated for Windows guests. (BZ#545874) * if the qemu-kvm
    last seen2020-06-01
    modified2020-06-02
    plugin id63916
    published2013-01-24
    reporterThis script is Copyright (C) 2013-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/63916
    titleRHEL 5 : kvm (RHSA-2010:0088)
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from Red Hat Security Advisory RHSA-2010:0088. The text 
    # itself is copyright (C) Red Hat, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(63916);
      script_version("1.23");
      script_cvs_date("Date: 2019/10/25 13:36:14");
    
      script_cve_id("CVE-2010-0297", "CVE-2010-0298", "CVE-2010-0306", "CVE-2010-0309");
      script_xref(name:"RHSA", value:"2010:0088");
    
      script_name(english:"RHEL 5 : kvm (RHSA-2010:0088)");
      script_summary(english:"Checks the rpm output for the updated packages");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote Red Hat host is missing one or more security updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "Updated kvm packages that fix multiple security issues and several
    bugs are now available for Red Hat Enterprise Linux 5.
    
    This update has been rated as having important security impact by the
    Red Hat Security Response Team.
    
    KVM (Kernel-based Virtual Machine) is a full virtualization solution
    for Linux on AMD64 and Intel 64 systems. KVM is a Linux kernel module
    built for the standard Red Hat Enterprise Linux kernel.
    
    The x86 emulator implementation was missing a check for the Current
    Privilege Level (CPL) and I/O Privilege Level (IOPL). A user in a
    guest could leverage these flaws to cause a denial of service (guest
    crash) or possibly escalate their privileges within that guest.
    (CVE-2010-0298, CVE-2010-0306)
    
    A flaw was found in the Programmable Interval Timer (PIT) emulation.
    Access to the internal data structure pit_state, which represents the
    data state of the emulated PIT, was not properly validated in the
    pit_ioport_read() function. A privileged guest user could use this
    flaw to crash the host. (CVE-2010-0309)
    
    A flaw was found in the USB passthrough handling code. A specially
    crafted USB packet sent from inside a guest could be used to trigger a
    buffer overflow in the usb_host_handle_control() function, which runs
    under the QEMU-KVM context on the host. A user in a guest could
    leverage this flaw to cause a denial of service (guest hang or crash)
    or possibly escalate their privileges within the host. (CVE-2010-0297)
    
    This update also fixes the following bugs :
    
    * pvclock MSR values were not preserved during remote migration,
    causing time drift for guests. (BZ#537028)
    
    * SMBIOS table 4 data is now generated for Windows guests. (BZ#545874)
    
    * if the qemu-kvm '-net user' option was used, unattended Windows XP
    installations did not receive an IP address after reboot. (BZ#546562)
    
    * when being restored from migration, a race condition caused Windows
    Server 2008 R2 guests to hang during shutdown. (BZ#546563)
    
    * the kernel symbol checking on the kvm-kmod build process has a
    safety check for ABI changes. (BZ#547293)
    
    * on hosts without high-res timers, Windows Server 2003 guests
    experienced significant time drift. (BZ#547625)
    
    * in some situations, installing Windows Server 2008 R2 from an ISO
    image resulted in a blue screen 'BAD_POOL_HEADER' stop error.
    (BZ#548368)
    
    * a bug in the grow_refcount_table() error handling caused infinite
    recursion in some cases. This caused the qemu-kvm process to hang and
    eventually crash. (BZ#552159)
    
    * for Windows Server 2003 R2, Service Pack 2, 32-bit guests, an
    'unhandled vm exit' error could occur during reboot on some systems.
    (BZ#552518)
    
    * for Windows guests, QEMU could attempt to stop a stopped audio
    device, resulting in a 'snd_playback_stop: ASSERT
    playback_channel->base.active failed' error. (BZ#552519)
    
    * the Hypercall driver did not reset the device on power-down.
    (BZ#552528)
    
    * mechanisms have been added to make older savevm versions to be
    emitted in some cases. (BZ#552529)
    
    * an error in the Makefile prevented users from using the source RPM
    to install KVM. (BZ#552530)
    
    * guests became unresponsive and could use up to 100% CPU when running
    certain benchmark tests with more than 7 guests running
    simultaneously. (BZ#553249)
    
    * QEMU could terminate randomly with virtio-net and SMP enabled.
    (BZ#561022)
    
    All KVM users should upgrade to these updated packages, which contain
    backported patches to resolve these issues. Note: The procedure in the
    Solution section must be performed before this update will take
    effect."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://access.redhat.com/security/cve/cve-2010-0297"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://access.redhat.com/security/cve/cve-2010-0298"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://access.redhat.com/security/cve/cve-2010-0306"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://access.redhat.com/security/cve/cve-2010-0309"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://access.redhat.com/errata/RHSA-2010:0088"
      );
      script_set_attribute(attribute:"solution", value:"Update the affected packages.");
      script_set_cvss_base_vector("CVSS2#AV:L/AC:L/Au:N/C:C/I:C/A:C");
      script_cwe_id(16, 119, 264);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:kmod-kvm");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:kvm");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:kvm-qemu-img");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:redhat:enterprise_linux:kvm-tools");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:5");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:redhat:enterprise_linux:5.4");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2010/02/12");
      script_set_attribute(attribute:"patch_publication_date", value:"2010/02/09");
      script_set_attribute(attribute:"plugin_publication_date", value:"2013/01/24");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2013-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Red Hat Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/RedHat/release", "Host/RedHat/rpm-list", "Host/cpu");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("misc_func.inc");
    include("rpm.inc");
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/RedHat/release");
    if (isnull(release) || "Red Hat" >!< release) audit(AUDIT_OS_NOT, "Red Hat");
    os_ver = pregmatch(pattern: "Red Hat Enterprise Linux.*release ([0-9]+(\.[0-9]+)?)", string:release);
    if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "Red Hat");
    os_ver = os_ver[1];
    if (! preg(pattern:"^5([^0-9]|$)", string:os_ver)) audit(AUDIT_OS_NOT, "Red Hat 5.x", "Red Hat " + os_ver);
    
    if (!get_kb_item("Host/RedHat/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$" && "s390" >!< cpu) audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Red Hat", cpu);
    if ("x86_64" >!< cpu) audit(AUDIT_ARCH_NOT, "x86_64", cpu);
    
    yum_updateinfo = get_kb_item("Host/RedHat/yum-updateinfo");
    if (!empty_or_null(yum_updateinfo)) 
    {
      rhsa = "RHSA-2010:0088";
      yum_report = redhat_generate_yum_updateinfo_report(rhsa:rhsa);
      if (!empty_or_null(yum_report))
      {
        security_report_v4(
          port       : 0,
          severity   : SECURITY_HOLE,
          extra      : yum_report 
        );
        exit(0);
      }
      else
      {
        audit_message = "affected by Red Hat security advisory " + rhsa;
        audit(AUDIT_OS_NOT, audit_message);
      }
    }
    else
    {
      flag = 0;
      if (rpm_check(release:"RHEL5", cpu:"x86_64", reference:"kmod-kvm-83-105.el5_4.22")) flag++;
    
      if (rpm_check(release:"RHEL5", cpu:"x86_64", reference:"kvm-83-105.el5_4.22")) flag++;
    
      if (rpm_check(release:"RHEL5", cpu:"x86_64", reference:"kvm-qemu-img-83-105.el5_4.22")) flag++;
    
      if (rpm_check(release:"RHEL5", cpu:"x86_64", reference:"kvm-tools-83-105.el5_4.22")) flag++;
    
    
      if (flag)
      {
        security_report_v4(
          port       : 0,
          severity   : SECURITY_HOLE,
          extra      : rpm_report_get() + redhat_report_package_caveat()
        );
        exit(0);
      }
      else
      {
        tested = pkg_tests_get();
        if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
        else audit(AUDIT_PACKAGE_NOT_INSTALLED, "kmod-kvm / kvm / kvm-qemu-img / kvm-tools");
      }
    }
    
  • NASL familyDebian Local Security Checks
    NASL idDEBIAN_DSA-2010.NASL
    descriptionSeveral local vulnerabilities have been discovered in kvm, a full virtualization system. The Common Vulnerabilities and Exposures project identifies the following problems : - CVE-2010-0298 CVE-2010-0306 Gleb Natapov discovered issues in the KVM subsystem where missing permission checks (CPL/IOPL) permit a user in a guest system to denial of service a guest (system crash) or gain escalated privileges with the guest. - CVE-2010-0309 Marcelo Tosatti fixed an issue in the PIT emulation code in the KVM subsystem that allows privileged users in a guest domain to cause a denial of service (crash) of the host system. - CVE-2010-0419 Paolo Bonzini found a bug in KVM that can be used to bypass proper permission checking while loading segment selectors. This potentially allows privileged guest users to execute privileged instructions on the host system.
    last seen2020-06-01
    modified2020-06-02
    plugin id45026
    published2010-03-11
    reporterThis script is Copyright (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/45026
    titleDebian DSA-2010-1 : kvm - privilege escalation/denial of service
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from Debian Security Advisory DSA-2010. The text 
    # itself is copyright (C) Software in the Public Interest, Inc.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(45026);
      script_version("1.20");
      script_cvs_date("Date: 2019/08/02 13:32:22");
    
      script_cve_id("CVE-2010-0298", "CVE-2010-0306", "CVE-2010-0309", "CVE-2010-0419");
      script_xref(name:"DSA", value:"2010");
    
      script_name(english:"Debian DSA-2010-1 : kvm - privilege escalation/denial of service");
      script_summary(english:"Checks dpkg output for the updated package");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote Debian host is missing a security-related update."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "Several local vulnerabilities have been discovered in kvm, a full
    virtualization system. The Common Vulnerabilities and Exposures
    project identifies the following problems :
    
      - CVE-2010-0298 CVE-2010-0306
        Gleb Natapov discovered issues in the KVM subsystem
        where missing permission checks (CPL/IOPL) permit a user
        in a guest system to denial of service a guest (system
        crash) or gain escalated privileges with the guest.
    
      - CVE-2010-0309
        Marcelo Tosatti fixed an issue in the PIT emulation code
        in the KVM subsystem that allows privileged users in a
        guest domain to cause a denial of service (crash) of the
        host system.
    
      - CVE-2010-0419
        Paolo Bonzini found a bug in KVM that can be used to
        bypass proper permission checking while loading segment
        selectors. This potentially allows privileged guest
        users to execute privileged instructions on the host
        system."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0298"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0306"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0309"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://security-tracker.debian.org/tracker/CVE-2010-0419"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://www.debian.org/security/2010/dsa-2010"
      );
      script_set_attribute(
        attribute:"solution", 
        value:
    "Upgrade the kvm package.
    
    For the stable distribution (lenny), this problem has been fixed in
    version 72+dfsg-5~lenny5."
      );
      script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:S/C:N/I:N/A:C");
      script_cwe_id(16, 264);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:debian:debian_linux:kvm");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:debian:debian_linux:5.0");
    
      script_set_attribute(attribute:"patch_publication_date", value:"2010/03/10");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/03/11");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Debian Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/Debian/release", "Host/Debian/dpkg-l");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("debian_package.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    if (!get_kb_item("Host/Debian/release")) audit(AUDIT_OS_NOT, "Debian");
    if (!get_kb_item("Host/Debian/dpkg-l")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    
    flag = 0;
    if (deb_check(release:"5.0", prefix:"kvm", reference:"72+dfsg-5~lenny5")) flag++;
    if (deb_check(release:"5.0", prefix:"kvm-source", reference:"72+dfsg-5~lenny5")) flag++;
    
    if (flag)
    {
      if (report_verbosity > 0) security_warning(port:0, extra:deb_report_get());
      else security_warning(0);
      exit(0);
    }
    else audit(AUDIT_HOST_NOT, "affected");
    
  • NASL familyScientific Linux Local Security Checks
    NASL idSL_20100209_KVM_ON_SL5_4.NASL
    descriptionThe x86 emulator implementation was missing a check for the Current Privilege Level (CPL) and I/O Privilege Level (IOPL). A user in a guest could leverage these flaws to cause a denial of service (guest crash) or possibly escalate their privileges within that guest. (CVE-2010-0298, CVE-2010-0306) A flaw was found in the Programmable Interval Timer (PIT) emulation. Access to the internal data structure pit_state, which represents the data state of the emulated PIT, was not properly validated in the pit_ioport_read() function. A privileged guest user could use this flaw to crash the host. (CVE-2010-0309) A flaw was found in the USB passthrough handling code. A specially crafted USB packet sent from inside a guest could be used to trigger a buffer overflow in the usb_host_handle_control() function, which runs under the QEMU-KVM context on the host. A user in a guest could leverage this flaw to cause a denial of service (guest hang or crash) or possibly escalate their privileges within the host. (CVE-2010-0297) This update also fixes the following bugs : - pvclock MSR values were not preserved during remote migration, causing time drift for guests. (BZ#537028) - SMBIOS table 4 data is now generated for Windows guests. (BZ#545874) - if the qemu-kvm
    last seen2020-06-01
    modified2020-06-02
    plugin id60730
    published2012-08-01
    reporterThis script is Copyright (C) 2012-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/60730
    titleScientific Linux Security Update : kvm on SL5.4 i386/x86_64
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text is (C) Scientific Linux.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(60730);
      script_version("1.13");
      script_cvs_date("Date: 2019/10/25 13:36:18");
    
      script_cve_id("CVE-2010-0297", "CVE-2010-0298", "CVE-2010-0306", "CVE-2010-0309");
    
      script_name(english:"Scientific Linux Security Update : kvm on SL5.4 i386/x86_64");
      script_summary(english:"Checks rpm output for the updated packages");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:
    "The remote Scientific Linux host is missing one or more security
    updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "The x86 emulator implementation was missing a check for the Current
    Privilege Level (CPL) and I/O Privilege Level (IOPL). A user in a
    guest could leverage these flaws to cause a denial of service (guest
    crash) or possibly escalate their privileges within that guest.
    (CVE-2010-0298, CVE-2010-0306)
    
    A flaw was found in the Programmable Interval Timer (PIT) emulation.
    Access to the internal data structure pit_state, which represents the
    data state of the emulated PIT, was not properly validated in the
    pit_ioport_read() function. A privileged guest user could use this
    flaw to crash the host. (CVE-2010-0309)
    
    A flaw was found in the USB passthrough handling code. A specially
    crafted USB packet sent from inside a guest could be used to trigger a
    buffer overflow in the usb_host_handle_control() function, which runs
    under the QEMU-KVM context on the host. A user in a guest could
    leverage this flaw to cause a denial of service (guest hang or crash)
    or possibly escalate their privileges within the host. (CVE-2010-0297)
    
    This update also fixes the following bugs :
    
      - pvclock MSR values were not preserved during remote
        migration, causing time drift for guests. (BZ#537028)
    
      - SMBIOS table 4 data is now generated for Windows guests.
        (BZ#545874)
    
      - if the qemu-kvm '-net user' option was used, unattended
        Windows XP installations did not receive an IP address
        after reboot. (BZ#546562)
    
      - when being restored from migration, a race condition
        caused Windows Server 2008 R2 guests to hang during
        shutdown. (BZ#546563)
    
      - the kernel symbol checking on the kvm-kmod build process
        has a safety check for ABI changes. (BZ#547293)
    
      - on hosts without high-res timers, Windows Server 2003
        guests experienced significant time drift. (BZ#547625)
    
      - in some situations, installing Windows Server 2008 R2
        from an ISO image resulted in a blue screen
        'BAD_POOL_HEADER' stop error. (BZ#548368)
    
      - a bug in the grow_refcount_table() error handling caused
        infinite recursion in some cases. This caused the
        qemu-kvm process to hang and eventually crash.
        (BZ#552159)
    
      - for Windows Server 2003 R2, Service Pack 2, 32-bit
        guests, an 'unhandled vm exit' error could occur during
        reboot on some systems. (BZ#552518)
    
      - for Windows guests, QEMU could attempt to stop a stopped
        audio device, resulting in a 'snd_playback_stop: ASSERT
        playback_channel->base.active failed' error. (BZ#552519)
    
      - the Hypercall driver did not reset the device on
        power-down. (BZ#552528)
    
      - mechanisms have been added to make older savevm versions
        to be emitted in some cases. (BZ#552529)
    
      - an error in the Makefile prevented users from using the
        source RPM to install KVM. (BZ#552530)
    
      - guests became unresponsive and could use up to 100% CPU
        when running certain benchmark tests with more than 7
        guests running simultaneously. (BZ#553249)
    
      - QEMU could terminate randomly with virtio-net and SMP
        enabled. (BZ#561022)
    
    NOTE - The following procedure must be performed before this update
    will take effect :
    
    1) Stop all KVM guest virtual machines.
    
    2) Either reboot the hypervisor machine or, as the root user, remove
    (using 'modprobe -r [module]') and reload (using 'modprobe [module]')
    all of the following modules which are currently running (determined
    using 'lsmod'): kvm, ksm, kvm-intel or kvm-amd.
    
    3) Restart the KVM guest virtual machines."
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=537028"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=545874"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=546562"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=546563"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=547293"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=547625"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=548368"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=552159"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=552518"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=552519"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=552528"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=552529"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=552530"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=553249"
      );
      script_set_attribute(
        attribute:"see_also",
        value:"https://bugzilla.redhat.com/show_bug.cgi?id=561022"
      );
      # https://listserv.fnal.gov/scripts/wa.exe?A2=ind1002&L=scientific-linux-errata&T=0&P=525
      script_set_attribute(
        attribute:"see_also",
        value:"http://www.nessus.org/u?dc42700f"
      );
      script_set_attribute(attribute:"solution", value:"Update the affected packages.");
      script_set_cvss_base_vector("CVSS2#AV:L/AC:L/Au:N/C:C/I:C/A:C");
      script_cwe_id(16, 119, 264);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"x-cpe:/o:fermilab:scientific_linux");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2010/02/12");
      script_set_attribute(attribute:"patch_publication_date", value:"2010/02/09");
      script_set_attribute(attribute:"plugin_publication_date", value:"2012/08/01");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2012-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"Scientific Linux Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/cpu", "Host/RedHat/release", "Host/RedHat/rpm-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/RedHat/release");
    if (isnull(release) || "Scientific Linux " >!< release) audit(AUDIT_HOST_NOT, "running Scientific Linux");
    if (!get_kb_item("Host/RedHat/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if (cpu >!< "x86_64" && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "Scientific Linux", cpu);
    
    
    flag = 0;
    if (rpm_check(release:"SL5", cpu:"x86_64", reference:"kmod-kvm-83-105.el5_4.22")) flag++;
    if (rpm_check(release:"SL5", cpu:"x86_64", reference:"kvm-83-105.el5_4.22")) flag++;
    if (rpm_check(release:"SL5", cpu:"x86_64", reference:"kvm-qemu-img-83-105.el5_4.22")) flag++;
    if (rpm_check(release:"SL5", cpu:"x86_64", reference:"kvm-tools-83-105.el5_4.22")) flag++;
    
    
    if (flag)
    {
      if (report_verbosity > 0) security_hole(port:0, extra:rpm_report_get());
      else security_hole(0);
      exit(0);
    }
    else audit(AUDIT_HOST_NOT, "affected");
    
  • NASL familyCentOS Local Security Checks
    NASL idCENTOS_RHSA-2010-0088.NASL
    descriptionUpdated kvm packages that fix multiple security issues and several bugs are now available for Red Hat Enterprise Linux 5. This update has been rated as having important security impact by the Red Hat Security Response Team. KVM (Kernel-based Virtual Machine) is a full virtualization solution for Linux on AMD64 and Intel 64 systems. KVM is a Linux kernel module built for the standard Red Hat Enterprise Linux kernel. The x86 emulator implementation was missing a check for the Current Privilege Level (CPL) and I/O Privilege Level (IOPL). A user in a guest could leverage these flaws to cause a denial of service (guest crash) or possibly escalate their privileges within that guest. (CVE-2010-0298, CVE-2010-0306) A flaw was found in the Programmable Interval Timer (PIT) emulation. Access to the internal data structure pit_state, which represents the data state of the emulated PIT, was not properly validated in the pit_ioport_read() function. A privileged guest user could use this flaw to crash the host. (CVE-2010-0309) A flaw was found in the USB passthrough handling code. A specially crafted USB packet sent from inside a guest could be used to trigger a buffer overflow in the usb_host_handle_control() function, which runs under the QEMU-KVM context on the host. A user in a guest could leverage this flaw to cause a denial of service (guest hang or crash) or possibly escalate their privileges within the host. (CVE-2010-0297) This update also fixes the following bugs : * pvclock MSR values were not preserved during remote migration, causing time drift for guests. (BZ#537028) * SMBIOS table 4 data is now generated for Windows guests. (BZ#545874) * if the qemu-kvm
    last seen2020-06-01
    modified2020-06-02
    plugin id44427
    published2010-02-10
    reporterThis script is Copyright (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.
    sourcehttps://www.tenable.com/plugins/nessus/44427
    titleCentOS 5 : kvm (CESA-2010:0088)
    code
    #%NASL_MIN_LEVEL 80502
    #
    # (C) Tenable Network Security, Inc.
    #
    # The descriptive text and package checks in this plugin were  
    # extracted from Red Hat Security Advisory RHSA-2010:0088 and 
    # CentOS Errata and Security Advisory 2010:0088 respectively.
    #
    
    include("compat.inc");
    
    if (description)
    {
      script_id(44427);
      script_version("1.22");
      script_cvs_date("Date: 2019/10/25 13:36:05");
    
      script_cve_id("CVE-2010-0297", "CVE-2010-0298", "CVE-2010-0306", "CVE-2010-0309");
      script_xref(name:"RHSA", value:"2010:0088");
    
      script_name(english:"CentOS 5 : kvm (CESA-2010:0088)");
      script_summary(english:"Checks rpm output for the updated packages");
    
      script_set_attribute(
        attribute:"synopsis", 
        value:"The remote CentOS host is missing one or more security updates."
      );
      script_set_attribute(
        attribute:"description", 
        value:
    "Updated kvm packages that fix multiple security issues and several
    bugs are now available for Red Hat Enterprise Linux 5.
    
    This update has been rated as having important security impact by the
    Red Hat Security Response Team.
    
    KVM (Kernel-based Virtual Machine) is a full virtualization solution
    for Linux on AMD64 and Intel 64 systems. KVM is a Linux kernel module
    built for the standard Red Hat Enterprise Linux kernel.
    
    The x86 emulator implementation was missing a check for the Current
    Privilege Level (CPL) and I/O Privilege Level (IOPL). A user in a
    guest could leverage these flaws to cause a denial of service (guest
    crash) or possibly escalate their privileges within that guest.
    (CVE-2010-0298, CVE-2010-0306)
    
    A flaw was found in the Programmable Interval Timer (PIT) emulation.
    Access to the internal data structure pit_state, which represents the
    data state of the emulated PIT, was not properly validated in the
    pit_ioport_read() function. A privileged guest user could use this
    flaw to crash the host. (CVE-2010-0309)
    
    A flaw was found in the USB passthrough handling code. A specially
    crafted USB packet sent from inside a guest could be used to trigger a
    buffer overflow in the usb_host_handle_control() function, which runs
    under the QEMU-KVM context on the host. A user in a guest could
    leverage this flaw to cause a denial of service (guest hang or crash)
    or possibly escalate their privileges within the host. (CVE-2010-0297)
    
    This update also fixes the following bugs :
    
    * pvclock MSR values were not preserved during remote migration,
    causing time drift for guests. (BZ#537028)
    
    * SMBIOS table 4 data is now generated for Windows guests. (BZ#545874)
    
    * if the qemu-kvm '-net user' option was used, unattended Windows XP
    installations did not receive an IP address after reboot. (BZ#546562)
    
    * when being restored from migration, a race condition caused Windows
    Server 2008 R2 guests to hang during shutdown. (BZ#546563)
    
    * the kernel symbol checking on the kvm-kmod build process has a
    safety check for ABI changes. (BZ#547293)
    
    * on hosts without high-res timers, Windows Server 2003 guests
    experienced significant time drift. (BZ#547625)
    
    * in some situations, installing Windows Server 2008 R2 from an ISO
    image resulted in a blue screen 'BAD_POOL_HEADER' stop error.
    (BZ#548368)
    
    * a bug in the grow_refcount_table() error handling caused infinite
    recursion in some cases. This caused the qemu-kvm process to hang and
    eventually crash. (BZ#552159)
    
    * for Windows Server 2003 R2, Service Pack 2, 32-bit guests, an
    'unhandled vm exit' error could occur during reboot on some systems.
    (BZ#552518)
    
    * for Windows guests, QEMU could attempt to stop a stopped audio
    device, resulting in a 'snd_playback_stop: ASSERT
    playback_channel->base.active failed' error. (BZ#552519)
    
    * the Hypercall driver did not reset the device on power-down.
    (BZ#552528)
    
    * mechanisms have been added to make older savevm versions to be
    emitted in some cases. (BZ#552529)
    
    * an error in the Makefile prevented users from using the source RPM
    to install KVM. (BZ#552530)
    
    * guests became unresponsive and could use up to 100% CPU when running
    certain benchmark tests with more than 7 guests running
    simultaneously. (BZ#553249)
    
    * QEMU could terminate randomly with virtio-net and SMP enabled.
    (BZ#561022)
    
    All KVM users should upgrade to these updated packages, which contain
    backported patches to resolve these issues. Note: The procedure in the
    Solution section must be performed before this update will take
    effect."
      );
      # https://lists.centos.org/pipermail/centos-announce/2010-February/016494.html
      script_set_attribute(
        attribute:"see_also",
        value:"http://www.nessus.org/u?73c1b030"
      );
      script_set_attribute(attribute:"solution", value:"Update the affected kvm packages.");
      script_set_cvss_base_vector("CVSS2#AV:L/AC:L/Au:N/C:C/I:C/A:C");
      script_cwe_id(16, 119, 264);
    
      script_set_attribute(attribute:"plugin_type", value:"local");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:centos:centos:kmod-kvm");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:centos:centos:kvm");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:centos:centos:kvm-qemu-img");
      script_set_attribute(attribute:"cpe", value:"p-cpe:/a:centos:centos:kvm-tools");
      script_set_attribute(attribute:"cpe", value:"cpe:/o:centos:centos:5");
    
      script_set_attribute(attribute:"vuln_publication_date", value:"2010/02/12");
      script_set_attribute(attribute:"patch_publication_date", value:"2010/02/09");
      script_set_attribute(attribute:"plugin_publication_date", value:"2010/02/10");
      script_set_attribute(attribute:"generated_plugin", value:"current");
      script_end_attributes();
    
      script_category(ACT_GATHER_INFO);
      script_copyright(english:"This script is Copyright (C) 2010-2019 and is owned by Tenable, Inc. or an Affiliate thereof.");
      script_family(english:"CentOS Local Security Checks");
    
      script_dependencies("ssh_get_info.nasl");
      script_require_keys("Host/local_checks_enabled", "Host/CentOS/release", "Host/CentOS/rpm-list");
    
      exit(0);
    }
    
    
    include("audit.inc");
    include("global_settings.inc");
    include("rpm.inc");
    
    
    if (!get_kb_item("Host/local_checks_enabled")) audit(AUDIT_LOCAL_CHECKS_NOT_ENABLED);
    release = get_kb_item("Host/CentOS/release");
    if (isnull(release) || "CentOS" >!< release) audit(AUDIT_OS_NOT, "CentOS");
    os_ver = pregmatch(pattern: "CentOS(?: Linux)? release ([0-9]+)", string:release);
    if (isnull(os_ver)) audit(AUDIT_UNKNOWN_APP_VER, "CentOS");
    os_ver = os_ver[1];
    if (! preg(pattern:"^5([^0-9]|$)", string:os_ver)) audit(AUDIT_OS_NOT, "CentOS 5.x", "CentOS " + os_ver);
    
    if (!get_kb_item("Host/CentOS/rpm-list")) audit(AUDIT_PACKAGE_LIST_MISSING);
    
    
    cpu = get_kb_item("Host/cpu");
    if (isnull(cpu)) audit(AUDIT_UNKNOWN_ARCH);
    if ("x86_64" >!< cpu && cpu !~ "^i[3-6]86$") audit(AUDIT_LOCAL_CHECKS_NOT_IMPLEMENTED, "CentOS", cpu);
    
    
    flag = 0;
    if (rpm_check(release:"CentOS-5", cpu:"x86_64", reference:"kmod-kvm-83-105.el5_4.22")) flag++;
    if (rpm_check(release:"CentOS-5", cpu:"x86_64", reference:"kvm-83-105.el5_4.22")) flag++;
    if (rpm_check(release:"CentOS-5", cpu:"x86_64", reference:"kvm-qemu-img-83-105.el5_4.22")) flag++;
    if (rpm_check(release:"CentOS-5", cpu:"x86_64", reference:"kvm-tools-83-105.el5_4.22")) flag++;
    
    
    if (flag)
    {
      security_report_v4(
        port       : 0,
        severity   : SECURITY_HOLE,
        extra      : rpm_report_get()
      );
      exit(0);
    }
    else
    {
      tested = pkg_tests_get();
      if (tested) audit(AUDIT_PACKAGE_NOT_AFFECTED, tested);
      else audit(AUDIT_PACKAGE_NOT_INSTALLED, "kmod-kvm / kvm / kvm-qemu-img / kvm-tools");
    }
    

Oval

accepted2013-04-29T04:11:29.534-04:00
classvulnerability
contributors
  • nameAharon Chernin
    organizationSCAP.com, LLC
  • nameDragos Prisaca
    organizationG2, Inc.
definition_extensions
  • commentThe operating system installed on the system is Red Hat Enterprise Linux 5
    ovaloval:org.mitre.oval:def:11414
  • commentThe operating system installed on the system is CentOS Linux 5.x
    ovaloval:org.mitre.oval:def:15802
  • commentOracle Linux 5.x
    ovaloval:org.mitre.oval:def:15459
descriptionThe pit_ioport_read function in the Programmable Interval Timer (PIT) emulation in i8254.c in KVM 83 does not properly use the pit_state data structure, which allows guest OS users to cause a denial of service (host OS crash or hang) by attempting to read the /dev/port file.
familyunix
idoval:org.mitre.oval:def:11095
statusaccepted
submitted2010-07-09T03:56:16-04:00
titleThe pit_ioport_read function in the Programmable Interval Timer (PIT) emulation in i8254.c in KVM 83 does not properly use the pit_state data structure, which allows guest OS users to cause a denial of service (host OS crash or hang) by attempting to read the /dev/port file.
version18

Redhat

advisories
  • bugzilla
    id561022
    titleQEMU terminates without warning with virtio-net and SMP enabled
    oval
    OR
    • commentRed Hat Enterprise Linux must be installed
      ovaloval:com.redhat.rhba:tst:20070304026
    • AND
      • commentRed Hat Enterprise Linux 5 is installed
        ovaloval:com.redhat.rhba:tst:20070331005
      • OR
        • AND
          • commentkvm-tools is earlier than 0:83-105.el5_4.22
            ovaloval:com.redhat.rhsa:tst:20100088001
          • commentkvm-tools is signed with Red Hat redhatrelease key
            ovaloval:com.redhat.rhsa:tst:20091465002
        • AND
          • commentkvm-qemu-img is earlier than 0:83-105.el5_4.22
            ovaloval:com.redhat.rhsa:tst:20100088003
          • commentkvm-qemu-img is signed with Red Hat redhatrelease key
            ovaloval:com.redhat.rhsa:tst:20091465008
        • AND
          • commentkvm is earlier than 0:83-105.el5_4.22
            ovaloval:com.redhat.rhsa:tst:20100088005
          • commentkvm is signed with Red Hat redhatrelease key
            ovaloval:com.redhat.rhsa:tst:20091465006
        • AND
          • commentkmod-kvm is earlier than 0:83-105.el5_4.22
            ovaloval:com.redhat.rhsa:tst:20100088007
          • commentkmod-kvm is signed with Red Hat redhatrelease key
            ovaloval:com.redhat.rhsa:tst:20091465004
    rhsa
    idRHSA-2010:0088
    released2010-02-09
    severityImportant
    titleRHSA-2010:0088: kvm security and bug fix update (Important)
  • rhsa
    idRHSA-2010:0095
rpms
  • kmod-kvm-0:83-105.el5_4.22
  • kvm-0:83-105.el5_4.22
  • kvm-debuginfo-0:83-105.el5_4.22
  • kvm-qemu-img-0:83-105.el5_4.22
  • kvm-tools-0:83-105.el5_4.22
  • rhev-hypervisor-0:5.4-2.1.8.el5_4rhev2_1
  • rhev-hypervisor-pxe-0:5.4-2.1.8.el5_4rhev2_1

Seebug

bulletinFamilyexploit
descriptionBUGTRAQ ID: 38038 CVE ID: CVE-2010-0309 Linux Kernel是开放源码操作系统Linux所使用的内核。 在guest上执行cat /dev/port命令的时候,host会立即挂起。问题的起因是pit_state-&gt;channels[]有三个元素,pit_ioport_read使用了addr作为pit_get_count的索引,因此inb(0x43)可能读写kvm_kpit_state 的其他数据。 Linux kernel 2.6.x 厂商补丁: Linux ----- 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载: http://www.kernel.org/
idSSV:19060
last seen2017-11-19
modified2010-02-04
published2010-02-04
reporterRoot
titleLinux Kernel KVM pit_ioport_read()本地拒绝服务漏洞