Oracle Linux 7:核心 (ELSA-2017-1842)

high Nessus Plugin ID 102281

Synopsis

遠端 Oracle Linux 主機缺少一個或多個安全性更新。

描述

遠端 Oracle Linux 7 主機中安裝的套件受到 ELSA-2017-1842 公告中提及的多個弱點影響。

在 3.17 版及其之前版本的 Linux 核心中,fs/namespace.c 的 do_umount 函式不會要求使用 do_remount_sb 呼叫 (將 root 檔案系統變成唯讀) 的 CAP_SYS_ADMIN 功能,進而允許本機使用者藉由進行特定的不共用系統呼叫、清除 / MNT_LOCKED 旗標,以及進行 MNT_FORCE 缷載系統呼叫,引致拒絕服務 (缺少寫入功能)。(CVE-2014-7975)

在 4.8.2 及之前版本的 Linux 核心中,當啟用 GNU 編譯器集合 (gcc) 堆疊保護器時,security/keys/proc.c 的 proc_keys_show 函式會針對特定逾時資料使用錯誤的緩衝區大小,進而允許本機使用者造成透過讀取 /proc/keys 檔案引致拒絕服務 (堆疊記憶體損毀和不穩定)。(CVE-2016-7042)

在 4.6.3 之前的 Linux 核心中,net/netlink/af_netlink.c 的 netlink_dump 函式存在爭用情形,其允許本機使用者透過特製的應用程式發出 sendmsg 系統呼叫,藉此引致拒絕服務 (重複釋放)或可能造成其他不明影響,最終導致與比預期更早開始的新轉儲存相關的釋放作業。(CVE-2016-9806)

在 4.8.14 之前的 Linux 核心中,block/blk-map.c 所用的 blk_rq_map_user_iov 函式未正確限制迭代器類型,這可讓本機攻擊者利用對 /dev/sg 裝置的存取來讀取或寫入任意核心記憶體位置,或引致拒絕服務 (釋放後使用)。
(CVE-2016-9576)

在 4.9 及之前版本的 Linux 核心中,sg 實作在設定 KERNEL_DS 選項的情況下,未正確限制寫入作業,進而允許本機使用者讀取或寫入任意核心記憶體位置,或透過利用對 /dev/sg 裝置的存取,引致拒絕服務 (釋放後使用),這與 block/bsg.c 和 drivers/scsi/sg.c 有關。注意:此弱點是 CVE-2016-9576 的修正不完整所致。(CVE-2016-10088)

在 Linux 核心 4.8.2 及之前的所有版本中,檔案系統實作會在 setxattr 呼叫時保留 setgid 位元,本機使用者可充分利用既有的 setgid 程式和執行權限限制獲得群組權限。(CVE-2016-7097)

在 4.10.4 及之前版本的 Linux 核心中,drivers/scsi/sg.c 的 sg_ioctl 函式可讓本機使用者透過 SG_NEXT_CMD_LEN ioctl 呼叫中的大型命令大小,引致拒絕服務 (堆疊型緩衝區溢位) 或可能造成其他不明影響,進而導致 sg_write 函式中的超出邊界寫入存取。(CVE-2017-7187)

在 4.8.15 版之前的 Linux 核心中,crypto/mcryptd.c 允許本機使用者使用具有不相容演算法的 AF_ALG 通訊端,引致拒絕服務 (NULL 指標解除參照和系統當機),mcryptd (md5)即為一例。(CVE-2016-10147)

在 4.9 版及其之前版本的 Linux 核心中,arch / x86 / kvm / vmx.c 不會正確管理 #BP 和 #OF 例外狀況,其允許來賓 OS 使用者拒絕處理 L2 來賓擲回的例外狀況,進而引致拒絕服務 (來賓 OS 當機)。(CVE-2016-9588)

在 4.9.8 之前的 Linux 核心中,arch/x86/kvm/vmx.c 的 nested_vmx_check_vmptr 函式未正確模擬 VMXON 指令,進而允許 KVM L1 來賓 OS 使用者利用不當處理頁面參照,引致拒絕服務 (主機 OS 記憶體消耗)。 (CVE-2017-2596)

在 4.8.10 版之前的 Linux 核心中,TCP 堆疊未正確處理 skb 截斷,進而允許本機使用者透過特製的應用程式發出 sendto 系統呼叫,進而引致拒絕服務 (系統當機);此問題與 net/ipv4/tcp_ipv4.c 和 net/ipv6/tcp_ipv6.c 相關。(CVE-2016-8645)

在 4.9.9 之前的 Linux 核心中,net/ipv4/ip_sockglue.c 所用的 ipv4_pktinfo_prepare 函式允許攻擊者透過 (1) 進行特製系統呼叫的應用程式,也可能透過 (2) IP 選項無效的 IPv4 傳輸,造成拒絕服務 (系統當機)。(CVE-2017-5970)

