【0day】phpStudy(小皮面板)最新版v8.1.0.7 nginx 解析漏洞

2020-9-2 / 0 评论 业界新闻 / Mrxn

本文共计 1475 字,感谢您的耐心浏览与评论.

一、phpStudy(小皮面板)简介:
phpStudy v8.1.0.7.png

phpStudy国内12年老牌公益软件,集安全,高效,功能与一体,已获得全球用户认可安装,运维也高效。支持一键LAMP,LNMP,集群,监控,网站,FTP,数据库,JAVA等100多项服务器管理功能。

二、漏洞简介:

自从2019年phpStudy爆出的后门事件已经过去一段时间了,期间也没有爆出过什么漏洞,并且现在phpStudy(小皮面板)已经改版了,这次爆出的漏洞是nginx的解析漏洞,也就是存在已久的/xx.php解析漏洞

漏洞原理

1、由于错误配置(但是测试的时候是安装完后的默认配置,我在官方论坛也反馈了,他们还狡辩。。。)导致nginx把以.php结尾的文件交给fastcgi处理,为此可以构造http://www.xxx.com/test.gif/xx.php (任何服务器端不存在的php文件均可,比如a.php)

2、但是fastcgi在处理xx.php文件时发现文件并不存在,这时php.ini配置文件中cgi.fix_pathinfo=1 发挥作用,这项配置用于修复路径,如果当前路径不存在则采用上层路径。为此这里交由fastcgi处理的文件就变成了/test.gif。

3、 最重要的一点是php-fpm.conf中的security.limit_extensions配置项限制了fastcgi解析文件的类型(即指定什么类型的文件当做代码解析),此项设置为空的时候才允许fastcgi将.png等文件当做代码解析。
localhost_80.conf原始配置:

location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }



三、漏洞复现:

测试环境:phpStudy(小皮面板)8.1.0.7 + 图片马(一定要注意不是那种copy的马子 有几率失败,可以下载这个马子测试)
复现如图:
bug_7.3.pngbug.png

执行系统命令:
exec.png
四、修复
php.ini 中 fix_pathinfo 禁用为0
cgi.fix_pathinfo=0

nginx.conf添加如下代码

location ~ \.php(.*)$ {
      if ( $fastcgi_script_name ~ \..*\/.*php ){
        return 403;
      }
    
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }


请各位师傅下手轻点!注意保重!哈哈哈!

标签: 渗透测试 php 0day

转载:转载请注明原文链接 - 【0day】phpStudy(小皮面板)最新版v8.1.0.7 nginx 解析漏洞


0条回应:“【0day】phpStudy(小皮面板)最新版v8.1.0.7 nginx 解析漏洞”


发表评论

{view_code_no}