zoukankan      html  css  js  c++  java
  • 最近3款Android APP逆向分析总结

    项目需求,最近team逆向了3款竞品APP,总结一些经验和想法,

    三款APP分别是A、B和C,

    A:

    无法中间人,抓不到包,一旦走Charles,则提示更新APP。

    一定是做了证书校验,Android里面是SSL Pinning,分析后是在Java侧做的,直接hook掉校验函数即可。

    B:

    可抓包,但需要socks5代理,https则抓不到

    分析其有一个x-sign请求签名,分析发现调用的native签名函数。IDA看了下jump来jump去,做了混淆,初步分析没有VMP,但对我们还是太难。

    因此尝试hook的方案,成功之。这样部署:

    申请一台mac,安装mumu模拟器,部署破解服务。mac ssh tunnel到爬虫服务器。爬虫集群请求前,发params到本地tcp端口签名。

    签名速度大约能达到100QPS,可以通过多开提高之,但已经够用了。

    C:

    这款分析失败了,但由于Desktop与APP使用的相同签名算法,所以算法本身是破解了的。

    Desktop JS太好调了,所以要经常换,且不要跟APP一样。

    APP失败的原因是,使用的react native,请求是从JS发出的,导致无法跟踪debug。

    尝试了xposed okhttp3的库(分析发现其请求走的这里),cpu profile但都没有跟到请求签名位置,因为具体请求是在js发出的,这里暂时还无从入手。

    PS:okhttp3跟踪时发现,其add queue是异步的,所以hook这里意义不大,打印出的调用栈也没什么帮助,毕竟只到.run()。

  • 相关阅读:
    mac 个人账户环境变量位置
    版本控制工具Git
    xmind导图用例转换为表格用例
    Mysql清空表(truncate)与删除表中数据(delete)的区别
    log4j日志级别及使用规范
    洛谷 P3807 【模板】卢卡斯定理
    jmeter环境配置与java环境配置
    NOI2020乱搞记
    Re:ゼロから始める文化課生活
    阅读书单
  • 原文地址:https://www.cnblogs.com/gm-201705/p/14017772.html
Copyright © 2011-2022 走看看