PHPWIND 论坛是一款流行的PHP 论坛,界面美观,功能也比较强大。但大家仔细看一下会发现不论是从界面功能还是代码风格,它和 DISCUZ 都非常相似,具体原因我想也就不用说了,毕竟 DISCUZ 出来比它要早很多。但安全上它没有继承 DISCUZ 的优点, DISCUZ 论坛安全性非常好,而且商家也对此非常重视安全问题,国内论坛中不论从功能还是安全 , 第一非DISCUZ 莫属。PHPWIND 虽然代码严谨,逻辑清楚,但还是有一些漏洞,而且还相当严重。
一 skin 变量未过滤导致管理员密码更改
废话少说,我们来分析漏洞。漏洞代码如下 (header.php) :
!function_exists('readover') && exit('Forbidden');
if (!$skin) $skin=$db_defaultstyle;
if(file_exists(R_P."data/style/$skin.php")){
include_once(R_P."data/style/$skin.php");
}else{
include_once(R_P."data/style/wind.php");
}
$yeyestyle=='no' ? $i_table="bgcolor=$tablecolor" : $i_table='class=i_table';
if($groupid=='guest' && $db_regpopup=