Android 逆向进阶
文章平均质量分 79
专栏收录 Android 逆向相关的进阶内容,会不断加入新内容,使其涵盖全面
Android 逆向基础免费专栏:https://blog.csdn.net/dafan0/category_12676250.html
象野VH
爬虫工程师
展开
-
AOSP刷Fart8脱壳机安装及使用
刷机时,如果执行 flash-all.bat 无反应,那执行 fastboot devices 试试,若无设备出现,需要去安装google usb 驱动,具体参考六期-day06-03。我的电脑硬件不支持对AOSP源码进行编译,所以只能用别人编译好的刷机包进行刷机。使用的刷机包是luffy 8期 day37 下的v5目录下的taimen包,这个刷机包里面。刷机过程中,总是提示超过了最大存储空间,需要在flash-all.bat 文件的以下位置添加:-S 256M。原创 2024-06-18 07:25:06 · 23 阅读 · 0 评论 -
Airtest 使用指南
AirtestIDE 安装与启动: https://airtest.doc.io.netease.com/IDEdocs/getting_started/AirtestIDE_install/Airtest 可以基于图像识别来自动化控制 APP。这些方法更详细的用法及示例见 崔庆才 book。原创 2024-06-13 22:07:25 · 140 阅读 · 0 评论 -
unidbg讲解V1
DvmClass,在unidbg执行中用于表示类。DvmObject,在unidbg执行中用于表示对象(基于类创建对象)。DvmObject<?> obj1 = Crypt.newObject("真正的对象");DvmObject<?> obj2 = vm.resolveClass("com/yoloho/libcore/util/Crypt").newObject("真正的对象");方法的签名,用于表示某个方法。emulator,",参见JNI开发时的类型对照表。原创 2024-06-13 22:00:33 · 285 阅读 · 0 评论 -
Android脱壳介绍
这里的 com.jiuxianapk.ui 就是app的包名,上面的语句相当于以spawn的形式进行运行,会重新加载app,并将app的内容加载到内存中,加载后再把里面的内容dump下来,生成dex文件。运行命令,会在运行目录生成dex文件:运行在那个目录都可以,生成的dex文件会放在那个目录。全选这些dex文件,直接拖到jadx中,即可完成脱壳解包。原创 2024-05-12 16:59:04 · 178 阅读 · 0 评论 -
解锁 root 教程
参考链接:原创 2024-06-03 07:14:35 · 17 阅读 · 0 评论 -
Android逆向抓包技巧 - 抓包总结
可以思考是否是使用其他框架如flutter进行的开发或使用了自定义的协议进行的网络通信,此时需要先借助更加底层的抓包工具如wireshark进行协议分析,明确具体使用了那种协议后,才好确定后续的绕过方案。也许以上方式都尝试了,结果依然无法抓包。抓包前,可能会遇到 app 检测。原创 2024-06-02 08:26:07 · 112 阅读 · 0 评论 -
Charles 安装与配置
Charles是一个HTTP代理与监视软件,方便开发人员查看手机与Internet之间的所有HTTP和HTTPS网络记录Charles 官方网站:https://www.charlesproxy.com/Charles 下载网址:https://www.charlesproxy.com/download/原创 2024-05-04 10:07:01 · 663 阅读 · 0 评论 -
Android逆向抓包技巧 - ROOT检测绕过
现在很多app特别是银行、政务app等在使用时,假如你的手机已经被ROOT了,就会弹框提醒你的运行环境不安全,然后某些特定功能就无法使用。ROOT的检测与绕过是一种基于Pattern的对抗,检测方根据ROOT后手机的一些特征Pattern来检测ROOT,而绕过方则是根据检测方的各种检测方式来设计各种绕过方法。原创 2024-04-28 18:43:31 · 237 阅读 · 0 评论 -
Android逆向反调试 - Frida 检测绕过
进入app安装目录,把 libmsaoaidsec.so 删除即可。app安装目录位置,/data/app/,进入后再进入/lib/arm64/,运行 rm libmsaoaidsec.so 即可。然后在MT管理器中将怀疑的 so 文件移动到别的地方后进行测试,看是否还会出现闪退现象。hook发现,app会出现闪退现象,原因是这个app做了frida反调试。这个就类似frida-server防hook的升级版,启动后即可使用。有些app运行时会监测frida的相关特征,监测到之后就会直接闪退。原创 2024-05-12 17:10:25 · 1003 阅读 · 0 评论 -
Android正向开发实现客户端证书认证
如果第三方模块被混淆,那hook方式均不能生效。这时就需要根据系统包去定位校验的函数,因此需要对安卓开发者是如何实现客户端证书校验的有一定了解,接下来就介绍这部分内容。开发者实现客户端证书校验的本质是:证书/密钥 + 代码。在形式上有:公钥校验、证书校验和Host(主机)校验。原创 2024-05-18 16:20:03 · 457 阅读 · 0 评论 -
Android逆向抓包技巧 - Hook 底层通信
平时开发使用的 http 或 https 均属于应用层的协议,其本质都会调用 TCP 发送请求。例如:你在 Python 中使用 requests 模块发送一个 http 请求,其底层就是使用 socket 模块 + TCP 实现发送的请求。相比 http ,在第二步多了一个请求的收发以同步随机字符串。原创 2024-05-25 11:36:07 · 128 阅读 · 0 评论 -
Android逆向抓包技巧 - 服务端证书认证
客户端证书校验和服务端证书校验的表现都是app不能加载出有效信息,但在客户端证书校验中,Charles抓包得到的验证码为2开头的,在服务端证书校验中,Charles抓包得到的验证码为4开头的。原创 2024-05-12 16:38:45 · 778 阅读 · 0 评论 -
Android逆向抓包技巧 - 客户端证书认证进阶(代码混淆)
定位混淆后的代码位置Hook绕过如果定位混淆后的代码呢?hook系统方法,根据调用栈寻找到 doHandshake 被混淆的位置。console.log("参数:", a, b);});对比分析,先找到 connectTls 位置,由此展开后续分析。如果绕过?绕过pinner证书,最简单直接在connectTls中就能找到他的类和方法被混淆后的名称,可以直接Hook。例如:上面的第52行绕过证书校验方式1:关键字搜索定位代码(费劲)方式2:Hook底层校验的方法,直接绕过。原创 2024-05-13 22:37:08 · 1121 阅读 · 0 评论 -
Android逆向抓包技巧 - 基于Flutter开发与自定义协议
所以就有了降级方案,可以通过屏蔽 IP 实现。找到 IP 后,通过防火墙屏蔽,就可以正常使用 charles 、fiddler 抓包了。比如美团系(美团、点评、滴滴)使用了一种叫做移动长连接的技术,在打开 App 的时候,移动端和服务器建立起 tcp 连接,后续的请求和接收都走该通道,导致抓不到 http/https 的数据包。不过这种技术在 TCP 通道无法建立或者发生故障时,会选择使用 UDP 面向无连接的特性提供另一条请求通道,或者绕过代理长连服务器直接向业务服务器发起 HTTP 公网请求。原创 2024-05-19 06:40:14 · 261 阅读 · 0 评论