一. CVE-2021-3493簡介
OverlayFS漏洞允許Ubuntu下的本地使用者獲得root許可權。Linux核心中overlayfs檔案系統中的Ubuntu特定問題,在該問題中,它未正確驗證關於使用者名稱稱空間的檔案系統功能的應用程式。由於Ubuntu附帶了一個允許非特權的overlayfs掛載的補丁,因此本地攻擊者可以使用它來獲得更高的特權。
目前漏洞細節已公開,請受影響的使用者儘快採取措施進行防護。
二. 影響版本
Ubuntu 20.10
Ubuntu 20.04 LTS
Ubuntu 18.04 LTS
Ubuntu 16.04 LTS
Ubuntu 14.04 ESM
三. 漏洞分析
Linux支援儲存在擴充套件檔案屬性中的檔案功能,它們的工作方式類似於setuid-bit,但粒度更細。在虛擬碼中設定檔案功能的簡化過程如下:
重要的呼叫是cap_convert_nscap,它檢查與名稱空間相關的許可權。
如果我們從自己的名稱空間和掛載上設定檔案功能,就不會有問題,而且我們有許可權這樣做。但當OverlayFS將此操作轉發給底層檔案系統時,它只呼叫vfs_setxattr,並跳過cap_convert_nscap中的檢查。
這允許在外部名稱空間/mount中的檔案上設定任意功能,並且在執行過程中應用。
在Linux 5.11中,對cap_convert_nscap的呼叫被移到了vfs_setxattr中,攻擊很難實現。
四. 漏洞利用
測試環境:Ubuntu 18.04 LTS
本地使用者登入系統,執行POC。
五. 防禦建議
更新系統軟體包版本。詳細版本資訊請參考供應商的安全公告。
https://ubuntu.com/security/notices/USN-4915-1
https://ubuntu.com/security/notices/USN-4916-1
https://ubuntu.com/security/notices/USN-4917-1
六. 參考連結
https://ubuntu.com/security/CVE-2021-3493
https://ssd-disclosure.com/ssd-advisory-overlayfs-pe/