1、前段绕过,抓包修改后缀名,
2、文件内容绕过,用图片马,抓包修改后缀绕过
3、黑名单绕过,php已经被限制了,那么我们可以改成phtml抓包绕过
4、.htaccess绕过,只要有这个配置文件,并且内容为“AddType application/x-httpd-php .jpg
5、”那么后缀为.jpg文件的图片马就会被当做php文件执行,而且不需要改后缀
6、大小写绕过,抓包后后缀改成.pHP,就可以绕过
7、空格绕过,抓包修改后缀,并在后缀后面加上空格
8、点绕过,抓包修改后缀,并在后缀后面加上点
9、文件流绕过,前提条件,必须是window机器,抓包修改后缀,并在后缀后面加上::$DATA
10、双拼绕过,抓包修改后缀,并在把后缀改成pphphp,这样后端去掉php,还剩下个p和hp组合在一起,又是php
我们可以自己本地环境测试一下,这里我用的phpstudy
先写个一个一句话木马到网站根目录。
然后测试一下
注意这里是反单引号,表示执行命令。
http://127.0.0.1/dd.php?a=echo `whoami`;
然后我们在用webshell管理工具试试,这里我用的是“蚁剑”
一定要选第三个加密方式,不然连接不上一句话木马
能看到我们之前写的木马文件,就连接成功了。
文件上传无非就是两种检测:
一是客户端检测,
二是服务端检测。
判断是哪一种检测也非常简单。我们可以通过抓包来检测。
练习地址:http://59.63.200.79:8016/Pass-20/index.php
bp抓到包了,就说明是后端检测,如果没有抓到包,说格式不允许上传,那么就说明是客户端检测。
服务端检测。
我们来演示一下第三种绕过方法。
先准备一张图片和一个一句话木马。在同一个目录下。然后用cmd合成。
这里的/b表示图片以二进制的方式加载copy 1.png/b + dd.php 3.png
执行后,就生成2个的混合体。
直接打开3.png是图片,用记事本打开就可以看到dd.php里的内容。
4、.htaccess文件绕过
一个名为.htaccess
de 文件,内容为
AddType application/x-httpd-php .jpg
那么她就可以把jpg文件当成php文件执行。
但是这个文件一般是没有的,那么我们可以写好手动传上去,反正黑名单没有她。
然后,之前的图片马就可以被当做PHP执行了。
5、大小写绕过。
6、空格绕过
7、点绕过
8、 ::$DATA
(Windows文件流绕过)
我们正常写,可以看到写入了
PS:如果不存在文件,会自动创建这个文件。
那我们再加上window流来写,其实也是一样的,
那我们就可以证明
echo xiaomeiyan >> 233.txt 和 echo xiaomeiyan >> 233.txt::$DATA
是一样的。只是wondow自动省略了::$DATA
这里还有个小技巧
可以看到明明写了内容,却看不到,而且a.txt也没看到
想正正看到的话,应该用 cmd
命令:notepad 255.txt:a.txt
9、构造文件后缀绕过(. .)
假如说我们知道源码,然后发现,先去点,再去空格,然后他这里是没有循环的,说明只会去一次。那么我们就可以多设置几个
这里我设置的是:. .
10、双写文件后缀绕过
比如pphphp,那么系统会把中间那个php自动去掉,剩p和hp,然后他们又会自动拼接起来。又是php。