PHPNetToolpack远程命令执行漏洞
添加时间:
2005-10-01
系统编号:
WAVDB-00716
BugCVE: CVE-2002-0471
BUGTRAQ: 4303
影响版本:
PHPNetToolpack 0.1
程序介绍:
解决方案:
临时解决方法:
如果您不能立刻安装补丁或者升级,建议您采取以下措施以降低威胁:
* 使用escapeshellcmd()函数检查输入字符,可以在traceroute函数中使用如下代码:
$sec_input=escapeshellcmd($a_query);
exec("/sbin/traceroute $sec_input",$ret_strs);
代替:
exec("traceroute $a_query",$ret_strs);
厂商补丁:
PHPNetToolpack
--------------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://phpnettoolpack.sourceforge.net/
信息来源:
<*来源:ppp-design (security@ppp-design.de)
链接:http://archives.neohapsis.com/archives/bugtraq/2002-03/0200.html
*>
2005-10-01
系统编号:
WAVDB-00716
BugCVE: CVE-2002-0471
BUGTRAQ: 4303
影响版本:
PHPNetToolpack 0.1
程序介绍:
PHPNetToolpack是一款由PHP实现在WEB接口下提供finger、whois、traceroute功能的程序,可以运行在Unix和Linux操作系统下,也可运行在Microsoft Windows操作系统平台下。
漏洞分析:
PHPNetToolpack由于在执行traceroute程序时没有充分过滤用户输入,可导致远程攻击者以httpd权限执行任意命令。
由于PHPNetToolpack使用如下代码:
exec("traceroute $a_query",$ret_strs);
调用traceroute程序,并且没有对$a_query变量进行充分,攻击者可以输入的元字符";"来追加任意命令,可导致攻击者可以以httpd的权限执行任意命令。
解决方案:
临时解决方法:
如果您不能立刻安装补丁或者升级,建议您采取以下措施以降低威胁:
* 使用escapeshellcmd()函数检查输入字符,可以在traceroute函数中使用如下代码:
$sec_input=escapeshellcmd($a_query);
exec("/sbin/traceroute $sec_input",$ret_strs);
代替:
exec("traceroute $a_query",$ret_strs);
厂商补丁:
PHPNetToolpack
--------------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:
http://phpnettoolpack.sourceforge.net/
信息来源:
<*来源:ppp-design (security@ppp-design.de)
链接:http://archives.neohapsis.com/archives/bugtraq/2002-03/0200.html
*>