0x00 前言
9月初的时候离开了工作两年的上海,又回到了杭州的一家初创的金融公司。为什么想着换工作呢,主要是想着换个角色和身份,学习下甲方的安全建设思路,从甲方角度思考安全方面的问题。由于行业特性的原因,来了之后才发现自己想法太单纯。。。水太深了。。。
入职之后,总监和我说了下目前公司大致情况,目前的主要问题就是用户、订单信息泄漏。
然后自己就有了个很年轻的想法:”那就应急响应呗“
拿到APP、后台地址以及服务器账号密码,信誓旦旦的准备大展身手。
文章中列举的都是有些异常或者不太规范的点,未提及的暂时都可以认为相对来说是没啥问题的。
0x01 应急响应
首先,分析下问题,由于总监比较忙,只给我说了用户信息及订单信息泄漏,其他就是两眼一抹黑了。
这种情况下,自己就要针对实际情况进行思考了,我这里想了如下几个方面:
先解决下上面的问题,这样我们的脑海里就会知道该往哪查,哪些地方可能会有什么问题。
1.1 用户、订单信息从哪产生?
- 前台APP
1.2 用户、订单信息在哪展示?
- 前台用户APP和后台系统
1.3 用户、订单信息的数据流向?
- 这个暂时先不讨论,涉及到供应链及第三方厂商,后续会单独讨论
1.4 用户、订单信息存储在哪?
- 阿里云RDS
1.5 用户、订单信息泄漏的途径有哪些?
前台客户端
- 水平、垂直越权漏洞
- APP安装包硬编码了数据库的敏感信息
- 存在命令执行漏洞控制了服务器
- 上传了webshell木马控制了服务器
- 接口存在SQL注入漏洞
管理后台
- 后台账号存在弱口令
- 通过某种途径进入后台,比如爆破、未授权访问等
- 管理员Cookie被盗取
运营人员
- 内鬼
- 手机、电脑等终端被病毒木马入侵控制了
好了,大致思路有了,买包瓜子、花生,开瓶旺仔,撸起袖子开始干吧!
0x02 应用层安全分析
2.1 前台安全分析
拿到APK之后,打开APK,进行业务流量数据包抓取,发现所有数据包均被加密过
由于比较敏感,所以后续的图打码可能会有点严重,见谅~
发现数据已被加密,那么如果不知道加密算法,即使有漏洞也是无法利用的,所以得想办法找到加密规则。
溯源加密算法
发现APK可被逆向、反编译获取源码文件,但是并未在APK源码中找到硬编码数据库、服务器等敏感信息。
在源码中找加密算法,发现加解密key直接硬编码在代码中,导致存在敏感信息泄漏
根据算法源码及泄漏的密钥,编写解密脚本。
解密数据包试试
但是,我们可以发现这个用户的唯一标识不是规律递增的,舔了会开发小哥哥,开发小哥哥告诉我用户的唯一标识是经过几个参数拼接的,同时有时间戳。后续和服务端的交互都是通过这个标识进行通讯的,后续的测试也印证了这个说法,没有白舔!
那我就放心了,通过越权漏洞这种途径,是基本上不太可能了。
但是,%&!@$^%*
这个地方给大家留个悬念,大家可以自己想下黑产会怎么搞?后续会揭晓哦~
2.2 后台安全分析
后台地址登录处,最开始是没有任何限制的,导致可直接进行口令爆破
使用社工口令、密码进行爆破,未爆破出存在弱口令的账号。
自认为根据自己的经验和陈酿多年的字典生成的口令还是很全面的,所以弱口令这方面基本上也可以排除了。
接口测试
对后台地址 API 接口进行模糊测试,发现所有接口均需要登录之后才能操作,未发现存在未授权访问的接口。
又去舔了下开发小哥哥,一天就完成了短信验证码+图形验证码的登录方案,果然给力,舔的超值!
0x03 主机层安全分析
按照常规的排查步骤走一遍呗,当然也可以编成脚本跑喽,我个人建议分析、排查类的还是一点点仔细看比较好。
这里只罗列一些常规、简单的,具体可以网上搜下排查的点,不在赘述
查看服务器用户,未发现异常账号
查看服务器网络连接,未发现异常网络连接
查看服务器计划任务,未发现恶意计划任务
查看历史登录日志,未发现异常登录IP
查看SSH日志,未发现异常记录
查看开机启动项,未发现异常
查看是否存在SSH后门及密钥文件,未发现异常
查看是否存在动态链接库后门,未发现异常
查看服务器是否存在webshell恶意后门,经确认,未发现异常
所以,主机层也是没啥问题的。
0x04 日志分析
日志分析的点太多了,比如攻击特征、时间维度、接口特征、IP纬度、请求头纬度等,所以这里就不全部一一列举了,大家有兴趣可以一块探讨。
统计IP请求次数,发现未对安全产品进行有效配置,导致访问日志中记录的都是高防的回源IP
统计接口请求,未发现异常接口请求
根据开发文档,模糊匹配相关用户、订单请求日志
根据用户、请求头等排查分析,暂未发现异常情况
0x05 后续分析
经过初步流程分析排查,发现待改善的问题点还是蛮多的,还得继续舔开发小哥哥。
另外,大家有没有发现,上述所有的排查都是笼统的,不是针对某个特殊的点进行的,比如某个用户纬度的日志分析、RDS、后台等。
由于篇幅问题,以及所涉及的面太多了,所以都会留到后续慢慢整理处理,大家一块加油呀!