apk分析入门从0到0.5

点击此处查看最新的网赚项目教程

设备选择,虚拟机or实体机

相较于安卓模拟器,我比较推荐用实体机,首当其冲的可能是因为有些app会检测市面上常见的模拟器如网易的mumu、夜神模拟器等。

虽然可能通过修改模拟器达到运行app的情况,当时仍比较推荐用实体机,况且现在仅拿来测试的话,不需要特别昂贵的设备,我在用的是有些年头的骁龙625的红米note4x,主要可以选择第三方的系统多。

推荐设备

根据系统选设备!!!推荐使用稳定的类原生系统(如LineageOS、魔趣等),国内的miui、flyme的话虽然也能刷入Magisk获得root权限,但是偶尔会有奇奇怪怪的bug...

小米/红米,第三方类原生系统多(LineageOS、魔趣等)、便宜、性能够用(买回来就刷成类原生系统,不推荐用miui搞)

一加,氢os,挺香,定制魔改不太多的类原生系统谷歌家pixel,略贵,出厂就是原生系统,就是系统更新太快

基本环境搭建

类原生系统

LineageOS: (官网),也可以访问国内的镜像站,不过镜像站更新时间不如官网,上面也有很多机型,都是比较推荐的。

工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集_应用工具包

魔趣:,基于 Android 开源项目二次开发,增加的本地化、个性化的功能。

应用工具包_工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集

其他类原生系统,可以去xda论坛的各种机型专区查看。(帖子上会标注,UNOFFICIAL即非官方的,OFFICIAL官方的)

应用工具包_工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集

简易刷入过程

以我手里的625版红米note4x为例:

1.解开BL锁,即BootLoader锁,解锁链接:,可以根据官方文档就行操作,新的小米账号可能会提示要很长时间才能解锁

工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集_应用工具包

2.刷入第三方rec,下载链接

应用工具包_工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集

刷入过程如下:

1.关机后按住音量减键加电源键进入fastboot模式,下图左侧的图案

应用工具包_工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集

2.手机连接电脑,fastboot刷入

fastbootflashrecoverytwrp-3.6.0_9-0-mido.img

fastbootflashboot twrp-3.6.0_9-0-mido.img

fastboot reboot # 重启会自动进入刚刚刷入的rec

应用工具包_软件工具合集_工具软件和应用软件,0,0,0,0.0,0,0,0,,-

苹果系统得安装android-platform-tools,才会有adb、fastboot等,用brew直接安装即可

brew cask install android-platform-tools

3.rec清除数据、刷入系统、等待系统重启

Wipe-->Advanced Wipe-->全勾上-->滑动最下面的Swipe to Wipe

返回上一层,找到Format Data即格式化Data分区,输入yes,右下角的☑️即可

应用工具包_工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集

工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集_应用工具包

重新插拔下数据线,就会在文件管理中显示,苹果系统会在Android文件传输(下载地址:)提示了。

应用工具包_工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集

卡刷包通用刷入方式

将系统包拷贝进去,首页-->选择Install-->选择刷系统包-->勾选Reboot after installation iscomplete即刷完自动重启-->滑动Swipe to confirm Flash(强烈建议使用安卓9的系统,安卓10的系统对/分区读写较为繁琐)

工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集_应用工具包

应用工具包_工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集

Magisk

通过面具Magisk获取完美ROOT,且有良好的插件下载方式,如移动证书的xxxx模块,将用户证书自动移动到系统根证书/system/etc/security/cacerts/路径下

刷入方法:

等待系统重启完成后,关机,音量加键与电源键进入rec。参考"卡刷包通用刷入方式"刷入即可。

Magisk包下载地址,推荐下载卡刷包以及卸载包。

软件工具合集_工具软件和应用软件,0,0,0,0.0,0,0,0,,-_应用工具包

刷入成功后,推荐去隐藏Magic应用,随机生成下包名,有些app会检测,完成后添加桌面快捷方式即可,再次进入就是包名就随机了。

工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集_应用工具包

Magisk模块推荐

常用的magisk模块,提高效率,刷入方法参考通用刷入教程

Move Certificates

将用户手动安装的证书移动到系统根证书/system/etc/security/cacerts/路径下

应用工具包_软件工具合集_工具软件和应用软件,0,0,0,0.0,0,0,0,,-

magisk-frida

利用magisk开启frida,frida是个轻量级别的hook框架,注意安装版本需要与电脑安装的版本相同。电脑上pip3安装即可,pip3 install frida,冲冲冲!!!下载地址:

应用工具包_软件工具合集_工具软件和应用软件,0,0,0,0.0,0,0,0,,-

Riru

Riru的原理是通过替换会被Zygote加载的libmemtrack.so从而实现Zygote注入

下载地址:

工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集_应用工具包

LSPosed

LSPosed 是 Edxposed 的一个新的分支,LSPosed 与Edxposed 相互兼容,却比 Edxposed 更加简洁、易用和高效,是现如今饱受诟病的 Edxposed 的极佳替代品。

