Class-dump 安装和使用记录(导出应用的头文件)
class-dump算是逆向工程中一个入门级的工具,可以很方便的导出程序头文件,可以轻松的了解程序结构方便逆向。安装包下载地址:http://stevenygard.com/projects/class-dump/ 。选择dmg文件下载后,将dmg文件中的class-dump复制到/usr/local/bin目录下, 在终端输入 class-dump,显示如下图所示就可以正常使用 class-dump 命令了。

2.使用方法
命令如下:$ class-dump -H /Users/yoowei/Library/Developer/Xcode/DerivedData/yoowei-eeflvsbkhofghkdmzajophvemmfc/Build/Products/Debug-iphonesimulator/yoowei.app -o /Users/yoowei/Desktop/dump
解释:
/Users/yoowei/Library/Developer/Xcode/DerivedData/yoowei-eeflvsbkhofghkdmzajophvemmfc/Build/Products/Debug-iphonesimulator/yoowei.app是yoowei.app的路径
/Users/yoowei/Desktop/dump 是存放dump出来的头文件的文件夹路径
结果如下图(展示部分):

其中比如打开HWAccountTool.h文件,如下可以清晰的看见方法结构

注意:class-dump的作用对象必须是未经加密的可执行文件,而从App Store下载的App都是经过加密签名的,相当于有一层“壳”,class-dump应付不了这样的文件。一般要先用AppCrackr来砸壳,砸壳方式在这里不做介绍。有一个简单的方法,在一些第三方软件下载应用的越狱安装版,这样版本的壳已经被手动砸开了。
以前我们利用老版本iTunes下载IPA文件后,如果想查看包内容,可以修改.ipa后缀名为.zip,然后解压即可,然后在payload里面会发现.app文件。在Payload文件中选中.app文件,然后右击,选择Show Package Contents(显示包内容),这样就可以获得项目中所使用的资源了。
Class-dump 安装和使用记录(导出应用的头文件)的更多相关文章
- 用javah 导出类的头文件, 常见的错误及正确的使用方法
******************************************************************************** 用javah 导出类的头文件, 常见的 ...
- 【经验分享】 解决CentOS7 安装VMTools提示找不到Kernel头文件的方案
配置一个Linux的开发环境,用VM10+CentOS7(Kernel版本3.10.0-327.10.1.el7),之后发现VMTools功能不全,查证后发现需要卸载重装,于是开始折腾. 按照各种说明 ...
- 安装psutil时提示缺少python.h头文件(作记录)
通过pip或者源码安装psutil,都会提示缺少python.h头文件,错误提示如下: ... psutil/_psutil_common.c:9:20: fatal error: Python.h: ...
- 利用虚函数减少导出DLL的头文件依赖
概要 设想这样一个场景:我有一个类FunClass,它的声明位于FunClass.h,并且在FunClass.h中,我还引用了secret.h. 现在我需要把FunClass导出成DLL文件供别人二次 ...
- 安装VMware Tools找不到内核头文件
http://blog.csdn.net/bobbat/article/details/38568885 安装VMware Tools,解决无法找到kernel header path的问题 安装 V ...
- 如何安装psutil以及提示缺少python.h头文件
下载psutil 下载地址https://pypi.python.org/packages/57/93/47a2e3befaf194ccc3d05ffbcba2cdcdd22a231100ef7e4c ...
- Mac下安装m2crypto 解决找不到openssl头文件的错误
直接复制整段到终端运行 sudo env LDFLAGS="-L$(brew --prefix openssl)/lib" CFLAGS="-I$(brew --pref ...
- 将Chrome浏览器中的扩展程序导出为crx插件文件
将Chrome浏览器中安装的插件程序导出为crx插件文件 以360急速浏览器为例进行导出crx插件程序 1.在Chrom商店中找到需要的插件,安装到浏览器的扩展程序里面()IDM Integratio ...
- 在CentOS6上编译安装实现LAMP(php-modules)+phpMyAdmin安装过程全记录
php与apache协作有三种模式:CGI.modules.FastCGI. 在CGI模式下,用户请求php文件时,apache会启动响应进程,调用php处理器处理请求,然后将结果返回给客户端.用户响 ...
随机推荐
- tp5简要
1.实例化模型 namespace app\web\controller; use think\Controller; use app\web\model\Member; use think\Load ...
- 大数加减法 - java实现
计算机处理的各种数据类型都有个范围,超出范围的就处理不了. 如果做超大数运算加减乘除,普通方法肯定是不行的,那么我们遇到大数的运算怎么处理呢?今天介绍一种大数加减乘除运算的方法 思路: 1. 将两个特 ...
- P2049 魔术棋子
题目描述 在一个M*N的魔术棋盘中,每个格子中均有一个整数,当棋子走进这个格子中,则此棋子上的数会被乘以此格子中的数.一个棋子从左上角走到右下角,只能向右或向下行动,请问此棋子走到右下角后,模(mod ...
- keepalived + nginx(负载均衡反向代理HTTP,https) + tomcat(HTTP,https)
基本架构: nginx(192.168.116.198) client --->keepalived(116.200) ------> tomcat (192.16 ...
- 记一次异机rman还原后的操作
当时从主库通过rman备份到目前测试库还原之后,由于备份是在备库备份的,所以数据库还原后状态为readonly,standby_file_management参数为auto.首先需要通过alter d ...
- PyQt 5 的学习引言
Python 是我学习的第二门编程语言,第一门编程语言是C. 曾经用C和C++的一个库(easyx库)写过图形界面应用, 感受就是难受又难看, 现在想学一下 PyQt 5 这个python的库, 用博 ...
- Mysql5.7.21 Navicat触发器创建
CREATE TRIGGER m_trigger AFTER UPDATE ON table1 FOR EACH ROW BEGIN IF( old.status!= new.status) THEN ...
- SEO优化上首页之搜索引擎蜘蛛Spider原理
Spider,蜘蛛,又名网页网络爬虫.网络机器人,是按照一定策略不断抓取互联网网页的特定程序.蜘蛛抓回的页面创建索引后参与排名,等待用户检索.为了网站优化自然排名上首页,精灵儿工作室下面详细剖析Spi ...
- mfc 动态分配内存
动态内存分配new 为数组动态分配内存 为多维数组分配内存 释放内存delete malloc free 动态内存分配new int * pi; pi= new int ; 为 ...
- 12-[CSS]-margin塌陷,margin 0 auto,善用父级的padding
1.margin塌陷 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...