[bug]动网(DVBBS)PHP论坛preview.php代码执行漏洞

2010年9月9日星期四 | | |

发布日期:2010-09.02
发布作者:佚名
影响版本:动网论坛 (DVBBS) PHP 2.0++
官方地址:http://www.dvbbs.net
漏洞类型:
漏洞描述:动网(DVBBS)论坛系统是一个采用PHP和MYSQL的数据架构的高性能网站论坛解决方案。

在文件preview.php中:
require printout('preview'); //第9行
……
函数printout在文件inc/ dv_clsmain.php中:
function printout($template,$ext="tpl.php"){ //第464行
文件最后包含了templates\default\ preview.tpl.php文件
……
在文件templates\default\ preview.tpl.php中:
$theBody =& Dv_CodeProcess($theBody, $tmpuserinfo, Ubblist($theBody).'39,', 1, 0); //第31行
& Dv_CodeProcess函数在文件inc/dv_code.php文件中:
function &Dv_CodeProcess(&$code,&$currUserInfo,$ubblists,$PostType=1,$sType=1) //第332行
……
$arrPattern[] = '#\[url\s*=\s*([^\]]+)](.*?)\[img](.+?)\[\/img](.*?)\[/url]#iesm'; //第415行
$arrRepl[] = '\'<a href="\'.str_filter_xss("$1").\'" target="_blank">$2<img src="\'.str_filter_xss("$3").\'" border="0"/ >$4</a>\'';
……
$returnval = preg_replace( $arrPattern ,$arrRepl ,$code ); //第861行
函数preg_replace当第一个参数的正则表达式有e符号的时候,第二个参数的字符串当做PHP代码执行。

 

0 评论:


所有文章收集于网络,如果有牵扯到版权问题请与本站站长联系。谢谢合作![email protected]