在 4.9.7 版之前的 Linux 核心中,kernel/events/core.c 內有爭用情形,本機使用者因而得以透過特製的應用程式獲得權限,此特製應用程式會發出同步的 perf_event_open 系統呼叫,將軟體群組移入硬體內容中。注意:此弱點是 CVE-2016-6786 的修正不完整所致。(CVE-2017-6001)

在 3.18 版之前的 Linux 核心中,KEYS 子系統允許本機使用者透過涉及特定比對欄位 NULL 值的向量,取得權限或引致拒絕服務 (NULL 指標解除參照和系統當機);此問題與 keyring.c 中的 keyring_search_iterator 函式相關。(CVE-2017-2647)

在 4.10.15 版及之前版本的 Linux 核心中,net/ipv4/inet_connection_sock.c 中,inet_csk_clone_lock 函式可讓攻擊者透過利用接受系統呼叫,造成拒絕服務 (雙重釋放),或可能造成其他不明影響。(CVE-2017-8890)

在 4.11.1 之前的 Linux 核心中,net/ipv6/tcp_ipv6.c 所用的 tcp_v6_syn_recv_sock 函式未正確處理繼承,進而允許本機使用者透過特製的系統呼叫,造成拒絕服務,也可能造成其他不明影響,此問題與 CVE-2017-8890 相關。(CVE-2017-9077)

在 3.17 版及之前版本的 Linux 核心中,fs/namespace.c 中的 pivot_root 實作並未與 chroot 目錄的某些位置正確互動,這會允許本機使用者透過 pivot_root 系統呼叫的兩個引數中的 .(dot) 值,造成拒絕服務 (掛載樹狀結構迴圈)。
(CVE-2014-7970)

在 4.4.2 之前的 Linux 核心中,crypto / algif_skcipher.c並未在處理接受系統呼叫之前驗證在AF_ALG通訊端上已執行setkey作業,進而允許本機使用者引致拒絕服務 (NULL指標解除參照和系統當機),透過不提供金鑰的特製應用程式,與crypto / lrw.c中的lrw_crypt函式相關。(CVE-2015-8970)

在 4.8.14 之前的 Linux 核心中,L2TPv3 IP Encapsulation 函式出現爭用情形,允許本機使用者藉由多次發出繫結系統呼叫卻未確實查證通訊端的狀態是否為 SOCK_ZAPPED 而獲得權限或造成拒絕服務 (釋放後使用),此問題與 net/l2tp/l2tp_ip.c 和 net/l2tp/l2tp_ip6.c 有關。(CVE-2016-10200)

在 4.9 之前的 Linux 核心中,fs/namespace.c 不會限制掛載命名空間中可能存在的掛載數量,其允許本機使用者透過MS_BIND掛載系統呼叫,引致拒絕服務 (記憶體消耗和鎖死),如所示會觸發掛載數量呈指數增長的迴圈。(CVE-2016-6213)

據發現,root 可取得直接存取內部 keyring 的權限,如 RHEL-7 或「.builtin_trusted_keys」上游中的「dns_resolver」,方法是將之作為其工作階段 keyring 加入。root 可藉此將自有 devising 的新公開金鑰新增到 keyring 中,進而繞過模組簽名驗證。(CVE-2016-9604)

在 4.10.8 及之前版本的 Linux 核心中,net/ipv4/ping.c 的 ping_unhash 函式取得特定鎖定為時已晚,因而無法確保中斷連線函式呼叫的安全,進而允許本機使用者利用通訊端系統呼叫中 IPPROTO_ICMP 的通訊協定值存取權,引致拒絕服務 (錯誤)。(CVE-2017-2671)

在 3.14.79 及之前版本的 Linux 核心中,security/keys/keyring.c 的 keyring_search_aux 函式允許本機使用者透過對無作用類型的 request_key 系統呼叫,引致拒絕服務 (NULL 指標解除參照和 OOPS)。(CVE-2017-6951)

在 4.10.9 及之前版本的 Linux 核心中,「mm/mempolicy.c」的 set_mempolicy 和 mbind compat syscalls 中,不正確的錯誤處理允許本機使用者透過觸發特定點陣圖作業失敗,從未初始化的堆疊資料取得敏感資訊。(CVE-2017-7616)

在 3.2 之前的 Linux 核心中,mm 子系統未正確強制執行 CONFIG_STRICT_DEVMEM 保護機制,因而允許本機使用者透過開啟 /dev/mem 檔案 (與 arch/x86/mm/init.c 和 drivers/char/mem.c 有關) 的應用程式來讀取或寫入第一個位元組的核心記憶體位置 (且繞過 slab 配置存取限制)。(CVE-2017-7889)

在 4.11.1 之前的 Linux 核心中,IPv6 片段實作未考慮到 nexthdr 欄位可能與無效的選項關聯,因此允許本機使用者造成拒絕服務 (超出邊界讀取和錯誤) 或可能透過特製的通訊端和傳送系統呼叫,產生其他不明影響。(CVE-2017-9074)

