安全通告: nmount (SA-08:08.nmount)
主題: nmount(2) local arbitrary code execution
分類: core
模組: sys_kern
發布日期: 2008-09-03
影響版本: FreeBSD 7.0-RELEASE, FreeBSD 7.0-STABLE
修正版本: RELENG_7, 7.1-PRERELEASE
RELENG_7_0, 7.0-RELEASE-p4
I. 相關背景資料
系統呼叫函數 mount(2) 和 nmount(2) 常備各種程式所呼叫用來掛載檔案系統.
它可以允許非授權的使用者使用這些系統呼叫 ,透過 sysctl 設定 vfs.usermount 變數.
II. 問題描述
使用者定義輸入變數例如: 掛載點, 裝置和 mount 參數會作為 nmount(2)的參數並且載入kernel . 在某些錯誤的狀況下,使用者定義的資料將會,未經確認而被複製進kernel 的 stack allocated buffer 中.
III. 影響
若系統被設定允許非經授權的使用者掛載檔案系統, 本機使用者將有可能透過此弱點並且在kernel執行程式碼
IV. 替代方案
透過 sysctl 指令設定只有被授權的使用者可以掛載系統, 指令如下:
# sysctl vfs.usermount=0
V. 解決方案
補充: 即便修補只允許使用者掛載任意媒體,也不能視為安全.
許多FreeBSD的檔案系統並未被建立用來保護惡意裝置.
當這些bugs被發現並且修補後,系統程式碼中的完整稽核尚未被執行.
以下方案擇一:
1) 升級版本至 7-STABLE 或 RELENG_7_0 (需要在此安全通告日期後的版本)
2) 更新現有系統: (下列修補檔案備提供給 FreeeBSD 7.0 系統)
a) 下載修補檔案
# fetch http://security.FreeBSD.org/patches/SA-08:08/nmount.patch
b) 更新修補檔
# cd /usr/src
# patch < /path/to/patch (您存放修補檔的位置)
c) 重新編譯kernel 並且重新開機.
安全通告: nmount (SA-08:08.nmount)
迴響 |
0 引用