在开始之前多说一句,部分漏洞已经修复,只是为了让整个漏洞报告看起来更完整。
1. cms.niu.com 文件上传漏洞 -- 已修复
cms.niu.com 使用了 FineCMS,存在漏洞: WooYun: FIneCMS免费版无条件getshell (附poc脚本) ,可以直接获取 webshell
目前该漏洞已经修复,之所以提到是因为后面一些漏洞是由该漏洞引发。
偶然在 /data/xiaoniu/ 目录下发现一个文件,deploywebpm2.json,内容如下
看代码应该是小牛 app 的数据库配置文件,暂且不表,先看后面。
2. 邮箱弱口令
小牛使用了 263 的企业邮箱,简单测试存在两个弱口令
大多使用了 xiaoniu2014 xiaoniu2015 这两个弱口令,通过邮箱弱口令发现一些小牛的 IP 123.57.190.83 10.251.200.254
3. 123.57.190.83 redis 弱口令
这个 IP 应该也是在 cms.niu.com 看到的,因为 cms.niu.com 漏洞已经修复,所以无法再次确认。
123.57.190.83 这个 IP 开放 redis 服务,并且启用了认证功能,测试发现存在弱口令 xiaoniu
结合 redis 最近被报告出来的缺陷,通过备份文件到 authorized_keys 或者 cron 可以直接获取服务器的控制权限。
通过 http://zone.wooyun.org/content/23858 帖子中的方法可以反弹 shell
权限为 root
4. 10.251.200.254 redis 弱口令 -- 已修复
通过 123.57.190.83 对 10.251.200.254 测试发现同样存在 redis 弱口令 xiaoniu,目前已经修复。
用同样的方式可以获取 10.251.200.254 服务器的控制权限,发现该服务器为小牛用户数据库服务器,在服务器上找到 mongodb 数据库连接帐号和密码
数据库中有 23w 多用户,密码加盐加密存储。
5. 连接 app 数据库
在之前我们知道了 app 数据库的连接信息,发现有访问限制,但是通过 10.251.200.254 这台服务器却可以登录
果然存储了和电动车相关的数据,查看了 niu_gps 的数据信息,有 28 亿条记录之多。
任意查询一条记录,可以获取到电动车的 sn_id,以及在某个时间点商的经纬度,根据经纬度可以获取到该电动车的实际地理位置。
根据这些数据,完全可以知道任意一辆电动车的位置,以及行车路线,以及等等等等。
以上过程仅仅是为了安全测试,没有做任何恶意操作,过程中获取的临时数据也已经删除。