首页 > 代码库 > TEC-004-php文件下载任意文件读取漏洞修复
TEC-004-php文件下载任意文件读取漏洞修复
修改download?u参数值,将/public/files/14842030529.txt,替换为../../../../../../../../../../etc/passwd
function download() {
$u =$_GET[‘u‘];
// 描述: 任意文件读取漏洞修复 date: 2017年4月28日 下午4:13:39 bylwy
$lenth=strrpos($u,‘.‘);
$string = substr($u,0,$lenth);
$end=substr($u,$lenth);
$string = str_replace ( array (‘.‘), array (‘╭(⊙^⊙)╮‘), $string );
$string .=$end;
// 描述: 任意文件读取漏洞修复 date: 2017年4月28日 下午4:13:39 bylwy
if (file_exists($file)){
header(‘Content-Description: File Transfer‘);
header(‘Content-Type: application/octet-stream‘);
header(‘Content-Disposition: attachment; filename=‘.basename($file));
header(‘Content-Transfer-Encoding: binary‘);
header(‘Expires: 0‘);
header(‘Cache-Control: must-revalidate, post-check=0, pre-check=0‘);
header(‘Pragma: public‘);
header(‘Content-Length: ‘ . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}else{
echo "文件下载错误!";
}
}
本文出自 “yanzi” 博客,请务必保留此出处http://daddysgirl.blog.51cto.com/1598612/1921597
TEC-004-php文件下载任意文件读取漏洞修复