本文主要内容
- 文件上传流程、漏洞原因
- burpsuite简单安装
- dvwa文件上传简单示例
文件上传
流程:
- 1.前端选择文件,进行提交
- 2.浏览器形成POST MultiPart报文发送到服务器
- 3.服务器中间件接收到报文,解析后交给相关后端代码进行处理
- 4.后端代码将上传的文件内容写入到临时文件中(PHP特有)
- 5.写入到文件中,文件名为提交的文件名或以一定规则生成的文件名
文件上传漏洞产生原因
- 文件上传未对上传的文件进行严格的验证和过滤,容易造成任意文件上传,包括上传动态文件(asp/php/jsp等等)
- 如果上传的目标目录没有限制执行权限,导致上传的动态文件(比如:webshell)可以正常执行并且可以访问,即造成了文件上传漏洞。
存在上传漏洞的必要条件
- 存在上传点
- 可以上传动态文件
- 上传目录有执行权限,并且上传的文件可执行
- 可访问到上传的动态文件
上传检测流程
BurpSuite简单安装
- 下载jdk
- 官网下载Burp Suite 2.1
- 参考链接:https://bbs.ichunqiu.com/forum.php?mod=viewthread&tid=54760&highlight=burpsuite
简单代理配置
火狐浏览器:选项-》网络设置-》设置
burpsuite设置:
使burpsuite支持对DVWA环境(本地环境)进行抓包(此方法仅尝试成功一次,貌似不可行)
在火狐浏览器url栏输入:about:config
然后在搜索栏输入:network.proxy.allow_hijacking_localhost
dvwa文件上传low简单示例
- burpsuite截包
使burpsuite支持对DVWA环境(本地环境)进行抓包(采用了本地地址ip的访问方式)
- 将代理都修改为端口9999
- 测试: