泄密无花 发表于 2023-4-12 11:56

【原创】安卓逆向实例 - 滴答清单【Frida版VIP】

0x00 前言

练习时长两年半的Frida版本逆向VIP来了{:5_124:}

0x01 准备工作
1、滴答清单 v6.5.3.5(20230412)
2、Frida v12.8.0
3、miniconda 自选版本

0x02 脚本编写
1、一切为了偷懒!
1)一键启动frida-server

2)Hook VIP的JS脚本

3)启动命令
frida -U -f cn.ticktick.task --no-pause -l isPro.js

0x03 逆向思路
1、寻找要Hook的方法
直接搜索isPro()

简单分析一下,只要赋值返回1即可成为VIP
2、确定要Hook的类
把Smail转成Java代码

MT管理器:长按箭头处,选择复制类名

3、编写脚本

脚本会输出修改前和修改后的返回值,并且修改返回值为:true

0x04 Hook
1、Hook之前
修改前:无法使用外观中的皮肤,点击使用会跳转到VIP付费界面

2、使用frida hook
1)运行一键启动frida-server脚本
2)运行hook使用的js脚本
命令:frida -U -f cn.ticktick.task --no-pause -l isPro.js

3)Hook之后
修改后:成为VIP了,并且可以使用VIP外观


0x05 总结
1、多个重载方法报错
报错:
Error: isPro(): argument count of 1 does not match any of:
      .overload()
解决方法:
Hook 的方法 isPro() 存在多个重载版本,并且在实现中没有正确匹配方法参数。因此,Frida 无法匹配正确的方法签名并报错
针对这个问题,需要使用 overload() 函数来指定正确的方法签名


多写几遍脚本就好了

泄密有花 发表于 2023-4-12 18:08

大佬 牛的啊{:5_117:}

白白桃 发表于 2023-4-13 08:44

谢谢大佬分享,尝试复刻学习一下

bnjzzheng 发表于 2023-4-28 14:13

感谢分享。

PDWORD 发表于 2023-5-24 01:42

感谢分享
页: [1]
查看完整版本: 【原创】安卓逆向实例 - 滴答清单【Frida版VIP】