安卓app通信破解思路

什么情况需要破解 app 通信

1、自动模拟用户行为调用接口,比如最近让人很烦的 某强国 app,和一些考勤 app 的签到,或者做 Dos 攻击。

2、获取 app 的通信内容,窃取信息或者对 app 服务器数据爬取获取用户信息或新闻数据。

3、找到服务器的权限判定漏洞。后端程序经常会把一些权限判断交给客户端而服务器未做权限判断的漏洞,可以做些越权之举。比如某立方。

破解方案

1、抓包

如果没有用 https 的可以直接抓包,并可以做中间人攻击。 (某立方在这一步,还有鲸鱼宝以前在这一步。

如果用了 https 则需要在客户端装上证书,就可以查看到 https 的加密内容。 (某我么在这一步

如果做了额外加密则装了证书也无法看到,需要分析客户端源码找到加密方法和加密密钥。(大部分的新闻 app 和 billli 会做到这一步)

也有没做额外加密的只做了 md5 校验的,这种情况可以获取数据但无法更改和发起数据请求,同上需要分析客户端源码找到加密方法和加密密钥。(比如某趣)

2、客户端分析

1、反编译看源码,加固的情况没试过,一般如果没做混淆就是裸奔,做了混淆也只是加件可以脱的衣服。根据接口参数的关键字去搜索代码分析,找到加密方法和加密 key,如果放在 so 中就是 c,c++的反编译分析了,没试过。

2、将反编译出来的包加日志或把日志开关打开再打回去做日志分析,没试过,要研究下。

3、同二如果 app 开发者不谨慎可能会把开发日志放出来,或引用的第三方日志,查看下日志也许可以发现什么。

4、如果是混合 app 如 react native 则分析 js 文件,没试过。

拿到通信权限做什么

<<<<<<< HEAD

拿到通信权限做什么

1、如果app的id是自增,则可以采用遍历的获取信息(facebook好像出过这种事故,大部分公司目前也是用id自增的方案),否则可以看有没有用户关系通过爬取关系网获取数据,没试过。

1、如果 app 的 id 是自增,则可以采用遍历的获取信息(facebook 好像出过这种事故,大部分公司目前也是用 id 自增的方案),否则可以看有没有用户关系通过爬取关系网获取数据,没试过。

c114d5355af16519045d17f51cf1bd5b2c7277b7

2、对系统权限测试,查找哪个地方权限没控制好。

3、看下用户登录是否有做验证吗,如果没有或简单的验证码,可以试下字典随机用户破解或单个用户暴破。破解成功后可以用撞库,试用户其它的账号,没试过。