文件上传--利用.htaccess绕过黑名单

前言

在很多时候有限制文件上传的类型,而黑名单ban了很多相关的后缀,如果没有警用.htaccee那么就能触发getshell

.htaccess可以把.jpg解析成php

语法

AddType application/x-httpd-php .jpg

PHP5

图像相关的信息检测常用getimagesize( )函数,那么对于.htaccess文件来说,注释有#%00这2个符号,图片头没有#,但是有%00的文件

比如

jp2 格式如下

00 00 00 0c 6a 50 20 20 0d 0a 87 0a(必须)

文件上传--利用.htaccess绕过黑名单_第1张图片

在图中widthC6

hight6F,修改对应位置的值即可返回对应的长度

ico格式如下

00 00 01 00(必须) 01 00 20 20 (32 * 32的大小) 00 00 01 00 20 00 a8 10 00 00 16 00 00 00 28 00 00 00 20 00 00 00 40 00 00 00 01 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 01 20

所以如果不限制大小可以在.htaccess文件面前加上

aaaaaa

然后用winhex改成

00 00 01 00 0a 0d

bwmp格式如下

00 00 01 01 

表示width1, hight为1

00 00 8A 39 8A 39

表示width1337, hight1337

如果大小值>80,那么就会取2位,否则只会取1位

有了上面的几种情况就可以上传.htaccess文件,并符合其语法

文件上传--利用.htaccess绕过黑名单_第2张图片

接下来上传个图片马即可

文件上传--利用.htaccess绕过黑名单_第3张图片

然后直接访问图片就被解析成php代码了

文件上传--利用.htaccess绕过黑名单_第4张图片

PHP7以后

有时候有这种情况把给waf了,在php7之前可以按上面的

你可能感兴趣的:(文件上传--利用.htaccess绕过黑名单)