phpinfo的基本信息
服务器系统
:
详细的操作系统信息,为提权做准备
extension_dir
php扩展的路径:
真实ip
:
或
web根目录
配置文件位置(php.ini):
重要配置
allow_url_include
远程文件包含,但是一般不会开启。
asp_tags
:
php标签有4种形式,如果这个选项不开启的话(一般默认不开启),使用asp的标签是不会解析的。
这里math1as师傅写了一篇user.ini
+asp_tags
绕过webshell检测的文章a way to bypass php tags check
实际就是通过向其中添加php_value asp_tags On
并上传.htaccess
和.user.ini
来bypass。
原理是:
asp_tags的属性是这样的
PHP_INI_PERDIR:指令可以在php.ini、httpd.conf或.htaccess文件中修改
注意: 在PHP 7已经完全移除了这种标签。
short_open_tag
:
还是标签的问题,允许<??>这种形式,并且<?=等价于<? echo
disable_functions
和disable_classes
:
有时候我们上传了一个webshell却不能用,有很大可能是管理员做了配置,禁用了php执行系统命令的函数和类。
enable_dl
利用扩展库绕过disable_functions,需要使用dl()并且开启这个选项
magic_quotes_gpc
:
它是用来实现addslshes()和stripslashes()这两个功能的,对SQL注入进行防御。open_basedir
:
这个参数将用户可操作的文件限制在某目录下,但是这个限制是可以绕过的。
详情请参考:
PHP绕过open_basedir列目录的研究
php5全版本绕过open_basedir读文件脚本
绕过open_basedir读文件脚本
拓展
imagick
漏洞影响ImageMagick 6.9.3-10之前的版本,包括ubuntu源中安装的ImageMagick
详情参考:
ImageMagick 漏洞利用方式及分析
ImageMagick远程代码执行漏洞分析
libxml
libxml 2.9以前的版本默认支持并开启了外部实体的引用,服务端解析用户提交的 xml 文件时未对 xml 文件引用的外部实体(含外部普通实体和外部参数实体)做合适的处理,会导致XXE。
memcache
redis
session.upload_progress
session.upload_progress 是PHP5.4的新特征。
1.序列化处理器不一致导致对象注入。
详情:session反序列化
2.session.upload_progress加本地文件包含=getshell
xdebug
xdebug命令执行
Xdebug: A Tiny Attack Surface
Xdebug
Xdebug 攻击面在 PhpStorm 上的现实利用
非预期解法三
GOPHER
主要在ssrf中使用
fastcgi
Fastcgi协议分析 && PHP-FPM未授权访问漏洞 && Exp编写
其他
phpinfo-LFI
OPCACHE
域&用户
phpinfo页面还能看到当前域,当前登录用户
总结
最后发现东西太多了,我这基本算是照抄。。。
参考文章:
phpinfo可以告诉我们什么