### 简要描述:
Turbomail邮件系统利用xss漏洞登录任意用户邮箱及获得超级管理员权限
### 详细说明:
环境:官网下载的windows的 最新版,虚拟机搭建测试环境,操作系统为windows server 2003,浏览器需火狐浏览器,最新版的好像在chrome下显示不完整
此版本的系统默认安装后root域里会有四个默认用户postmaster、sec_bm、sec_sj、nobody四个帐号,其中postmaster为超级管理员,最高权限;sec_bm和sec_sj是该域里的普通用户,而且该系统默认情况sec_bm帐号的密码为空,且允许登录。由于权限控制不严格,致使该帐号可以更改postmaster用户的密码,从而获得整个邮件系统的权限(修改任意用户密码,查看任意用户邮件等),提交时与平台有重复。
同时系统存在xss漏洞,利用漏洞可以直接向postmaster@root用户发送邮件,利用构造好的js代码,当管理查看邮件时候,即添加了一个帐号为fuck,密码为fuck123的该域里的域管理员用户,然后再登录该用户,修改postmaster的密码,即可获得整个邮件系统的权限。
在发送邮件时候,用burpsuite抓包,修改数据,直接在htmlbody里添加js路径地址,如图
[<img src="https://images.seebug.org/upload/201405/192237176de9d072b105cc6474f9d0ae4a60ee1b.png" alt="a.png" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201405/192237176de9d072b105cc6474f9d0ae4a60ee1b.png)
用户查看后,触发xss
[<img src="https://images.seebug.org/upload/201405/192237368b390a1c5b3b36d4480027c3356ede71.png" alt="b.png" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201405/192237368b390a1c5b3b36d4480027c3356ede71.png)
[<img src="https://images.seebug.org/upload/201405/192238226b81fd1121ff1a183b02b6658f1208a2.png" alt="c.png" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201405/192238226b81fd1121ff1a183b02b6658f1208a2.png)
收到的信息为如下
[<img src="https://images.seebug.org/upload/201405/19223845f56bdd642dc8dfe4263fd9d29a747137.png" alt="d.png" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201405/19223845f56bdd642dc8dfe4263fd9d29a747137.png)
当前一台主机登录的为test001@fuck.com另一台为管理postmaster
[<img src="https://images.seebug.org/upload/201405/192239364febf5bb01911c81d7e8778fcb90e574.png" alt="e.png" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201405/192239364febf5bb01911c81d7e8778fcb90e574.png)
伪造用户,构造一个请求,
```
GET /tmw/8/mailmain?type=updatesession&sessionid=19dffe4H48_0 HTTP/1.0
Accept: */*
Accept-Language: zh-cn
x-requested-with: XMLHttpRequest
Content-Type: application/x-www-form-urlencoded
UA-CPU: x86
Cookie: tm_last_login_uid=postmaster; JSESSIONID=72272D23C3D193779A22F446F5737871; tm_ibc=0
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
Host: fuck.com:8080
Proxy-Connection: Keep-Alive
```
cookie为收到的cookie,sessionid为收到的sessionid,执行成功后,直接url输入
http://fuck.com:8080/tmw/8/tmw/8/next/loading.jsp?sessionid=19dffe4H48_0
其中sessionid还是收到的sessionid,这样即登录成功
如图
[<img src="https://images.seebug.org/upload/201405/19224147b52714902b9b02d7b4da08e7f4774509.png" alt="sss.png" width="600" onerror="javascript:errimg(this);">](https://images.seebug.org/upload/201405/19224147b52714902b9b02d7b4da08e7f4774509.png)
此时是获得sessionid和cookie进行伪造登录,其实js里可以构造添加一个域管理用户的请求,这样,只要管理打开邮箱就会自动添加用户,同时添加的用户默认情况是可以修改postmaster的密码的
同理,可以给任意用户发送邮件,从而伪造登录
### 漏洞证明:
如上详细描述
暂无评论