网站地图    收藏   

主页 > 后端 > 网站安全 >

蚂蚁游戏官方服务器设置不当及详细修复方案

来源:自学PHP网    时间:2015-04-17 11:59 作者: 阅读:

[导读] 两个漏洞 服务器解析漏洞 和现在很火的struts2命令执行漏洞0x0.1 解析漏洞随便注册一个用户然后在修改头像这边上传一个包含有恶意代码的图片http://www.gamemayi.com/mayi.website/upload/20120630...

两个漏洞 服务器解析漏洞 和现在很火的struts2命令执行漏洞
 
0x0.1 解析漏洞
 
 
 
随便注册一个用户然后在修改头像这边上传一个包含有恶意代码的图片http://www.gamemayi.com/mayi.website/upload/20120630042642423.jpg上传好了这样一个图片文件然后在图片后缀的后面加上1.phphttp://www.gamemayi.com/mayi.website/upload/20120630042642423.jpg/1.php服务器就会让这张图片以PHP的方式运行进而获取到网站权限
 
 
 
 
 
-------------------------------------------------------------------
0x0.2 struts2命令执行漏洞
 
http://www.gamemayi.com/mayi.website/web!index.action
 
root权限
 



 
 
 
0xEnd
-------------------------
   
修复方案:0x.01解析漏洞
网上提供的临时解决方法有:
 
  方法①、修改php.ini,设置cgi.fix_pathinfo = 0;然后重启php-cgi。此修改会影响到使用PATH_INFO伪静态的应用,例如我以前博文的URL:http://blog.s135.com/read.php/348.htm 就不能访问了。
 
  方法②、在nginx的配置文件添加如下内容后重启:if ( $fastcgi_script_name ~ ..*/.*php ) {return 403;}。该匹配会影响类似http://www.domain.com/software/5.0/test.php(5.0 为目录),http://www.domain.com/goto.php/phpwind 的URL访问。
 
  方法③、对于存储图片的location{…},或虚拟主机server{…},只允许纯静态访问,不配置PHP访问。例如在金山逍遥网论坛、SNS上传的图片、附件,会传送到专门的图片、附件存储服务器集群上(pic.xoyo.com),这组服务器提供纯静态服务,无任何动态PHP配置。各大网站几乎全部进行了图片服务器分离,因此Nginx的此次漏洞对大型网站影响不大。
 
  本人再提供一种修改nginx.conf配置文件的临时解决方法,兼容“http://blog.s135.com/demo/0day/phpinfo.php/test” 的PATH_INFO伪静态,拒绝“http://up.2cto.com/Article/201007/20100701104324770.jpg/test.php” 的漏洞攻击:
location ~* .*.php($|/)
{
if ($request_filename ~* (.*).php) {
set $php_url $1;
}
if (!-e $php_url.php) {
return 403;
}
 
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fcgi.conf;
}
 
  也可将以下内容写在fcgi.conf文件中,便于多个虚拟主机引用:
if ($request_filename ~* (.*).php) {
set $php_url $1;
}
if (!-e $php_url.php) {
return 403;
}
 
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
fastcgi_param SERVER_SOFTWARE nginx;
 
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
 
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $uri;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param DOCUMENT_ROOT $document_root;
fastcgi_param SERVER_PROTOCOL $server_protocol;
 
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_PORT $server_port;
fastcgi_param SERVER_NAME $server_name;
 
# PHP only, required if PHP was built with –enable-force-cgi-redirect
fastcgi_param REDIRECT_STATUS 200;
 
0x0.2struts2命令执行漏洞
 
升级
 
作者GuoKer(ZhuLiu)

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论