关于app逆向工程的一些方法

作者作为爬虫从业者,分享app逆向与hook技术。介绍了dex2jar、jd - gui等工具,讲述破解某鱼和某夕夕apk的过程,包括解包、转换jar包、搜索关键词等,还给出hook代码示例,指出hook可在目标方法前后执行,阿里app反hook待大神解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本屌是一个苦逼的爬虫,从入行到现在一年多,接触过各种反爬,什么检测自动化之类的都常见了,碰到js加密、app逆向的采集基本都是歇菜了,不过慢慢的还是接触这个,慢慢的学了很多。关于js解密的已经有一篇文章了,如果我说的不明确的话可以留言给我,我会回复的.

首先说一下做app逆向的几个工具,

1.  dex2jar 这是个jar包,版本没啥限制选一个合适的版本就好

2.jd-gui这个可以将你反解出来的jar包打开,看里面的代码和结构

3.一台装有xposed框架的root手机,本人用的华为的nexus 6p  (市面上都是二手的,最好买的时候换个电池,不然一直重启啥的)

4.android studio 编译你的apk,将你的xposed 插件装到手机上。

5.一定版本的app apk文件

由于工作的需求,破解了某鱼和某夕夕的apk。

首先将你的apk后缀改成  .zip,然后将你的包进行解压,有的解压工具可能是解不了的,换一个工具 或者用 unzip命令去解包,解了包 里面会出现很多文件 ,我们需要的就是 classes.dex  可能会存在多个类似的文件,我们只要这一个就好,将这个文件拷贝到下载好的 dex2jar 文件中,将你这个文件中的  d2j-dex2jar.sh     d2j_invoke.sh  修改权限为可执行,然后执行  

sh d2j-dex2jar.sh ./classes.dex

他会将你的包改成一个jar包,classes-dex2jar.jar,ok  你拿到这个jar包 就可以放到jd-gui中 了,里面会看到他所有的类和方法(有可能是混淆过的哦),这就该用到了这个工具的搜索功能了,搜你想hook的关键词,除非所有的类和方法都混淆过,不然你一定可以找到你想要的东西。

 

我想要的就是列表页的数据,搜索一下goods  respoinse 等关键词,轻松的找到 

com.xunmeng.pinduoduo.ui.fragment.search.entity.SearchResponse  这个类下面是我想要的方法。

既然找到了 接下来就是 在android studio中写hook代码咯

public void handleLoadPackage(final XC_LoadPackage.LoadPackageParam loadPackageParam) throws Throwable{

        if (loadPackageParam.packageName.equals("com.taobao.idlefish")){
            XposedBridge.log("PackageName====>"+loadPackageParam.packageName);
            XposedBridge.log("P
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值