这两天在看iOS逆向工程方面知识,用到class-dump,之前用过,重装mac系统后就木有了~
现在系统版本:macOS Sierra 10.12.1 (16B2657)
一般流程:
1、在官网 http://stevenygard.com/projects/class-dump/ 下载安装包(mac上选.dmg)

2、双击.dmg,得到以下文件

3、将class-dump可执行文件拖到/usr/bin下(或者用mv命令)
4、终端中输
class-dump --v
就可以看到版本号啦~~
不过,往往事情并不是那么顺利。。遇到几个坑,记录下:
1、遇到官网 打不开情况,只能到github上找资源,找个✨比较多的

下下来运行,报错 -- libcrypto找不到,查了一下需要OpenSSL编译,百度了很多,发现不是年代太久远就是用不起,最终还是放弃自己编译,求助github,

看readme,运行.sh脚本,之后在lib文件夹中就有

用终端命令查看支持环境
xujiedeMacBook-Pro:lib xujiyasushi$ lipo -info /Users/xujiyasushi/Downloads/OpenSSL-for-iPhone-master/lib/libcrypto.a
Architectures in the fat file: /Users/xujiyasushi/Downloads/OpenSSL-for-iPhone-master/lib/libcrypto.a are: i386 armv7s armv7 x86_64 arm64
把libcrypto.a导入到class-dump项目中,编译运行得到可执行文件class-dump.
2、将class-dump移到/usr/bin时不成功,权限不够
Operation not permitted
搜索之后发现,是El Capitan 加入了Rootless机制,不再能够随心所欲的读写很多路径下了。设置 root 权限也不行。
解决办法:重启电脑,启动时按住command+r,进入恢复模式,打开终端(Terminal)。
csrutil disable
重启即可。
恢复默认enable就好了。
网友评论