From:http://www.cnblogs.com/iamstudy/articles/php_ini_backdoor.html
原理
-
php.ini中有这几种模式:
-
PHP_INI_*模式的定义
-
-
文件配置属性
-
官方解释
auto_prepend_file 意味这是在php脚本执行前会执行这个参数设置的脚本,然后这个参数的脚本所在目录受include_path限制
append是在php脚本执行后才执行的,但是要注意的是遇到exit()的时候,这个脚本也不能运行
然后这两个能在php.ini、.htaccess、httpd.conf设置,但是看了P师傅写的, 除了PHP_INI_SYSTEM以外的模式(包括PHP_INI_ALL)都是可以通过.user.ini来设置的
实践
- 在php.ini里面设置:
![](http://upload-images.jianshu.io/upload_images/20083-701d9f70e73d293e.png?imageMogr2/auto-orient/strip|imageView2/2/w/405/format/webp)
设置1
- 然后添加:
![](http://upload-images.jianshu.io/upload_images/20083-37af9180d2c92171.png?imageMogr2/auto-orient/strip|imageView2/2/w/579/format/webp)
设置2
- 在/tmp目录下新建一个目录a,在目录a下新建一个aa.php文件,文件内容可以是php一句话或者phpinfo等任何php形式的文件内容,注意设置好aa.php的文件权限,否则会出现500的报错。
![](http://upload-images.jianshu.io/upload_images/20083-6661fd658cb53a8c.png?imageMogr2/auto-orient/strip|imageView2/2/w/553/format/webp)
文件内容
-
在浏览器直接访问index.php页面,可以发现不仅显示除了index.php的内容,而且也可以执行aa.php里面的一句话木马了。
-
页面显示
-
参考连接
.heaccess后门