问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

文件上传漏洞的类型有哪些?

发布网友 发布时间:2022-05-19 02:46

我来回答

1个回答

热心网友 时间:2023-11-22 15:41

1、 前端检测绕过
有的站点只在前端对文件的类型有所*,我们只需用bp抓包然后修改文件后缀名就能绕过这种检测。
2、 文件头检测绕过
有的站点使用文件头来检测文件的类型,这种检测可以在shell前加入相应的字节一绕过检测,几种常见的文件类型的头字节如下:

3、 后缀检测绕过
部分服务器仅根据文件后缀、上传时的信息或者文件头来判断文件类型,此时可以绕过。php由于历史的原因,部分解释器可能支持符合正则/ph(p[2-7]?|t(ml)?)/的后缀,如php/php5/pht/phtml/shtml/pwml/phtm等。如果后端对文件名进行了过滤,可以尝试双写文件名,比如1.pphphp。
4、 系统命名绕过
在windows系统中,上传不符合windwos命名规则的文件名会被windows系统自动去掉不符合规则符号后面的内容,例如:test.asp.、test.asp(空格)、test.php:1.jpg、test.php:: D A T A 、 t e s t . p h p : : DATA、test.php:: DATA、test.php::DATA…这些文件上传到服务器端之后都会变成test.php
在linux系统下,可以尝试上传文件后缀名为大小写混用的Php文件。
5、 文件包含绕过
在文件包含的时候,为了灵活包含文件,将被包含文件设置为变量,通过动态变量来引入需要包含的文件,用户可以对变量的值进行控制,而服务器端未对变量进行合理的校验,这样就导致所包含的文件有可能存在恶意代码。比如1.php
<?php $file=$_GET[‘file’]; include($file); ?>
这个程序就包含了一个文件,我们在1.txt文件中写入
<?php phpinfo(); ?>
然后将这个文件包含在1.php中1.php?file=1.txt这样
<?php phpinfo(); ?>就成功写入1.php这个文件当中,我们访问1.php这个文件的时候就能出现php信息那个页面。利用这个漏洞我们就可以进行文件上传,我们只需包含一个一句话木马内容的txt就能用菜刀连接,这样就成功执行了文件上传。
6、 解析漏洞绕过
目录解析:在网站中建立名称为*.asp、.asa格式的文件夹时,其文件夹下面的文件都会被当做asp执行。
文件解析:当文件名为.asp;1.jpg时,也会被当做asp执行
Apache解析漏洞:Apache在解析文件时,是从右往左,如果遇到不认识的扩展名时,就会继续向左判断,例如1.php.rar就会被当做
php解析。
IIS 7.0/IIS 7.5/Nginx<0.8.3畸形文件解析漏洞,当访问http://xxx.com/1.jpg/1.php时,此时1.php不存在,就会将1.jpg当做php文件去执行,所以如果存在该漏洞,将php木马后缀改成jpg然后访问1.jpg/1.php然后1.jpg就会被当成1.php来执行。
.htaccess,该文件里面的代码如下:
<FilesMatch “1”>
SetHandler application/x-httpd-php

这段代码的意思就是文件名包含”1”这个这个字符串就会被当成php文件来处理。但是值得注意的是上传.htaccess必须是网站根路径。
7、 文件截断绕过
00截断:由于00代表结束符,所以会把00后面的所有字符删除。
能利用这个漏洞的前提是,php版本要小于5.3.4,magic_quotes_gpc需要为OFF状态。我们用bp进行拦包之后,需要send to repeater,然后在hex中,在php后面添加00
8、 竞争条件攻击
一些网站上传文件逻辑上是允许上传任意文件的,然后检查上传文件的内容是否包含webshell脚本,如果包含则删除该文件,这里存在的问题是文件上传成功之后和删除文件之间存在一个短的时间差,攻击者就可以利用这个时间差来上传漏洞攻击。攻击者先上传一个webshell脚本1.php内容如下:
<?php fputs(fopen(‘../shell.php’,’w’),’<?php @eval($_POST[a]) ?>’); ?>
代码内容就是生成一个新的webshell,shell.php,那么当1.php上传成功之后,我们快速访问这个文件,这时就会在服务器端当前目录下自动生成shell.php,这时就利用时间差完成了webshell的上传。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
什么是转动惯性量 我不愿让你一个人歌曲歌词 五月天教我打电话给我喜欢的人,我打了,可是他不接怎么办?他挂了我... 14个亚马逊站点你知道多少?亚马逊不同站点特点讲解! 亚马逊的站点有哪些?站点怎么选择? 千娇app如何下载安装,有哪些功能? ...浸没在水中称是3N,则石块受到的浮力是___N,排开的水的体积是___立 ... 在空气中用弹簧测力计测得某石块重5N;浸没在水中称量,弹簧测力计的示数... ...浸没在水中,测力计的示数为3N,则物体受到的浮力为 ...满水的溢水杯中时弹簧测力计的示数是3N,则石块受到的浮 马云到底是创业导师还是黑心骗子 广州创业导师商学院有限公司是骗人的吗? 丸碧创业导师陈小容是真的吗? 言崇老师听说是一名互联网创业导师,是真的吗?怎么才能找到她呢?? 创业是否真有导师? 百度上那些创业老师是不是真的 听说马英智是互联网创业导师,是真的吗? 眉户戏有哪些特点? 临猗县百花眉户剧团怎么样? 潘国梁的介绍 潘国梁在眉户戏表演方面有什么成就? 临汾市眉户剧团杨丽夺杏花奖演的什么剧目 临汾眉户剧团副团长是谁 最火聊天社交软件!比如QQ微信陌陌!能发布动态的 请问有什么交友软件人多的,能发表动态的,动态里面一分钟能有几个人发表动态的,全国各地的人都有发表的 哪个聊天软件可以发动态语音呢? 争荣这个软件怎么样去发动态的呀 请问浙江有什么相亲软件人多,能发表动态能点赞的? 有什么app可以发语音动态? 有没有像QQ微信一样可以发布动态的软件,关键是软件内可以通过关键词搜索发布过的动态 在nginx中,类似 http://abc.com/index.php/test 这样的URL出错 nginx怎么解析protobuf 兰州09年中医学院专升本报名时间 中医专升本几月份考试 系统哪些文件可以删除 双十一在天猫珀莱雅官方旗舰店买的东西,十五天还没发货,找客服也没人理,怎么办? 天猫双11买的东西不发货怎么办 天猫买的东西迟迟不发货卖家还不给退款怎么办 淘宝双11购物延迟发货问题,我教你们如何解决 想生女儿多吃什么食物 今天来到动物园,游戏怎么玩 动物园之星左键点击没用 最新拍卖法实施细则是什么 拍卖法实施细则的发布时间? 与拍卖有关的法律法规 《中华人民共和国拍卖法》实施细则什么时间发布 拍卖法实施细则买受人不要了怎么办 拍卖能否设定条件?有什么法律法规规定? “拍卖法”有相关文件规定,标的物多大或者什么情况下必须联合拍卖吗? 重金求助! 单位纳税人办理税务登记程序业务流程