欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

对iGENUS邮件系统的一次安全检测

来源:本站转载 作者:佚名 时间:2011-07-19 TAG: 我要投稿

 hackerxwar/gle [0x50]

本文首发黑客防线,版权归作者和黑防所有,未经允许请勿转载。

iGENUS邮件系统是适用于Linux操作系统平台的应用广泛的一套WebMail邮件系统。使用安装程序能快速安装在CentOS Linux 3.x/4.x 操作系统、RedHat Enterprise Linux AS3/AS4操作系统上,其界面华丽,安装简单,但是却存在着严重的安全问题。

发现本地文件包含漏洞

由于是不是开源软件所以只能黑盒测试,发现登录页面存在本地文件包含漏洞,如图1所示。
看来包含的漏洞是类似于”include(‘language/’.$_GET['lang'].”_inc.php”)”,此处包含文件一般需要截断,除非我们能够控制某个’*_inc.php’文件的内容。

图1

关于Include截断

对于这种情况一般我们可以用NULL字符实现截断,对于远程包含我们还可以用”?”实现伪截断,但是由于GPC的影响--magic_quotes_gpc=on将把所有通过(GET、POST、COOKIE提交的所有的 ‘(单引号),”(双引号),\(反斜线)和 NULL 字符都会被自动加上一个反斜线进行转义),由于把NULL字符(%00)变成了’\0′,所以在magic_quotes_gpc=on的时候对于们包含/etc/passwd文件失败,所以在GPC开启的时候我们几乎没有办法利用需要截断的本地文件包含漏洞。但是80vul的大牛发现了一个include截断的方法,并给出了一个fuzz小程序,有兴趣的可以自己测试:
———————-
<?php

////////////////////

////var5.php代码:

////include $_GET['action'].”.php”;

////print strlen(realpath(“./”))+strlen($_GET['action']);

///////////////////

ini_set(‘max_execution_time’, 0);

$str=”;

for($i=0;$i<50000;$i++)

{

$str=$str.”/”;

$resp=file_get_contents(‘http://127.0.0.1/var/var5.php?action=1.txt’.$str);

//1.txt里的代码为print ‘hi’;

if (strpos($resp, ‘hi’) !== false){

print $i;

exit;

}

}

?>
经过测试字符“.”、“ /”或者2个字符的组合,在一定的长度时将被截断,win系统和*nix的系统长度不一样,当win下strlen(realpath(“./”))+strlen($_GET['action'])的长度大于256时被截断,对于*nix的长度是4 * 1024 = 4096。
———————————-
LFI vul的利用尝试

我们先不管include截断,继续往下看。对于本地文件包含漏洞需要包含本地文件来执行php代码,所以我很自然的找上传的地方。既然是邮箱系统我们就注册个用户,应该可以上传附件,或者能够接收带附件的邮件。经测试网站只开启了收费的vip.xxxx.com的域名注册,而且注册后是不能够直接登录的,提示无此用户名,vip.xxxx.com的并没有真正注册成功,或者需要交费,后管理员开通才能使用,这样的话问题变的麻烦了。

扫了一下目录、Google “site:xxx.com”,得到的信息很少,也都没有发现什么有用信息。

利用的方法还有的把发就是想办法写日志文件,然后包含日志来执行代码,一般都包含错误日志,因为其体积相对小些,但是管理员显然修改了日志路径,或者根本就没有开启日志记录功能,没有办法找到路径包含到。
而SirGod在milw0rm.com上发布的一篇paper(http://www.milw0rm.com/papers/361),提供了一个新的方法那就是包含/proc/self/environ,然后通过修改User-Agent来写入php代码然后执行,这种方法我也在别的服务器上测试成功过,但是这次人品不咋的,返回的就像作者说的是个空白页,如下图2所示,很明显我们没法访问/proc/self/environ。
由于暂时没有办法成功利用本地文件包含漏洞,入侵似乎陷入了僵局。

[1] [2] [3]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载