关于php上传漏洞的探讨
时间:2010-01-14
来源:互联网
我今天刚写了一个php上传文件,以前用的是asp语言编程,也学过黑客技术,知道黑客会用上传漏洞来上传木马,
因为我刚学php,对PHP的上传功能是否有漏洞不是很清楚,我把代码贴出来,让大家看一下,是不是有漏洞!?
<?php
if (is_uploaded_file($_FILES['upfile']['tmp_name'])){
$file=$_FILES["upfile"];
$type=$file["type"];
$size=$file["size"];
$tmp_name=$file["tmp_name"];
$error=$file["error"];
$time=date("Y-m");
$filename=date("YmdHis");
switch($type){
case 'image/jpg':$ok=1;
break;
case 'image/jpeg':$ok=1;
break;
case 'image/pjpeg':$ok=1;
break;
case 'image/gif':$ok=1;
break;
}
if (!is_dir('../bpic/'.$time))
{
mkdir('../bpic/'.$time,0700);
}
if ($ok && $error == '0'){
move_uploaded_file($tmp_name,'../bpic/'.$time.'/'.$filename.'.gif');
echo "上传成功!";
}
else{
echo "上传类型不对!";
}
}
?>
<form enctype="multipart/form-data" action="load.php" method=post>
选择文件:
<input name="upfile" type="file"><!--文件-->
<input type="submit" value="上传">
</form>
因为我刚学php,对PHP的上传功能是否有漏洞不是很清楚,我把代码贴出来,让大家看一下,是不是有漏洞!?
<?php
if (is_uploaded_file($_FILES['upfile']['tmp_name'])){
$file=$_FILES["upfile"];
$type=$file["type"];
$size=$file["size"];
$tmp_name=$file["tmp_name"];
$error=$file["error"];
$time=date("Y-m");
$filename=date("YmdHis");
switch($type){
case 'image/jpg':$ok=1;
break;
case 'image/jpeg':$ok=1;
break;
case 'image/pjpeg':$ok=1;
break;
case 'image/gif':$ok=1;
break;
}
if (!is_dir('../bpic/'.$time))
{
mkdir('../bpic/'.$time,0700);
}
if ($ok && $error == '0'){
move_uploaded_file($tmp_name,'../bpic/'.$time.'/'.$filename.'.gif');
echo "上传成功!";
}
else{
echo "上传类型不对!";
}
}
?>
<form enctype="multipart/form-data" action="load.php" method=post>
选择文件:
<input name="upfile" type="file"><!--文件-->
<input type="submit" value="上传">
</form>
作者: wxfeng 发布时间: 2010-01-14
懂得的人不多啊
我刚发现一个问题就是
特殊字符忘了过滤
生存文件,有三个变量$time,$tmp_name,$filename
做好这三个变量的特殊字符过滤
还有一个问题是这三个变量的拼写,换个拼写$time改成$pd,$tmp_name改成$pc,$filename改成$pf
我刚发现一个问题就是
特殊字符忘了过滤
生存文件,有三个变量$time,$tmp_name,$filename
做好这三个变量的特殊字符过滤
还有一个问题是这三个变量的拼写,换个拼写$time改成$pd,$tmp_name改成$pc,$filename改成$pf
作者: wxfeng 发布时间: 2010-01-14
你asp的上传漏洞都知道怎麽回事了,PHP,还不知道了?道理不都一样的嘛
作者: kissmejj126 发布时间: 2010-01-14
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28