使用scanv網站體檢發現有DedeCMS 5.7SP1 /plus/download.php url重定向漏洞(如下圖),對比官方網站最新下載包發現該漏洞未進行補丁,但官方自身網站已經補上了,而官方演示站點均未補上。
(此圖片來源于網絡,如有侵權,請聯系刪除! )
參考了下網上給出的漏洞原因和解決思路如下:
$link = base64_decode(urldecode($link));
link可以構造成任意地址,下面直接跳轉了
header("location:$link");
影響所有用到dedecms系統的網站。
漏洞證明:http://www.**.com/plus/download.php?open=1&link=aHR0cDovL3d3dy5iYWlkdS5jb20%3D
其中將**號更改為你的網站域名,如果跳轉到其它網站就說明存在漏洞。
修復方案:對link參數做判斷,對不是同域名的跳轉給予提示
我們這里給出具體的修改方案:
修改download.php(在網站根目錄plus文件夾下)
把
header("location:$link");
替換為
if(stristr($link,$cfg_basehost))
{
header("location:$link");
}
else
{
header("location:$cfg_basehost");
}
這樣即可將非本站域名跳轉到網站首頁,以免出現釣魚欺詐行為。而scanv也不會再提示低危風險漏洞了。