iOS应用逆向工程分析与实战

iOS应用逆向工程分析与实战

作者:沙梓社

出版社:机械工业出版社

出版年:2014-01-01

评分:5分

ISBN:9787111450726

所属分类:网络科技

书刊介绍

iOS应用逆向工程分析与实战 内容简介

国内**本讲解ios应用逆向工程的实战手册,作者毫无保留地分享了数年来在ios逆向领域的经验。内容系统深入,实战性强,从ios系统架构、文件类型等逆向理论出发,通过多个实用案例,结合class-dump、theos、cycript、reveal、ida、gdb等*常用逆向工具阐述了对ios应用进行逆向分析的思路、方法和技巧

iOS应用逆向工程分析与实战 本书特色

本书是ios应用逆向工程方面的权威著作,三位作者都是ios领域内的专家,拥有扎实的理论知识和丰富的实践经验。本书内容以工具+代码的形式全面、系统地展开知识点,由浅入深,图文并茂地带着读者一步步探索常规ios app之外的世界。本书分为四大部分,分别是概念、工具、理论和实战。前三部分介绍ios逆向分析领域的背景、知识体系,以及相应的工具集、理论知识;第四部分则通过4个实际案例来将前面的知识以实战的方式展开。**部分为概念篇,简单介绍ios逆向分析的概念以及ios平台系统架构。第二部分为工具篇,介绍一系列基于mac和ios平台的配套工具,并且重点讲解其中的class-dump、theos、reveal、ida、gdb等5个工具的使用方法,前3个侧重于使用,后2个侧重于分析。第三部分为理论篇,主要讲述ios逆向/越狱方向的进阶**理论知识。第四部分为实战篇,通过对3个app store app及1个系统app进行逆向分析的实战操作,让读者能够了解并同步实践已掌握的知识。

iOS应用逆向工程分析与实战 目录

推荐序一
推荐序二
自序
前言
**部分概念篇
第1 章 ios 逆向工程简介
1.1 ios 软件逆向工程的要求
1.2 ios 软件逆向工程的作用
1.2.1 与安全相关的ios 逆向工程
1.2.2 与开发相关的ios 逆向工程
1.3 ios 软件逆向工程的一般过程
1.3.1 系统分析
1.3.2 代码分析
1.4 ios 软件逆向工程用到的工具
1.4.1 监测工具
1.4.2 开发工具
1.4.3 反编译器
1.4.4 调试器
1.5 小结
第2 章越狱ios 平台简介
2.1 ios 系统架构
2.1.1 ios 目录结构
2.1.2 ios 文件权限
2.2 ios 程序类型
2.2.1 application
2.2.2 dynamic library
2.2.3 daemon
2.3 小结
第二部分工具篇
第3 章mac 工具集
3.1 class-dump
3.1.1 class-dump 介绍及下载
3.1.2 class-dump 使用演示
3.1.3 关于class-dump 的补充说明
3.2 theos
3.2.1 theos 简介
3.2.2 theos 安装及编译
3.2.3 theos 用法简介
3.2.4 theos 开发tweak 示例
3.3 reveal
3.3.1 reveal 简介
3.3.2 reveal 安装及功能扩展
3.4 ida
3.4.1 ida 简介
3.4.2 ida 使用说明
3.4.3 ida 分析示例
3.5 其他工具
3.5.1 itools
3.5.2 dyld_decache
3.5.3 mesasqlite
3.6 小结
第4 章ios 工具集
4.1 sbsettings
4.2 mobilesubstrate
4.3 openssh
4.4 gdb
4.4.1 gdb 简介
4.4.2 gdb 的使用说明
4.5 cycript
4.6 其他常用工具
4.6.1 bigboss recommendedtools
4.6.2 appcrackr
4.6.3 ifile
4.6.4 mobileterminal
4.6.5 vi improved
4.6.6 sqlite
4.6.7 top
4.6.8 syslogd
4.7 小结
第三部分理论篇
第5 章 objective-c 相关的ios逆向理论基础
5.1 tweak 的作用原理
5.1.1 objective-c 语言的特性
5.1.2 mobilesubstrate
5.2 tweak 的编写套路
5.2.1 灵感的来源
5.2.2 分析文件,寻找切入点
5.2.3 定位目标函数
5.2.4 测试函数功能
5.2.5 解析函数参数
5.2.6 class-dump 的局限性
5.3 实例演示
5.3.1 得到灵感
5.3.2 分析文件
5.3.3 定位函数
5.3.4 测试函数
5.3.5 编写实例代码
5.4 小结
第6 章 arm 汇编相关的ios逆向理论基础
6.1 arm 汇编基础
6.1.1 基本概念
6.1.2 arm/thumb 指令解读
6.1.3 arm 调用规则
6.2 在ida 中分析目标文件
6.2.1 分析函数实现细节
6.2.2 验证分析结果
6.3 在gdb 中分析目标文件
6.3.1 跟踪代码执行流程
6.3.2 动态更改代码
6.4 小结
第四部分实战篇
第7 章 实战1:去除oplayerlite 的广告
7.1 oplayer lite 简介
7.2 分析源代码结构,并定位广告横幅的代码
7.2.1 class-dump 获取.h 文件
7.2.2 猜测广告横幅的出现位置
7.2.3 分析playviewcontroller.h
7.3 去除广告横幅,节省流量
7.3.1 找到“准备”广告的位置
7.3.2 追溯到网络连接的起点
7.4 编写调试代码
7.4.1 编写tweak_oplayerlite.xm
7.4.2 编辑control
7.4.3 编辑removeoplayerads.plist
7.4.4 编辑makefile
7.4.5 编译+ 打包
7.4.6 安装
7.5 调试去广告插件
7.6 代码结果整理
7.7 小结
第8 章 实战2:whatsapp消息拦截
8.1 whatsapp 简介
8.2 分析源代码结构,并定位监听点
8.2.1 class-dump 获取.h 文件
8.2.2 导入xcode
8.2.3 找到whatsappappdelegate
8.2.4 找到chatmanager
8.3 编写调试代码
8.3.1 分析函数列表
8.3.2 编写tweak_whatsapp.xm
8.3.3 编辑control
8.3.4 编辑monitor.plist
8.3.5 编辑makefile
8.3.6 编译+打包
8.3.7 安装
8.4 调试运行监听插件
8.4.1 运行whatsapp,ssh 连接
8.4.2 发送/ 接收消息,监控日志
8.4.3 保存数据
8.5 代码结果整理
8.6 小结
第9 章 实战3:instagram 图片保存
9.1 instagram 简介
9.2 分析源代码结构,并定位图片展示点
9.2.1 用class-dump获取.h 文件
9.2.2 导入xcode
9.2.3 找到appdelegate
9.2.4 注入reveal
9.2.5 寻找图片页相关class
9.3 保存图片
9.3.1 尝试保存图片
9.3.2 对.h 文件进行瘦身
9.3.3 编译测试
9.4 弹出提示菜单
9.4.1 弹出菜单代码
9.4.2 使用theos 新增函数
9.4.3 使用runtime 新增函数
9.5 代码结果整理
9.6 小结
第10 章实战4:ios 电话操作
10.1 常用电话操作
10.2 分析源代码结构,并定位电话操作的代码
10.2.1 class-dump 获取.h 文件
10.2.2 寻找拨打电话的函数
10.2.3 寻找接听电话的函数
10.2.4 寻找挂断电话的函数
10.2.5 寻找删除通话记录的函数
10.2.6 寻找拦截电话的方法
10.3 编写调试代码
10.3.1 编写tweak_phoneoperation.xm
10.3.2 编辑control
10.3.3 编辑phoneoperation.plist
10.3.4 编辑makefile
10.3.5 编译+ 打包+ 安装
10.4 调试电话操作插件
10.5 代码结果整理
10.6 小结
越狱开发一览
沙箱逃脱
编写tweak新时代的hacking

