OracleVM 3.4:Unbreakable / 等 (OVMSA-2018-0008) (Meltdown) (Spectre)

medium Nessus 插件 ID 105762

简介

远程 OracleVM 主机缺少一个或多个安全更新。

描述

远程 OracleVM 系统缺少解决关键安全更新的必要补丁:

- x86/ia32:保存并清除 syscall 上的寄存器。(Jamie Iles) [Orabug:27355759] (CVE-2017-5754)

- x86/IBRS:保存 MSR_IA32_SPEC_CTRL 的当前状态 (Boris Ostrovsky)

- pti:将 X86_FEATURE_KAISER 重命名为 X86_FEATURE_PTI (Pavel Tatashin) [Orabug:27352353] (CVE-2017-5754)

- usb/core:usb_alloc_dev:修复 ->portnum 设置 (Nicolai Stange)

- x86/spec_ctrl:添加缺失的 IBRS_DISABLE (Konrad Rzeszutek Wilk)

- 持续利用 ibrs_inuse。(Jun Nakajima)

- x86/kvm:如果来宾机禁用 IBRS,则在 VMEXIT 上设置 IBRS。
(Konrad Rzeszutek Wilk)

- 重新引入 r12-15、rbp、rbx 清理 (Kris Van Hees) [Orabug:27352353] (CVE-2017-5754)

- x86:更多 ibrs/pti 补丁 (Pavel Tatashin) [Orabug:
27352353] (CVE-2017-5754)

- x86/spec:为 ENABLE_IBRS 上的 in_use 进行实际检查 (Konrad Rzeszutek Wilk) (CVE-2017-5715)

- kvm:svm:公开 CPUID.0x80000008 ebx 标志。(Konrad Rzeszutek Wilk) (CVE-2017-5715)

- x86/spec_ctrl:提供 sysfs 版本的 ibrs_enabled (Konrad Rzeszutek Wilk) (CVE-2017-5715)

- x86:针对 FEATURE_ENABLE_IBRS 和 0 使用更好的 #define (Konrad Rzeszutek Wilk) (CVE-2017-5715)

- x86:使用 #defines 代替 0x2、0x4 和 0x1。(Konrad Rzeszutek Wilk) (CVE-2017-5715)

- kpti:在 Xen PV 下运行时禁用 (Konrad Rzeszutek Wilk) [Orabug:27352353] (CVE-2017-5754)

- x86:我们仍在用户 cr3 上运行时,请勿在 nmi 上进行 ENABLE_IBRS (Konrad Rzeszutek Wilk) (CVE-2017-5715)

- x86/enter:在系统调用和中断时使用 IBRS - 修复 ia32 路径 (Konrad Rzeszutek Wilk) (CVE-2017-5715)

- x86:修复 spectre/kpti 集成 (Konrad Rzeszutek Wilk) [Orabug:27352353] (CVE-2017-5754)

- PTI:未中断的 EFI old_memmap (Jiri Kosina) [Orabug:
27352353] (CVE-2017-5754)

- KAISER KABI 调整。(Martin K. Petersen) [Orabug:
27352353] (CVE-2017-5754)

- x86/ldt:修复 ldt 释放中的崩溃。(Jamie Iles) [Orabug:
27352353] (CVE-2017-5754)

- x86/entry:定义 64 位代码的“cpu_current_top_of_stack”(Denys Vlasenko) [Orabug:27352353] (CVE-2017-5754)

- x86/entry:删除未使用的“kernel_stack”per-cpu 变量 (Denys Vlasenko) [Orabug:27352353] (CVE-2017-5754)

- x86/entry:停止使用 PER_CPU_VAR (kernel_stack) (Denys Vlasenko) [Orabug:27352353] (CVE-2017-5754)

- kaiser:仅在支持的情况下设置 _PAGE_NX (Guenter Roeck) [Orabug:27352353] (CVE-2017-5754)

