本文实验环境:upload-labs-master
链接:https://pan.baidu.com/s/1AD3eaAOrAqJDd0c5UTQZNw
提取码:9rsd
一、文件上传漏洞
- 攻击者可以利用提供的文件上传功能,将恶意代码植入到服务器,之后通过rul去访问执行代码达到执行代码攻击的目的
二、漏洞种类
1.前端
1.1js检测
- upload-labs Pass-1为例
1.客户端检测函数
function checkFile() {
var file = document.getElementsByName('upload_file')[0].value;
if (file == null || file == "") {
alert("请选择要上传的文件!");
return false;
}
//定义允许上传的文件类型
var allow_ext = ".jpg|.png|.gif";
//提取上传文件的类型
var ext_name = file.substring(file.lastIndexOf("."));
//判断上传文件类型是否允许上传
if (allow_ext.indexOf(ext_name + "|") == -1) {
var errMsg = "该文件不允许上传,请上传" + allow_ext + "类型的文件,当前文件类型为:" + ext_name;
alert