歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux命令 >> Linux modprobe可以執行任意命令

Linux modprobe可以執行任意命令

日期:2017/2/28 10:05:02   编辑:Linux命令
Linux命令 發布時間:2000-11-14
更新時間:2000-11-14
嚴重程度:高
威脅程度:本地管理員權限
錯誤類型:設計錯誤
利用方式:服務器模式

受影響系統
GNU Linux modutils 2.3.9
+ S.u.S.E. Linux 7.0
+ S.u.S.E. Linux 6.4
+ RedHat Linux 7.0
GNU Linux modutils 2.3.11 不受此漏洞影響
詳細描述
Modutils是LINUX系統中關於內核模塊的工具,其中之一的工具modprobe,自動裝載
一套提供名字的響應模塊,modprobe 2.3.9存在一個漏洞可以導致本地ROOT權利的
破壞。問題存在於modprobe使用popen()來執行"echo"程序,並且參數由用戶來提供,由於popen()依靠/bin/sh來解析命令字符串並執行"echo",如包含一些特殊的SHELL字符就可以導致執行其他命令。

由於modprobe默認不是使用UID為ROOT的身份來安裝,所以這個漏洞可以使用KMOD
來在目標系統中獲得ROOT權利訪問,kmod是一個內核設施自動執行'modprobe'的
程序,當通過request_module()來請求的時候就會調用'modprobe'。

REDHAT7.0中包含的PING程序就調用了request_module,當一個設備在命令行定義的時候不存在,request_module就使用用戶提供的參數來傳遞到內核,內核然後獲取這個參數然後再執行modprobe,包含在設備名中參數的命令就可以被ROOT執行。

測試代碼
可以下載下面的測試代碼:

http://www.securityfocus.com/data/vulnerabilities/exploits/rh7-modprobe.sh

解決方案
Keith Owens <[email protected]> 發布了一個補丁給modutils 2.3.9.

S.u.S.E. has released patches for this vulnerability.



GNU Linux modutils 2.3.9:

Keith Owens <[email protected]> patch modutils.patch
/data/vulnerabilities/patches/modutils.patch

相關信息
Copyright © Linux教程網 All Rights Reserved