- x86/vdso:从 vvar VMA 而不是 fixmap 获取 pvclock 数据 (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- KPTI:启用时报告 (Kees Cook) [Orabug:27352353] (CVE-2017-5754)

- KPTI:重命名为 PAGE_TABLE_ISOLATION (Kees Cook) [Orabug:27352353] (CVE-2017-5754)

- x86/kaiser:向上移动功能检测 (Borislav Petkov) [Orabug:27352353] (CVE-2017-5754)

- x86/kaiser:重新启用 PARAVIRT (Borislav Petkov) [Orabug:
27352353] (CVE-2017-5754)

- x86/paravirt:请勿修复 flush_tlb_single (Thomas Gleixner) [Orabug:27352353] (CVE-2017-5754)

- kaiser:kaiser_flush_tlb_on_return_to_user 检查 PCID (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:asm/tlbflush.h 处理较低级别的 noPGE (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:将 is_atomic arg 拖放到 kaiser_pagetable_walk (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:使用 ALTERNATIVE,而不是 x86_cr3_pcid_noflush (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- x86/kaiser:检查开机时长 cmdline 参数 (Borislav Petkov) [Orabug:27352353] (CVE-2017-5754)

- x86/kaiser:重命名并简化 X86_FEATURE_KAISER 处理 (Borislav Petkov) [Orabug:27352353] (CVE-2017-5754)

- kaiser:使用 ALTERNATIVE 添加“nokaiser”启动选项 (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:修复 alloc_ldt_struct() 中不可能的错误 (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:_pgd_alloc 没有可避免停止的 __GFP_REPEAT (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:paranoid_entry 将 cr3 需求传递至 paranoid_exit (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:x86_cr3_pcid_noflush 和 x86_cr3_pcid_user (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:用于内核的 PCID 0 和用于用户的 128 (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:load_new_mm_cr3 让 SWITCH_USER_CR3 刷新用户 (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:由内核和用户 PCID 增强 (Dave Hansen) [Orabug:27352353] (CVE-2017-5754)

- kaiser:vmstat 将 NR_KAISERTABLE 显示为 nr_overhead (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:删除 KAISER_REAL_SWITCH 选项 (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:命名 0x1000 KAISER_SHADOW_PGD_OFFSET (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:尝试黄金链接时进行清理 (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:kaiser_remove_mapping 沿着 pgd 移动 (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:稍微整理 kaiser_add/remove_mapping (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:稍微整理 asm/kaiser.h (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:如果 kaiser_pagetable_walk() 为空,则 ENOMEM (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:修复 perf 崩溃 (Hugh Dickins) [Orabug:
27352353] (CVE-2017-5754)

- kaiser:修复 do_nmi() ifndef CONFIG_KAISER 的寄存器 (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:KAISER 取决于 SMP (Hugh Dickins) [Orabug:
27352353] (CVE-2017-5754)

- kaiser:修复 alloc_ldt_struct() 中的构建和 FIXME (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:THREAD_SIZE-PAGE_SIZE 上的堆栈映射 PAGE_SIZE (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:请勿在 pgd_none 上设置 _PAGE_NX (Hugh Dickins) [Orabug:27352353] (CVE-2017-5754)

- kaiser:合并更新 (Dave Hansen) [Orabug:27352353] (CVE-2017-5754)

- KAISER:内核地址隔离 (Richard Fellner) [Orabug:27352353] (CVE-2017-5754)

- x86/boot:为带有参数的选项添加早期 cmdline 解析 (Tom Lendacky) [Orabug:27352353] (CVE-2017-5754)

- x86/mm/64:修复与 CR4.PCIDE 的重启交互 (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- x86/mm:在支持的系统上启用 CR4.PCIDE (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- x86/mm:添加“nopcid”启动选项以关闭 PCID (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- x86/mm:禁用 32 位内核上的 PCID (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- x86/mm:移除 UP asm/tlbflush.h 代码,请始终使用(以前)SMP 代码 (Andy Lutomirski) [Orabug:
27352353] (CVE-2017-5754)

- x86/mm:使用 flush_tlb_mm_range 重新实现 flush_tlb_page (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- x86/mm:使 flush_tlb_mm_range 更容易预测 (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- x86/mm:删除 flush_tlb 和 flush_tlb_current_task (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- x86/vm86/32:切换到 mark_screen_rdonly 中的 flush_tlb_mm_range (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- x86/irq:请勿从 irq_call_count 减去 irq_tlb_count (Aaron Lu) [Orabug:27352353] (CVE-2017-5754)

- sched/core:Idle_task_exit 不应使用 switch_mm_irqs_off (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- ARM:隐藏模块的 finish_arch_post_lock_switch (Steven Rostedt) [Orabug:27352353] (CVE-2017-5754)

- x86/mm、sched/core:关闭 switch_mm 中的 IRQ (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- x86/mm、sched/core:取消内联 switch_mm (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- x86/mm:构建 arch/x86/mm/tlb.c,即使在 !SMP 上 (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- sched/core:添加 switch_mm_irqs_off 并在调度程序中使用 (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- mm/mmu_context、sched/core:修复 mmu_context.h 假设 (Ingo Molnar) [Orabug:27352353] (CVE-2017-5754)

- x86/mm:如果 INVPCID 可用,请用其刷新全局映射 (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- x86/mm:添加“nopcid”启动选项以关闭 INVPCID (Andy Lutomirski) [Orabug:27352353] (CVE-2017-5754)

- x86/mm:修复 INVPCID asm 约束 (Borislav Petkov) [Orabug:27352353] (CVE-2017-5754)

- x86/mm:添加 INVPCID 帮助程序 (Andy Lutomirski) [Orabug:
27352353] (CVE-2017-5754)

解决方案

更新受影响的 kernel-uek/kernel-uek-firmware 程序包。

另见

http://www.nessus.org/u?d39633bb

插件详情

严重性: Medium

ID: 105762

文件名: oraclevm_OVMSA-2018-0008.nasl

版本: 3.7

类型: local

发布时间: 2018/1/12

最近更新时间: 2019/9/27

支持的传感器: Nessus

风险信息

VPR

风险因素: High

分数: 8.1

CVSS v2

风险因素: Medium

基本分数: 4.7

时间分数: 4.1

矢量: CVSS2#AV:L/AC:M/Au:N/C:C/I:N/A:N

CVSS v3

风险因素: Medium

基本分数: 5.6

时间分数: 5.4

矢量: CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:N/A:N

时间矢量: CVSS:3.0/E:H/RL:O/RC:C

漏洞信息

CPE: p-cpe:/a:oracle:vm:kernel-uek, p-cpe:/a:oracle:vm:kernel-uek-firmware, cpe:/o:oracle:vm_server:3.4

必需的 KB 项: Host/local_checks_enabled, Host/OracleVM/release, Host/OracleVM/rpm-list

可利用: true

易利用性: Exploits are available

补丁发布日期: 2018/1/11

漏洞发布日期: 2018/1/4

参考资料信息

CVE: CVE-2017-5715, CVE-2017-5754

IAVA: 2018-A-0019, 2018-A-0020