CentOS7 Sudo本地提權漏洞修復實踐

點擊上方"walkingcloud"關注,並選擇"星標"公衆號html

更多技術乾貨,第一時間送達web

CentOS7 Sudo本地提權漏洞修復shell

Sudo本地提權漏洞漏洞概述

最近國外研究團隊披露出sudo堆溢出漏洞,漏洞編號:CVE-2021-3156,普通用戶能夠經過利用此漏洞,在默認配置的 sudo 主機上獲取root權限。安全

  • 漏洞詳情

Sudo是一個功能強大的實用程序,大多數基於Unix和Linux的操做系統都包含Sudo。它容許用戶使用其餘用戶的安全特權運行程序。微信

該漏洞已經隱藏了將近十年。它於2011年7月引入(commit:8255ed69),從1.8.2到1.8.31p2的全部舊版本以及從1.9.0到1.9.5p1的全部穩定版本的默認配置均受影響。app

成功利用此漏洞,普通用戶均可以在易受攻擊的主機上得到 root 特權 編輯器

2021年1月26日,Sudo發佈安全通告,修復了一個類Unix操做系統在命令參數中轉義反斜槓時存在基於堆的緩衝區溢出漏洞。url

當sudo經過-s或-i命令行選項在shell模式下運行命令時,它將在命令參數中使用反斜槓轉義特殊字符。但使用-s或 -i標誌運行sudoedit時,實際上並未進行轉義,從而可能致使緩衝區溢出。spa

只要存在sudoers文件(一般是/etc/sudoers),攻擊者就可使用本地普通用戶利用sudo得到系統root權限。操作系統

  • 風險等級:高風險

  • 漏洞風險: 攻擊者可利用該漏洞提高權限且poc已公開

  • 影響版本

Sudo 1.9.0 到 1.9.5p1 全部穩定版(默認配置)

Sudo 1.8.2 到 1.8.31p2 全部舊版本(默認配置)

  • 安全版本:Sudo 1.9.5p2或更新版本

漏洞檢測方法

一、以非root帳戶登陸系統運行以下命令:

sudoedit -s /

若返回如圖以「 sudoedit:」開頭的錯誤,則當前系統可能存在安全風險。

不受影響的系統將顯示以「 usage:」開頭的錯誤響應。

(圖片可放大查看)

1)若受影響,錯誤信息會出現以下提示

sudoedit: /: not a regular file

2)若已安裝修復補丁,錯誤信息則是

usage: sudoedit [-AknS] [-r role] [-t type] [-C num] [-g group] [-h host] [-p

                prompt] [-T timeout] [-u user] file ...

修復建議

目前Redhat等Linux廠商已經緊急發佈修復補丁,涉及各個版本系統,建議儘快升級相關補丁。CentOS 系統用戶:

1)CentOS 6:默認 sudo 在受影響範圍,CentOS官方已中止更新。

2)CentOS 7:升級到 sudo-1.8.23-10.el7_9.1 或更高版本

木有也有不升級的處理方法,但太麻煩,建議直接升級sudo解決

(圖片可放大查看)

CentOS7修復該漏洞的步驟實踐

一、yum在線升級sudo

yum makecache fast
yum search sudo
yum install sudo

(圖片可放大查看)

(圖片可放大查看)

能夠在yum源站點update倉庫裏看到1/26號剛更新了這個sudo版本

(圖片可放大查看)

二、驗證sudo版本及再次進行檢測 這時其它sudo用戶再使用

sudo -V
sudoedit -s /

(圖片可放大查看)

能夠看到顯示的是usage:開頭的內容,說明漏洞已經修復

三、使用以下命令能夠看到sudo的rpm包的更新記錄說明 能夠看到已經修復了該CVE-2021-3156漏洞

rpm -q --changelog sudo | head

(圖片可放大查看)

漏洞細節能夠參考以下連接:

https://www.sudo.ws/alerts/unescape_overflow.html

https://access.redhat.com/security/vulnerabilities/RHSB-2021-002

本文分享自微信公衆號 - WalkingCloud(WalkingCloud2018)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索