一、下载并安装class-dump

下载class-dump-3.5.dmg  点击下载

下载完成以后双击.dmg的文件,将里面的class-dump拷贝到/usr/local/bin

设置权限chmod 777 /usr/local/bin/class-dump

在控制台输入class-dump,显示如下表示配置成功

二、反编译.framework文件

我们以解析MobileCoreServices.framework为例,在控制台输入

class-dump -H -o /Users/wuyong/Desktop/未命名文件夹  /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks/MobileCoreServices.framework

-H命令代表着要解析的文件,-o表示解析完成保存的目录

注意如果framework的文件不是模拟器iPhoneSimulator.platform内的文件,而是iPhoneOS.platform将会报错

Input file (XXX) doesn't contain an executable.

三、反编译.app文件

我们反编译一下自己mac上的app,以我们电脑上的备忘录为例子

class-dump -H /Applications/Notes.app -o /Users/wuyong/Desktop/未命名文件夹

记住不要直接编译.ipa的文件否则会报错,

Input file (XXX) is neither a Mach-O file nor a fat archive.

四、反编译ipa的文件

ipa的文件不能直接被反编译

首先右键ipa的文件,选择打开方式,用解压工具UnRAR或者其他的能解压.rar的工具解压

解压后得到.app的文件最重要,-H后面的就是.app文件的目录,在控制台运行下面的命令,就能得到ipa文件里面的所有的头文件

class-dump -H XXX.app -o /Users/wuyong/Desktop/未命名文件夹

五、Hopper Disassembler反编译ipa文件

Hopper Disassembler和IDA都是很强大的反编译的工具,虽然能反编译出.h和.m的文件,但是编译出来的是汇编语言,我反正是看不懂汇编啦

Hopper Disassembler操作很简单

安装Hopper Disassembler完成以后,把压缩出来的.app的文件拖进去就OK啦,但是就像下面一样能看清方法的名字,方法的具体实现我实在看不懂啊

class-dump 反编译私有的库和应用的更多相关文章

  1. dll文件反编译,c#、vb动态库反编译

    最近开发遇到一个项目,对方提供一个c#编写的动态库,图片处理需要调用该动态库方法,发现一张图片处理起来需要5s时间,对方无法提供有效解决手段,抱着试一试的想法反编译的对方的动态库,发现其中问题. 一下 ...

  2. Android Cocos2dx引擎 prv.ccz/plist/so等优化缓存文件,手把手ida教你逆向project反编译apk库等文件

    前段时间在 Android play 上看到一个非常牛逼的 3D 动态天气预报,效果真的非常炫.二话不说动手 dex2jar.bat/apktool 发现这并没 有什么卵用,在核心的地方看见 nati ...

  3. android apk 反编译

    Apk文件结构 apk文件实际是一个zip压缩包,可以通过解压缩工具解开.以下是我们用zip解开helloworld.apk文件后看到的内容.可以看到其结构跟新建立的工程结构有些类似. java代码: ...

  4. 反编译python打包的exe文件

    目录 1.前言 2.使用环境 3.还原过程 4.号外 5.exe文件和所用到的反编译工具 6.参考 7.去签名(补漏) 前言 拿到了利用驱动人生进行传播的病毒样本,发现是python打包成的exe文件 ...

  5. Android: apk反编译 及 AS代码混淆防反编译

    一.工具下载: 1.apktool(资源文件获取,如提取出图片文件和布局文件) 反编译apk:apktool d file.apk –o path 回编译apk:apktool b path –o f ...

  6. 菜鸟夜谈android反编译

    工具: apktool:https://code.google.com/p/android-apktool/ dex2jar: https://code.google.com/p/dex2jar/ j ...

  7. 反编译apk 修改 合成

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha 反编译apk帮助文档 准备工具 dex2jar(dex转换jar工具),下载地址: ht ...

  8. 防反编译、混淆文件proguard.cfg与proguard-project.txt详解

    在新版本的ADT创建项目时,混码的文件不再是proguard.cfg,而是project.properties和proguard-project.txt. 如果需要对项目进行全局混码,只需要进行一步操 ...

  9. 【转载】关于 .Net 逆向的那些工具:反编译篇

    在项目开发过程中,估计也有人和我遇到过同样的经历:生产环境出现了重大Bug亟需解决,而偏偏就在这时仓库中的代码却不是最新的.在这种情况下,我们不能直接在当前的代码中修改这个Bug然后发布,这会导致更严 ...

随机推荐

  1. 使用Monit监控本地进程

    目前用它监控某些服务,失败自动重启,同时监控特定的日志文件,如果有变化,就发邮件报警 安装不细写了,网上好多 我先用cat /proc/version看了下我的系统是el6的,于是wget http: ...

  2. 【腾讯bugly干货分享】HTML 5 视频直播一站式扫盲

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://bugly.qq.com/bbs/forum.php?mod=viewthread&tid=1277 视频直 ...

  3. mac osx 安装redis扩展

    1 php -v查看php版本 2 brew search php|grep redis 搜索对应的redis   ps:如果没有brew 就根据http://brew.sh安装 3 brew ins ...

  4. 2017-1-5 天气雨 React 学习笔记

    官方example 中basic-click-counter <script type="text/babel"> var Counter = React.create ...

  5. The Zen of Python

    Beautiful is better than ugly. 优美总比丑陋好Explicit is better than implicit. 直率总比含蓄好Simple is better than ...

  6. iOS 小知识点(持续更新)

    1.如何通过代码设置Button  title的字体大小 设置Button.titleLabel.font = [UIFont systemFontOfSize:<#(CGFloat)#> ...

  7. intellij idea 13&14 插件推荐及快速上手建议

    IntelliJIDEA插件安装 首页 > blog Tags : intellij IDEA插件安装 更新日期: 2015-04-29 IntelliJ IDEA插件下载地址: http:// ...

  8. 巧用 mask-image 实现简单进度加载界面

    最近给 nzoo 折腾官网,拿 angular2.0 + webpack 实现SPA,然后觉得最终打包后的出口文件有点大,用户首次访问会有一个时间较长的白屏等候界面,感觉体验不太好. 于是希望在用户下 ...

  9. EQueue 2.0 性能测试报告

    前言 最近用了几个月的时间,一直在对EQueue做性能优化.到现在总算告一段落了,现在把一些优化的结果分享给大家.EQueue是一个分布式的消息队列,设计思路基本和阿里的RocketMQ一致,只是是用 ...

  10. Dubbo 备注

    Dubbo是阿里开源的一款服务治理中间件,主要包含如下节点: Provider: 暴露服务的服务提供方. Consumer: 调用远程服务的服务消费方. Registry: 服务注册与发现的注册中心. ...