在 4.11.1 之前的 Linux 核心中,net/dccp/ipv6.c 所用的 dccp_v6_request_recv_sock 函式未正確處理繼承,進而允許本機使用者透過特製的系統呼叫,造成拒絕服務,或可能造成其他不明影響,這是與 CVE-2017-8890 相關的問題。(CVE-2017-9076)

在 4.11.3 及之前版本的 Linux 核心中,net/ipv6/ip6_output.c 的 __ip6_append_data 函式過晚檢查是否要覆寫 skb 資料結構,進而允許本機使用者透過特製的系統呼叫,造成拒絕服務 (系統當機)。(CVE-2017-9242)

在 4.5 之前的 Linux 核心中,ext4 檔案系統實作有多個爭用情形,其允許本機使用者透過處理未同步打洞與頁面錯誤之後寫入與不同使用者檔案相關聯的頁面,造成拒絕服務 (磁碟損毀)。(CVE-2015-8839)

在 4.5.1 之前的 Linux 核心中,fs/xfs/xfs_attr_list.c 的錯誤路徑有多個記憶體洩漏,允許本機使用者透過特製的 XFS 檔案系統作業,引致拒絕服務 (記憶體消耗)。
(CVE-2016-9685)

遠端攻擊者在 UDP 封包中處理 NFSv4 pNFS GETDEVICEINFO 或 LAYOUTGET 運算元時,4.11.3 版之前的 Linux 核心中的 NFSv4 伺服器不會正確驗證配置類型。此類型值在遇到特定錯誤情形時不會初始化。此值會作為解除參照的陣列索引使用,進而導致 OOPS,最終導致 knfsd 發生 DoS 以及整個系統軟鎖定。(CVE-2017-8797)

在 4.11.1 之前的 Linux 核心中,net/sctp/ipv6.c 所用的 sctp_v6_create_accept_sk 函式未正確處理繼承,進而允許本機使用者透過特製的系統呼叫,造成拒絕服務,或可能造成其他不明影響,這是與 CVE-2017-8890 相關的問題。(CVE-2017-9075)

請注意,Nessus 並未測試此問題,而是僅依據應用程式自我報告的版本號碼。

解決方案

更新受影響的套件。

另請參閱

https://linux.oracle.com/errata/ELSA-2017-1842.html

Plugin 詳細資訊

嚴重性: High

ID: 102281

檔案名稱: oraclelinux_ELSA-2017-1842.nasl

版本: 3.16

類型: local

代理程式: unix

已發布: 2017/8/9

已更新: 2021/9/8

支持的傳感器: Frictionless Assessment Agent, Nessus Agent

風險資訊

CVSS 評分資料來源: CVE-2017-6001

VPR

風險因素: High

分數: 8.4

CVSS v2

風險因素: High

基本分數: 7.8

時間分數: 6.1

媒介: AV:N/AC:L/Au:N/C:N/I:N/A:C

時間媒介: E:POC/RL:OF/RC:C

CVSS v3

風險因素: High

基本分數: 7.8

時間分數: 7

媒介: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

時間媒介: E:P/RL:O/RC:C

弱點資訊

CPE: cpe:/o:oracle:linux:7, p-cpe:/a:oracle:linux:kernel, p-cpe:/a:oracle:linux:kernel-abi-whitelists, p-cpe:/a:oracle:linux:kernel-debug, p-cpe:/a:oracle:linux:kernel-debug-devel, p-cpe:/a:oracle:linux:kernel-devel, p-cpe:/a:oracle:linux:kernel-headers, p-cpe:/a:oracle:linux:kernel-tools, p-cpe:/a:oracle:linux:kernel-tools-libs, p-cpe:/a:oracle:linux:kernel-tools-libs-devel, p-cpe:/a:oracle:linux:perf, p-cpe:/a:oracle:linux:python-perf

必要的 KB 項目: Host/OracleLinux, Host/RedHat/release, Host/RedHat/rpm-list, Host/local_checks_enabled

可被惡意程式利用: true

可輕鬆利用: Exploits are available

修補程式發佈日期: 2017/8/7

弱點發布日期: 2014/10/8

參考資訊

CVE: CVE-2014-7970, CVE-2014-7975, CVE-2015-8839, CVE-2015-8970, CVE-2016-6213, CVE-2016-7042, CVE-2016-7097, CVE-2016-8645, CVE-2016-9576, CVE-2016-9588, CVE-2016-9604, CVE-2016-9685, CVE-2016-9806, CVE-2016-10088, CVE-2016-10147, CVE-2016-10200, CVE-2016-10741, CVE-2017-2584, CVE-2017-2596, CVE-2017-2647, CVE-2017-2671, CVE-2017-5551, CVE-2017-5970, CVE-2017-6001, CVE-2017-6951, CVE-2017-7187, CVE-2017-7495, CVE-2017-7616, CVE-2017-7889, CVE-2017-8797, CVE-2017-8890, CVE-2017-9074, CVE-2017-9075, CVE-2017-9076, CVE-2017-9077, CVE-2017-9242, CVE-2017-1000379

RHSA: 2017:1842