首先声明: 此次逆向只为学习交流使用,切勿用于其他非法用途,关键代码均已打码

简介

上一篇主要是分享frida的一个介绍和使用, 现在我们使用frida来对一个安卓app进行一个实战破解, 本篇分享讲到一些java逆向,和简单的so分析,我大致讲一个app的逆向过程,有不懂的可以关注公众号留言,我会一一回复。

分享内容主要是为学习交流, 也希望可以大佬们一起学习,探讨。

工具(环境):

  • APP
  • charles
  • Frida
  • JADX
  • IDA pro

逆向分析:

通过charles抓包分析看到, app走的都是post请求, 发现请求data里有个newSign,看着像md5, 请求headers 没啥重要信息, 那我们今天分析一下这个newSign是怎么来的。

使用JADX打开app

先使用搜索大法,看一下newSign,是否在代码中出现。

通过搜索大法, 跟出了这么一段代码, 因为我们想要的数据基本都是走的post请求,所以我们看第一个判断里, 是调用了RequestUtils 中的a函数和b函数。

用frida objection 看一下requestsUtils 类下的函数, 看到,方法下有4个函数,但是具体用到的只有两个,我们具体hook一下函数看一下返回值

通过hook发现,这个函数返回值和我们抓包一样

这是函数java层具体代码, 最后可以看到,把两个参数进行了一个aes加密,然后再md5。 ok, 真相越来越近,继续往下跟AESEncrypt类都做了什么操作, 因为这个类里调用的都是AESEncrypt.b函数,所以我们直接去跟这个函数就好。

这里可以看到加载了so,还有N多个nativ函数,这些可以先不管,我们先hook一下b函数,传进来的参数都是什么。

传进来的两个参数,第一个是对象,可以先不管,因为根本没有用到,第二个 有没有觉得很眼熟! 是的,就是data里的key和value相加的一个字符串, 其实到这里,根据上面的java层代码,我们已经可以猜出个大概,通过调用native 方法 getByteValues 获得一个 密钥,然后进行一个取反的操作,然后一起扔到so里做了些处理,然后aes加密扔了出来, 因为我们不知道是使用哪种模式,所以我们打开ida看一下so文件

打开so ,具体过程就不详述了, 最后是跟到这个函数,基本可以知道是一个aes 16位的加密了, 咱们最后用frida hook一下看看吧~~

ok 到这里,加密基本就已经清晰明了了, 这个密钥我看过了,是可以固定的。
请求body > 进行一个字符串操作 > aes加密 > md5 = newSign
接下来就可以用代码进行模拟一下,我用的是python其实啥都行。

python代码,通过。

通过之前我们对Frida用法的了解和掌握, 破解一个简单的app就非常简单了,

代码放到了我的公众号 爬虫攻城狮 回复 newSign

在这里会不定时的分享一下,爬虫的奇淫巧技,实战中遇到的加密解密,和一些大厂的加密hook和破解,有些内容不过审核,我会提前发到公众号上,大家可以关注交流。

