一般來說獲取系統(tǒng)Root權(quán)限是很困難的,尤其是加密系統(tǒng)中,但西班牙安全研究員Hector Marco、Ismael Ripoll發(fā)現(xiàn),Linux系統(tǒng)下只需按住回車鍵70秒鐘,就能輕松繞過系統(tǒng)認(rèn)證,拿到Root權(quán)限,進(jìn)而遠(yuǎn)程控制經(jīng)過加密的Linux系統(tǒng)。
這個問題來自Linux標(biāo)準(zhǔn)磁盤加密程序Cryptsetup的一個漏洞(CVE-2016-4484),它處理密碼輸入錯誤的時候,會允許用戶多次重試輸入,直到錯誤超過93次,程序就會給用戶一個帶Root權(quán)限的shell(busybox)。
也就是說,如果你重復(fù)93次輸錯密碼,或者持續(xù)按回車鍵大概70秒,就能夠獲得root initramfs (initial RAM filesystem) shell。
之后,你就可以復(fù)制、修改或者破壞整個硬盤,也可以使用網(wǎng)絡(luò)傳輸數(shù)據(jù)。加密磁盤內(nèi)容不會泄露,但是攻擊者可以提升權(quán)限、盜取信息、發(fā)起DoS攻擊等等。
關(guān)鍵是,這個漏洞攻擊的成功率非常高,因?yàn)樗灰蕾囂囟ㄏ到y(tǒng)或者配置。在圖書館、ATM機(jī)、機(jī)場、實(shí)驗(yàn)室等場景下,它特別有用,因?yàn)樵谶@些場景下開機(jī)的過程受到加密保護(hù),而對外交互只有鍵盤/鼠標(biāo)。
如果你使用了基于Linux的云服務(wù),還可以在沒有物理接觸的情況下遠(yuǎn)程處罰漏洞。
這個漏洞影響范圍很廣,覆蓋幾乎所有的Linux發(fā)行版,包括Debian、Ubuntu、Fedora、Red Hat Enterprise Linux (RHEL)、SUSE,免疫的則有Arch Linux、Solus。
如果你的系統(tǒng)存在此漏洞,官方還沒有發(fā)布補(bǔ)丁,可以自行修改cryptroot文件:
# sed -i 's/GRUB_CMDLINE_LINUX_DEFAULT="/GRUB_CMDLINE_LINUX_DEFAULT="panic=5 /' /etc/default/grub
# grub-install