工具篇:01砸壳

因为项目中需要接入某sdk。又因为产品提出来了那种,哎,那个谁,就sdk那个页面好丑,麻烦改下那个页面的交互吧。可以的吧?

ed372f2eb9389b50f7c73c348c35e5dde6116e87.gif

解决办法是利用切面编程去hook sdk内部的某些方法。最近更新了sdk的版本,发现好多之前的hook都失效了。猜想可能是由于sdk内部一些类名或者方法名替换了导致的。很尴尬,就是说要去重新hook啊。

工具篇:01砸壳_第1张图片
N7Z0}{DL4OEU4(3S`($1UH7.gif

利用class-dump将所有的头文件给扒下来。

使用教程:
1.安装class-dump.dmg。
2.将class-dump复制到'/usr/bin'目录下。
sudo cp /Users/xxx/Desktop/class-dump '/usr/bin'
3.拿出你要扒的ipa包,解压,你会发现.app。
4.class-dump -H test.app -o testFile

屏幕快照 2016-09-07 下午12.09.24.png

OK。接下来你看到桌面上出现一个文件夹


屏幕快照 2016-09-07 下午12.11.23.png

这么多头文件?小手一抖,点开看看吧。


工具篇:01砸壳_第2张图片
屏幕快照 2016-09-07 下午12.12.05.png

你妹啊,近4000个头文件。

好吧。剩下的就是在这4000份文件里,找到你要hook的那个类,那个方法。很简单是不是?


工具篇:01砸壳_第3张图片
D6E8D73FD503854EAD8084AB3298C4BC.jpg

呵呵。半天时间过去了。


工具篇:01砸壳_第4张图片
Snip20160907_1.png

说完了。别问我怎么找到的。
答案是猜。

工具篇:01砸壳_第5张图片
CCF91E7EDF457BDE70D6D03011BF208B.png

你可能感兴趣的:(工具篇:01砸壳)