学习.user.ini文件构造php后门

0xGeekCat · 2020-8-18 · 次阅读


前言

.user.ini不管是nginx/apache/IIS,只要是以FastCGI运行的php都可以使用,不像.htaccess有局限性,使用范围更广

在之前的文章中,本人已经将本地apache的工作模式切换为FastCGI,所以便直接开始进行漏洞复现

了解.user.ini

截屏2020-08-18 下午7.28.25

👇查看.user.ini中配置可被设定范围

截屏2020-08-18 下午7.32.08

.user.ini 风格的INI文件中只有具有PHP_INI_PERDIR(虽然👆表中没提到)和PHP_INI_USER模式的INI设置可被识别

php.ini不同,.user.ini是一个能被动态加载的ini文件。也就是说修改了.user.ini后,不需要重启服务器中间件,只需要等待user_ini.cache_ttl所设置的时间,即可被重新加载

利用配置选项

利用之前文章所学的auto_append_file来设置.user.ini,在php文件结尾包含1.gif

截屏2020-08-18 下午7.37.40

👇编辑1.gif

<?php phpinfo();

访问空文件test.php,后门构造成功

截屏2020-08-18 下午7.43.32

如果某网站限制不允许上传.php文件,你便可以上传一个.user.ini,再上传一个图片马包含起来进行getshell。不过前提是含有.user.ini的文件夹下需要有正常的php文件,否则也不能包含

reference

.user.ini文件构造php后门