U-Mail邮件系统批量getshell(真正无限制,无需普通帐号)

文章目录

漏洞作者:

Ano_Tom

该邮件系统存在任意用户登录、且存在注入,从而可以无限制完美getshell(getshell过程只需简单三个请求)。疯狗,这个不遭雷劈的话,等着被爆菊吧

1.邮件系统介绍

1)官方下载地址:http://www.comingchina.com/html/downloads/

2)版本:最新版V9.8.57

3)测试环境:Windows Server 2003+IIS6.0+官方默认软件

4)使用案例:非常之多,政府类也较多。http://www.comingchina.com/html/case/ OR Google “Powered by U-Mail”

漏洞文件

/fast/default/operates.php

get_url_data()函数文件/admin/include/base.func.php

没什么用处,然后

$arr_tmp = $Domain->getDomainByName( $domain_name, “DomainID,DomainName”, 0 );代码所在文件为

/admin/lib/Domains.php

代码为

获取域名的id,然后

$userinfo = $Mailbox->getMailboxByName( $domain_id, $username, “UserID,Password,FullName,MailDir,MaxNetFileSpace”, 0 );

对应文件为

/admin/lib/Mailbox.php

直接使用用户名执行了sql查询,将获取用户查询结果,并未进行password的判断,而直接set_session( “is_login”, TRUE );从而登录成功,可以继续执行其他的方法,因而只要找一处缺陷方法即可

0409314524-0[1]

登录成功后,如图,发现是未显示状态,但是函数都是可以执行了,因为有sessionid

04093149D-1[1]

然后,漏洞文件为

/fast/pab/module/o_contact.php 代码为

getContactByMail函数为/admin/lib/PAB.php

getshell分析见上个漏洞,getshell过程为,找到一个用户名,执行如下

040931H21-2[1]

其请求为

04093140c-3[1]

然后将PHPSESSID放入cookie,执行如下请求即可getshell。exp中的web地址获取方式为访问/webmail/client/mail/module/test.php即可,无需登录,如图,同时该邮件系统的默认数据库连接帐号umail默认是有FILE权限的,从而可以getshell

04093131B-4[1]

获得执行的sql语句为

150121 0:53:08 1986 Connectumail@localhost on

 

040931M27-5[1]

所以综上,我们只需要知道一个邮箱用户名即可getshell,那如何批量?只需要找个默认存在的帐号即可,数据库如图

0409311060-6[1]

默认是存在一个system帐号的,安装默认生成的,因而可以直接批量。

04093115O-7[1]

批量EXP就不写了吧,

三个请求,一个获得web路径,一个登录获得phpsessionid(system@domain.com即可),一个getshell请求,啥也不提了,随便提交了一个

第一步,获得物理路径请求

第二步,请求为,响应中获得PHPSESSID

 

第三步,将PHPSESSID和路径写入如下请求,执行getshell EXP即可

原文链接:,转发请注明来源!

发表评论

要发表评论,您必须先登录