iOS应用安全:一:class-dump的安装和使用

class-dump的作用

class-dump用于导出App的头文件,并不会导出实现文件,虽然看不到实现文件只看到头文件,但这也是危险的,知道头文件又能读懂头文件这样整个程序的框架就很清楚了,头文件中的属性和方法都是见字识意的,username就是用户名,password就是密码咯,login就是登录方法了,这样子能够知道程序的很多信息。

class-dump的安装

下载class-dump :http://stevenygard.com/download/class-dump-3.5.tar.gz

解压并将class-dump文件复制到/usr/bin目录下

无论是通过Finder还是通过终端命令行的方式结果都是不允许操作/usr/bin目录的,Operation not permitted(操作不允许),这是系统安全的限制,我们将class-dump文件放在/usr/bin中是为了方便使用class-dump, 通过系统的环境变量也可以达到这个目的

首先在主目录下新建一个目录: mkdir ~/bin

然后将class-dump文件移动到~/bin目录下: mv class-dump ~/bin

接着修改class-dump文件的操作权限: chmod +x ~/bin/class-dump

编辑 ~/.bash_profile 文件,在文件的最上方导出 bin目录

使用vi命令打开文件 vi ~/.bash_profile

按Esc键,然后再按 i , 进入编辑模式

在文件的最上头写入export PATH=$HOME/bin/:$PATH

按Esc键, 再按 冒号键:,然后再输入wq (意思是保存并退出)

source ~/.bash_profile

在终端上输入 class-dump 以测试环境变量配置是否成功

class-dump的使用

Xcode新建工程,并创建一个测试类,类中写一些属性和方法,选择真机占位,Command+B构建

右键Products目录下的.app文件, Show In Finder,并使用终端切换到该目录下,然后使用class-dump 进行输出程序的头文件:class-dump -H AppName.app -o 要输出的目录

找到输出的目录,可以看到所有的 .h文件都被导出来了,头文件中的所有属性和方法都是一览无余,一些重要敏感的属性和方法就这样轻松暴漏出来了

0

推荐阅读更多精彩内容