记一次白嫖X站盒子App的渗透测试

文章来源:hack学习呀
无意间得到一个你懂的APP地址,为了保护祖国的花朵不受到摧残,能有一个健康、安全的网络环境.于是有了这个故事(给钱是不可能给钱的,只能白嫖这样才能维持生活这样子)。
81297-61456xxlgw8.png

E4A写的**直播聚合盒子
83863-evhq72xwgau.png

Apk反编译发现经过了360加固。这里我技术菜采用xposed+反射大师的方式进行自动脱壳(如果加壳的版本比较低)。

模拟器安装好xposed+反射大师后运行反射大师选择该app(都可以直接百度下载)
21874-9etistf4vlu.png

单击选择这个软件
24078-2dykg79ffm9.png

然后选择打开,然后在目标软件的窗体上会多出一个六芒星的浮层。
84829-s2dhwu6p6tm.png
点击六芒星然后选择当前activity。
57205-e494j3sthbi.png
长按选择写出dex
09615-0qls3fwtusah.png

最后我们从模拟器中把提取的dex转换成jar就可以直接进行反编译了。

同时对APK进行抓包(httpcanary)
92484-fppquvzcyk.png

得到api接口地址,发现是通过ip+端口的形式,常规操作nmap+后台扫描器进行扫描
74255-a0xuq6pmwyb.png

发现后台源码为某套开源网络验证系统,后台没有验证码,爆破也没成功

于是下载源码后进行本地搭建与审计。

35835-jpfzyc9drsi.png
32746-vl8d4n4wmye.png

发现该套源码对外交互最主要的是api.php这个文件。

注入什么的都使用了addslashes进行了过滤,暂时没仔细看,不过发现了一处上传非常可疑。但是要使代码执行到这一地方就必须绕过sign签名校验。
89794-zokc5o9pyjc.png

回到校验处的代码跟进sign函数。
73574-z65i2vl1hgf.png

需要传入$data,$appkey,$sign_t

通过上面的调用可以知道$data就是get过来的action,$app_have['key'],$app_have['sign_t']的值我们并不知道。此时其实有2条路可以走。

第一种就是对$app_have['key'],$app_have['sign_t']的值进行破解

第二种就是反编译apk代码,到里面找到

$app_have['key'],$app_have['sign_t']的值。
51385-q8a2a3ealag.png

在本地搭建的后台发现appkey的好像是一串md5 sign有效期也就是$app_have['sign_t']默认是100秒,

查看源码发现appkey的生成方式其实是调用time()函数得到时间戳进行md5加密,那这就存在暴力破解的appkey的风险了。Appkey能够破解就可以伪造任意签名。

再次分析apk

62556-ewkrdoggamh.png

搜索getinfo发现了请求了一个网页然后进行rc4解密。直接访问是乱码,于是进行rc4解密

这其实也有点坑调用的是e4a的解密,于是我还特地下了个e4a利用e4a提供的rc4演示工具解密才成功
50918-2sih4mx5kwa.png

然后从解密的文件中得到了appkey值,但是还需要个sign_t的值才行。

继续从源码中
16967-la6ofkueyn.png
28237-c3068hktc3a.png

得到sign_t的值为10000,然后开始伪造签名
13197-kbjggkor12.png

把sign方法提取出来。
29840-hnh3e9o1ato.png

从上面代码知道$data是action的值,然后把分析apk得到的appkey和sign_t填入传入返现生成出来的sign是一致的。
79347-qnowssyajzi.png

构建表单提交到alterpic同时要指定type为bbp,token的值就用之前抓到的值。

06875-l45fxpgvcu.png

生成调用alterpic的sign值,修改token。
02668-8xmjfuv9hg9.png
提交后提示提交方法不正确,其实已经上传成功,文件名是/pic/用户id+上传的格式。用户id在getinfo的返回包中可以看到。

61401-vu5y7ll9jp.png

Getshell成功。

额外发现:
71339-qkrxargdstk.png

其实在这套源码中存在一个vip.php文件
53575-hkepoyf2enr.png
获取ip的方法改xff头就可以伪造,也可以直接获取永久VIP。

点赞,转发,在看

原创投稿:cacker

一则很香的广告

15093-wlt0e29sm2m.png

本文经授权后发布,本文观点不代表立场,转载请联系原作者。
〖教程〗RDP会话劫持 Ladon无密码登陆管理员桌面会话
« 上一篇 07-30
CVE-2020-10713: GRUB2 本地代码执行漏洞通告
下一篇 » 07-31