安卓逆向神器frida-(2) 逆向破解X鞋app相关推荐

  1. 精品连载丨安卓 App 逆向课程之二逆向神器 frida 的介绍

    " 阅读本文大概需要 8 分钟. " 前面我们介绍了精品连载丨安卓 App 逆向课程一之环境配置,下面我们来接着介绍一个安卓 App 逆向大杀器-- frida. 前阵子受< ...

  2. APP爬虫| 逆向神器 frida 初试

    前言 frida 真的是app逆向的神器,当你遇上他的时候,就会爱上他. 这篇文章主要是通过自己写个app的demo,然后一步步的hook它.之后会有系列的文章介绍frida对其他app的应用. 知识 ...

  3. 【Android 逆向】Frida 框架 ( 安装 frida 12.7.5 | 安装 frida-tools 5.1.0 | PC 端 frida 与 安卓模拟器端 frida-server )

    文章目录 一.安装 frida 12.7.5 二.安装 frida-tools 5.1.0 三.PC 端 frida 与 安卓模拟器端 frida-server 一.安装 frida 12.7.5 前 ...

  4. 安卓协议逆向之frida hook百例二

    安卓协议逆向之frida hook百例二 各位大佬好 我是一位往Android安全方向走的小菜鸟一枚 目前也是很努力在学 这个系列也会一直更新 记录自己的学习过程 大佬多担待担待 有出错的地方也帮忙指 ...

  5. app反爬测试之apk逆向分析-frida

    前言: 目前为止,很多app的防护基本也还是用的ssl pinning检测证书. 因为,目前的app要么不用ssl,要么用就是一般的ssl,基本就是在手机上装个相关软件 的代理即可,而且这个代理基本就 ...

  6. 安卓逆向小案例——阿里系某电影票务APP加密参数还原-Unidbg篇

    安卓逆向小案例--阿里系某电影票务APP加密参数还原-Unidbg篇 一.前期准备 使用unidbg还原参数时,首先需要找到指定的native方法和对应的so文件.而锁定生成加密参数的native方法 ...

  7. 记一次安卓小程序sign的逆向

    记一次安卓小程序sign的逆向 ​ 最近因为疫情原因居家办公了,而且任务量比较大,其余的时间也都在学习,这次记录一个前几天遇到的一个特殊的sign值的逆向,之前写的安卓测试技巧阅读量还可以,可以看出大 ...

  8. 视频教程-UE4 Unity FPS 安卓手游 和平战场 逆向设计开发-其他

    UE4 Unity FPS 安卓手游 和平战场 逆向设计开发 精通windows下C,C++编程,深入理解指针,数据结构,精通linux下C,C++编程,多线程及锁机制,进程间通信,TCP和IP协议, ...

  9. iOS安全逆向之旅---安全逆向环境搭建和工具使用介绍

    一.前言 这是2020年第一篇文章,我们从今年开始主要介绍iOS安全逆向相关知识,介于之前已经了解了Android逆向相关的知识,所以这里会相对比较容易入门,本文就来介绍一下iOS逆向需要准备的工具和 ...

最新文章

  1. 第三代测序单分子荧光测序之Pacbio 测序原理
  2. 某站点下载资源自己主动评论器
  3. asp.net Repeater取得CheckBox选中的某行某个值的c#写法
  4. efcore 新特性 SaveChanges Events
  5. 工程师和科学家有什么区别
  6. 接入广域网技术——NAT内、外部网络地址转换
  7. wegwegwegwegweg
  8. centos6.5 x86_64安装rsyslog + loganalyzer
  9. Windows2003 Server下尝试360安全卫士6.0
  10. java基础试题_Java基础测试题带答案
  11. 单片机c语言三角波采样点,单片机课程设计---信号发生器.doc
  12. PDF编辑器中文版怎么插入PDF空白页面
  13. Qt5下载安装及环境变量配置详解
  14. electron 打开选择文件框
  15. 数字电路实验(三)——加法器、运算器
  16. 【Python】京东自动下单抢购脚本——双十一购物小技巧
  17. [2016][34]基于大数据的牛顿(Knewton)平台自适应学习机制分析
  18. POI Excel实现内容替换
  19. prometheus监控zookeeper
  20. 安徽大学计算机考研考情与难度、参考书及上岸前辈备考经验指导

热门文章

  1. navicat创建连接 2002-can‘t connect to server on localhost(10061)且mysql服务已启动问题
  2. 如何获取网络视频(或者说后台返回视频URL)第一帧图片以及获取本地视频的第一帧图片
  3. iOS,在应用之间共享文档
  4. android studio安卓手机tcp通信打开app自动连接,连接失败自动重试8次
  5. python批量检索文献_Python+Selenium,让浏览器自动帮你下文献
  6. 数据结构实验4:KMP
  7. 介绍一款CD4066四双向模拟开关的测试电路
  8. 近段时间的学习碎片整理(6)
  9. Material设计之Palette
  10. 大学英语b和计算机三级,大学英语三级B真题2018年06月