下载地址:

软件工具合集_工具软件和应用软件,0,0,0,0.0,0,0,0,,-_应用工具包

安装完成大概是这个样子,先装Riru,重启进系统之后才可以装LSPosed,这两个顺序不能乱的

软件工具合集_应用工具包_工具软件和应用软件,0,0,0,0.0,0,0,0,,-

xposed还是LSPosed?

xposed原版好像是只支持到安卓7.0,7.0之后陆陆续续也有很多类似的,比如太极、edxposed,LSPosed 是 Edxposed 的一个新的分支,所以替换成了LSPosed。

LSPosed模块-sslunpinning

sslunpinning模块能在一定程度上解决服务器服务端校验客户端证书的问题,防止中间人进行攻击。ssl pinning简单重要性具体可以参考:

软件工具合集_应用工具包_工具软件和应用软件,0,0,0,0.0,0,0,0,,-

以某东为例子,模块--sslunpinning--启用模块,配置后推荐重启下手

应用工具包_工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集

抓包软件证书(以burp为例)

工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集_应用工具包

安装完成之后,重启设备,证书变会被Move Certificates模块移动到系统证书目录下(图片为安卓10,强烈建议使用安卓9!!!安卓10测试失败),如果Move Certificates模块移动失败也可以用手动的方式安装、移动证书。

手动安装、移动证书

证书转换,已经是pem格式的证书不需要执行这一步

openssl x509 -inform DER -in cacert_2020_12.cer -out cacert_2020_12.pem

进行MD5的hash显示

openssl版本在1.0以上的版本的执行这一句

openssl x509 -inform PEM -subject_hash_old -in cacert_2020_12.pem

将pem证书重命名

使用上面复制的值(类似于347bacb5)对pem证书进行重命名

mv cacert_2020_12.pem d78f1bf0.0

将新证书放入手机系统证书目录/system/etc/security/cacerts/

adb push d78f1bf0.0 /sdcard/adb shellsumount -o rw,remount /systemmv /sdcard/d78f1bf0.0 /system/etc/security/cacerts/chmod 644 /system/etc/security/cacerts/d78f1bf0.0reboot

代理、流量导向

之前还可以直接通过wifi代理的方法,将手机的流量直接转发至电脑的开放端口上,如burp开的9999端口。

但是越来越多的app开发者会在app运行时优先检测系统的wifi代理设置,如果配置了wifi代理则会屏蔽系统代理,例如OKHttp可以设置Proxy.NO_PROXY来屏蔽系统代理。

工具软件和应用软件,0,0,0,0.0,0,0,0,,-_应用工具包_软件工具合集

通过安装Postern来进行流量导向,Postern是配置了一个本地的vpn将流量转发至配置好的代理端口,如我配置的burp的192.168.1.2:9999,点击打开vpn即可。

进阶环境推荐

查壳

工具软件和应用软件,0,0,0,0.0,0,0,0,,-_软件工具合集_应用工具包

脱壳

既然查到了壳那就得有脱壳,大部分脱壳的思路都是从内存里dump出来dex,例如FRIDA-DEXDump就是这个原理。

FRIDA-DEXDump

下载地址:

FRIDA-DEXDump涉及到frida,所以先测试下frida是否运行正常。

frida-ps -U

能正常返回手机的app列表即可。说明magisk-frida运行正常,frida安装版本也一样。

软件工具合集_应用工具包_工具软件和应用软件,0,0,0,0.0,0,0,0,,-

dump一个dex试试

以酷安为例子

frida-dexdump -n com.coolapk.market

软件工具合集_应用工具包_工具软件和应用软件,0,0,0,0.0,0,0,0,,-

dump出来的dex用d2j-dex2jar转换成jar包即可。

软件工具合集_工具软件和应用软件,0,0,0,0.0,0,0,0,,-_应用工具包

内存中dumpdex只是frida中的其中的一个玩法,更多有意思的可以参考下这个:

Blackdex

BlackDex是一个运行在Android手机上的脱壳工具,支持5.0~12,无需依赖任何环境任何手机都可以使用,包括模拟器。只需几秒,即可对已安装包括未安装的APK进行脱壳。

应用工具包_软件工具合集_工具软件和应用软件,0,0,0,0.0,0,0,0,,-

下载地址:

软件工具合集_工具软件和应用软件,0,0,0,0.0,0,0,0,,-_应用工具包

Brida

brida我不是很了解,是一个burp的插件,我也在学习的过程,推荐一些较好的学习链接:

(这篇比较详细)

下载地址:

工具软件和应用软件,0,0,0,0.0,0,0,0,,-_应用工具包_软件工具合集

其他软件推荐

———END———
限 时 特 惠: 本站每日持续更新海量各大内部创业教程,一年会员只需98元,全站资源免费下载 点击查看详情
站 长 微 信: qs62318888

主题授权提示:请在后台主题设置-主题授权-激活主题的正版授权,授权购买:RiTheme官网

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注