文件上传漏洞利用

  • 2016-12-08
  • 113
  • 0

文件上传攻击的原理
由于服务器端没有对用户上传的文件进行正确的处理,导致攻击者可以向某个可通过 Web 访问的目录上传恶意文件,并且该文件可以被Web服务器解析执行。

绕过方法:

  • 客户端javascript验证的可使用brup代理
  • 服务端MIME类型检测同样可以使用brup修改Content-type来绕过
  • 绕过服务端文件扩展名检测:
    1. 结合目录攻击比如filename = “test.asp/test.jpg”之类
    2. 找黑名单扩展名的漏网之鱼 – 比如上面就漏掉了 asa 和 cer 之类
    3. 可能存在大小写绕过漏洞 – 比如 aSp 和 pHp 之类
    4. 特别文件名构造 – 比如发送的 http 包里把文件名改成 help.asp. 或 help.asp_(下划线为空格),这种命名方式在 windows 系统里是不被允许的,所以需要在 burp 之类里进行修改, 然后绕过验证后,会被 windows 系统自动去掉后面的点和空格。
    5. 0x00 截断绕过 – 这个是基于一个组合逻辑漏洞造成的
    6. 双扩展名解析绕过攻击 – 基于 web 服务的解析逻辑
      比如上传x.php.rar等文件
    7. 系统文件路径长度限制:windows 259个bytes
      linux 4096个bytes
    8. 这里利用了IIS的解析漏洞,当文件名为1.asp;1.jpg时,IIS会将此文件解析为1.asp,文件名被截断,导致脚本被执行。

评论

还没有任何评论,你来说两句吧