在2019年07月20日linux官方正式修復了一個本地內核提權漏洞。攻擊者可以通過此漏洞將普通權限用戶提升為Root權限。
(推薦教程:網站安全教程)
漏洞描述
當調用PTRACE_TRACEME時,ptrace_link函數將獲得對父進程憑據的RCU引用,然后將該指針指向get_cred函數。但是,對象struct cred的生存周期規則不允許無條件地將RCU引用轉換為穩定引用。
PTRACE_TRACEME獲取父進程的憑證,使其能夠像父進程一樣執行父進程能夠執行的各種操作。如果惡意低權限子進程使用PTRACE_TRACEME并且該子進程的父進程具有高權限,該子進程可獲取其父進程的控制權并且使用其父進程的權限調用execve函數創建一個新的高權限進程。攻擊者最終控制具有高權限的兩個進程ptrace關系,可以被用來ptrace。
suid二進制文件并獲得root權限。
漏洞復現
網上已有針對該漏洞的高可利用性的exploit,利用效果如下圖:
影響范圍
目前受影響的Linux內核版本:
Linux Kernel
?修復建議
1、補丁修復鏈接:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=6994eefb0053799d2e07cd140df6c2ea106c41ee
2、升級Linux內核至最新版。
?參考鏈接
https://github.com/torvalds/linux/commit/6994eefb0053799d2e07cd140df6c2ea106c41ee
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END
喜歡就支持一下吧
相關推薦