一、利用PHP 和 Windows环境的叠加特性,以下符号在正则匹配时的相等性
双引号" = 点号.
大于符号> = 问号?
小于符号< = 星号*
先上传一个名为1.php:.jpg的文件,上传成功后会生成1.php的空文件,大小为0KB。
然后将文件名改为1.<或1.<<<或1.>>>或1.>><后再次上传,重写1.php文件内容,webshell代码就会写入原来的1.php空文件中。
二、.htaccess
前提条件:只适用于apache(1.mod_rewrite模块开启。2.AllowOverride All)
上传一个1.jpg,内容为webshell代码;再上传一个名为.htaccess的文件,内容如下:
SetHandler application/x-httpd-php
这样所有文件都会当成php来解析。
三、.user.ini
上传一个1.txt,内容为webshell代码;再上传一个名为.user.ini的文件,内容如下:
auto_prepend_file = 1.txt
这样在该目录下的所有php文件都会包含1.txt的内容。