Linux曝高危漏洞 長按Enter鍵70秒即可獲取root許可權

近日, Linux系統被爆存在高危漏洞,攻擊者可以通過持續按下Enter鍵70秒來獲取 root initramfs shell,進而破壞Linux boxes。

該漏洞的編號為CVE-2016-4484,是由西班牙安全研究員赫克托馬爾·馬克發現的,他在去年還發現了GRUB2,只需要按住退格到用戶名字的28倍就可以繞過其身份驗證。

這一次,馬克進行研究的對象是Crytsetup——一個允許用戶通過LUKS(Linux統一密鑰設置)來進行硬碟加密的工具,而漏洞就存在於Linux流行變體中的統一密鑰設置(LUKS)中,可允許用戶對密碼進行多次試錯。

當用戶要求進行密碼加密時,Cyptsetup腳本會怎樣處理boot呢?馬克在研究中發現,密碼是被用於去在保護硬碟信息時進行解密,引導系統,然後再授予他們經過身份驗證之後的用戶可訪問數據。

這個過程中所存在的問題是沒有正確處理密碼檢驗腳本文件/腳本/local-top/crypt rot。當用戶對密碼進行三次嘗試之後,這個啟動順序仍然會繼續正常運作。這就會導致用戶可以通過重新載入身份驗證過程去重新進行加密密碼的嘗試。

經過試驗發現,這個過程在x86系統上可以重新載入30次(即嘗試93次密碼 ),而在PowerPC機器上可以載入150次(約452次密碼試錯)。而這樣的密碼重試並不足以進行強有力的攻擊,更大的問題出現在當用戶在進行了所有的認證之後。

從上圖可以看到,Cyptsetup使用root許可權去開始一個Initrd shell而不是阻止用戶訪問系統攻擊者可以利用這個shell去執行一系列的操作。

由於自啟動分區通常是不加密的,它可以使用SetUID去存儲一個可執行文件來進行啟動,並且隨後就可以用來升級到本地用戶許可權。因此,如果boot是不安全的,隨著而來的就是內核和initrd image被替換。除此之外,還可以進行信息竊取甚至是DDOS攻擊。

總之,攻擊者只需要按住Enter鍵大約70秒或更多就可以在重置密碼提示之後訪問該shell。

馬克表示,該漏洞影響Ubuntu,Fedora,Debian等Linux發行版,甚至還會對使用linux系統的雲計算業務造成嚴重影響。另外,該漏洞它不依賴於特定的系統或配置。攻擊者可以複製、修改或者破壞硬碟。此漏洞在圖書館、ATM、機場機器、實驗室等環境中影響尤為嚴重。

目前該漏洞已修復,並且Marco和Ripoll已開發了一套解決方案用於抵抗攻擊。不過不排除在修復期間,漏洞被偽造的可能性。

註:本文參考來源於bleepingcomputer

推薦閱讀:

為什麼我明明關掉了應用的位置授權,但所有的應用依舊能準確的獲得我的位置,例如某某店家距離你多少米?
記一次720度托馬斯迴旋過狗!
如何將大數據分析技術應用於信息安全領域?

TAG:Linux | 信息安全 |