Sudo維護(hù)團(tuán)隊(duì)指出,從Sudo 1.7.1到1.8.25p1都包含一項(xiàng)可讓非特權(quán)用戶獲得root權(quán)限的漏洞(編號(hào)CVE-2019-18634),他們已在最新發(fā)布的1.8.31版本中完成修復(fù),同時(shí)提供了暫時(shí)緩解的方法。Sudo 1.7.1 于2009年4月19日發(fā)布,因此該漏洞已存在大約10年。
另外,1.8.26到1.8.30版本也發(fā)現(xiàn)存在CVE-2019-18634漏洞,但1.8.26版本發(fā)布時(shí)曾變更EOF(end of file)處理的設(shè)定,致使該漏洞無法被利用。
Sudo是UNIX和Linux操作系統(tǒng)廣泛使用的工具,它讓系統(tǒng)管理員給普通用戶分配合理的權(quán)限,以執(zhí)行一些只有管理員或其他特定帳號(hào)才能完成的任務(wù)。此次被發(fā)現(xiàn)的高危漏洞在啟用了 pwfeedback選項(xiàng)的系統(tǒng)中很容易被利用,根據(jù)漏洞的描述,pwfeedback功能讓系統(tǒng)能夠以'*'表示目前輸入的字符長(zhǎng)度,原意是一項(xiàng)提升安全性的功能,但安全研究員Joe Vennix發(fā)現(xiàn)系統(tǒng)啟用 pwfeedback功能后,用戶可能會(huì)觸發(fā)基于堆棧的緩沖區(qū)溢出bug,從而獲得root權(quán)限。
雖然在sudo的上游版本中默認(rèn)情況下未啟用pwfeedback,但某些下游發(fā)行版,例如Linux Mint和elementary OS在其默認(rèn)sudoers文件中啟用了它(Ubuntu不受影響)。
具有sudo特權(quán)的用戶可以通過運(yùn)行以下命令來檢查是否啟用了pwfeedback:
sudo -l
如果在"Matching Defaults entries"輸出中列出了pwfeedback,則sudoers配置將受到影響。如下所示的sudoers配置就很容易受到攻擊:
$ sudo -l
Matching Defaults entries for millert on linux-build:
insults, pwfeedback, mail_badpass, mailerpath=/usr/sbin/sendmail
User millert may run the following commands on linux-build:
(ALL : ALL) ALL
最后,建議受影響的系統(tǒng)盡快將sudo升級(jí)至最新版本 1.8.31。如果沒條件升級(jí)到新版本,在啟用了 pwfeedback的sudoer配置文件里,將「Defaults pwfeedback」改成「Defaults !pwfeedback」,也能有效阻止攻擊。