iOS应用逆向工程分析与实战 相关资料

本书结构合理、行文风趣、内容翔实、配图丰富。如果你是中高级ios开发者,本书一定会让你大开眼界。当你在探究ios系统底层或别人的app却迷失方向时,本书会告诉你该怎么办,该使用何种工具和策略。逆向爱好者、安全研究人员也能从书中了解到ios的安全架构和app的攻防策略。ios开发小白呢,更要入手一本做参考了,不然你开发的app分分钟就被暴露在别人的“显微镜”下了。如果你想缩短和高手之间的差距,想让你的app更安全,读一读此书吧。
——卢明华 友盟 ios高级工程师
随着移动互联网浪潮的到来,ios应用开发技术得到了大家广泛的关注,相关的书籍也非常丰富。但是ios应用安全领域却像一块处女地,鲜有资料涉及。应用安全相关知识是一把双刃剑,黑帽子用它来攻击那些不懂得防范的菜鸟,白帽子用它来保证用户的隐私和维护自己的商业利益。本书从黑帽子攻击的角度,讲解了如何对ios应用进行逆向工程。通过本书,作者揭开了那些不为人知的ios应用攻击手段,也将会使得大家更加注意ios应用的安全问题,最终促进整个业界对于安全的重视。
—— 唐巧 猿题库 ios高级工程师
逆向工程是一个可以让激情洋溢的程序员快速了解底层结构而成长为高手的快速途径,可惜长久以来,这个领域里的优秀人才都不曾出来向大家分享些学习的经验和体会,直到本书的面世。本书提供了很多贴近现实的实例和平易近人的讲解,帮助你更容易地进入这个领域。如果你想在软件领域有更深的造诣,可以跟着这本书调试书中的实例,一步步地了解ios逆向工程的基本要领和操作流程。逆向工程多年来一直是我研究各种系统的得力工具,所以我把这本书推荐给大家。想象一下当初一直研习气宗的令狐冲,在知道剑宗存在之后的感觉吧!
—— 邹天矢 360手机卫士前ios高级工程师
如果你打算编写越狱环境下的ios插件,或者想从一个全新的角度来审视现有的ios应用,请从这里开始。本书覆盖范围十分广泛,从class-dump、ida等常用工具到ios arm汇编,囊括了目前相关领域使用的主流方法和技术,完整介绍了ios应用逆向工程中的各个部分。书中所讲述的实战案例,通过对whatsapp、instagram等知名应用进行逆向分析,展现了逆向工程的巨大威力。相信本书将会为广大ios应用开发者打开一扇新的大门。
—— 沙杰 搜狗号码通ios高级工程师

iOS应用逆向工程分析与实战 作者简介

沙梓社(snakeninny)iOS越狱社区骨灰级活跃分子,思路开阔,思想传统,对苹果的研究痴迷到连女朋友都没有的地步。作品见诸Cydia,有SMSNinja、LowPowerBanner、DimInCall等。吴航(hangcom)拥有十余年程序开发经验的资深码农,历经方正、NEC、Juniper等国内国外知名IT企业,2011年进入iOS领域,专注于iOS App/逆向等方向的开发,主要作品有安全管家、有康医生、知乎月刊HD等。刘瑾北京电子科技学院计算机科学与技术系讲师,教课之余主要从事移动客户端的安全应用程序设计和嵌入式应用程序开发研究,参与编著及翻译多本相关教材,承担过多个项目的研发工作,多次获得各项教学科研奖项。

相关推荐

微信二维码