《iOS应用逆向工程(第2版)》高清电子书 PDF

本博客精品专栏汇总:《iOS进阶》、《iOS安全》(持续更新) 文章目录前言I、 iOS进阶II、iOS逆向III、 javaIV 、iOS基础 前言 “订阅”一次 ,享受终身服务的快乐 订阅任意专栏,享有全部专栏 I、 iOS进阶 进程间的实时通讯方案: local socket(解决扩展和容器应用的实时通讯问题) iOS14适配汇总:【1、隐私权限相关:定位、相册、IDFA 2、KVC相关:不允许访问 UIPageControl的pageImage3、UIView相关适配:UITableViewCell兼容等】 II、iOS逆向 III、 java 阅读详情

内容简介  · · · · · ·

你是否曾因应用上线的第一天即遭破解而无奈苦恼,想要加以防范,却又束手无策?

你是否曾为某一应用深深折服,想要借鉴学习,却又无从下手?

你是否已不满足于public API,想要进军Cydia开发,却又求学无门?

你是否已产生“不识Apple真面目,只缘身在App Store中”的危机感,想要通过阅读来一窥这冰山一角外的整个北极,却又找不到合适的书?

你是否已经因无法跨越开发路上的重重障碍而断了研究iOS逆向工程的念头?Are you a quitter?看完本书,相信你会有全新的感受!

全球第一本讲解iOS8应用逆向工程的实战手册,作者毫无保留地分享了数年来在iOS逆向工程领域的经验。

内容系统深入,逻辑紧密,实战性强,从iOS系统架构等理论出发,以多个实例贯穿全书,阐述class-dump、Theos、Cycript、Reveal、IDA、LLDB等常用工具的使用,通俗易懂。

总结提炼出一套从UI观察切入代码分析的iOS应用逆向工程方法论,授人以渔。


作者简介  · · · · · ·

沙梓社,iOS越狱社区骨灰级活跃份子,思路开阔思想传统,对苹果的研究痴迷到连女朋友都没有的地步。作品见诸于Cydia,有SMSNinja、LowPowerBanner、DimInCall等。

吴航,十余年程序开发经验的资深码农,历经方正、NEC、Juniper等国内国外知名IT企业,2011年进入iOS领域,专注于iOS app/逆向等方向的开发,主要作品有安全管家、知乎月刊HD等。


目录  · · · · · ·推荐序一
推荐序二
第2版序
第1版序
前言
第一部分 概 念 篇
第1章 iOS逆向工程简介 3
1.1 iOS逆向工程的要求 3
1.2 iOS应用逆向工程的作用 4
1.2.1 安全相关的iOS逆向工程 5
1.2.2 开发相关的iOS逆向工程 6
1.3 iOS应用逆向工程的过程 7
1.3.1 系统分析 7
1.3.2 代码分析 8
1.4 iOS应用逆向工程的工具 8
1.4.1 监测工具 9
1.4.2 反汇编工具 9
1.4.3 调试工具 10
1.4.4 开发工具 11
1.5 小结 11
第2章 越狱iOS平台简介 12
2.1 iOS系统结构 12
2.1.1 iOS目录结构简介 13
2.1.2 iOS文件权限简介 16
2.2 iOS二进制文件类型 17
2.2.1 Application 17
2.2.2 Dynamic Library 20
2.2.3 Daemon 20
2.3 小结 22
第二部分 工 具 篇
第3章 OSX工具集 25
3.1 class-dump 25
3.2 Theos 27
3.2.1 Theos简介 27
3.2.2 安装Theos 28
3.2.3 Theos用法介绍 30
3.2.4 Theos开发tweak示例 51
3.3 Reveal 53
3.4 IDA 57
3.4.1 IDA简介 57
3.4.2 IDA使用说明 58
3.4.3 IDA分析示例 68
3.5 iFunBox 71
3.6 dyld_decache 72
3.7 小结 73
第4章 iOS工具集 74
4.1 CydiaSubstrate 74
4.1.1 MobileHooker 74
4.1.2 MobileLoader 84
4.1.3 Safe mode 84
4.2 Cycript 85
4.3 LLDB与debugserver 89
4.3.1 LLDB简介 89
4.3.2 debugserver简介 90
4.3.3 配置debugserver 90
4.3.4 用debugserver启动或附加进程 91
4.3.5 LLDB的使用说明 92
4.3.6 LLDB使用小提示 107
4.4 dumpdecrypted 107
4.5 OpenSSH 111
4.6 usbmuxd 112
4.7 iFile 113
4.8 MTerminal 114
4.9 syslogd to /var/log/syslog 115
4.10 小结 115
第三部分 理 论 篇
第5章 Objective-C相关的iOS逆向理论基础 119
5.1 tweak在Objective-C中的工作方式 119
5.2 tweak 的编写套路 121
5.2.1 寻找灵感 121
5.2.2 定位目标文件 123
5.2.3 定位目标函数 127
5.2.4 测试函数功能 129
5.2.5 解析函数参数 130
5.2.6 class-dump的局限性 133
5.3 实例演示 133
5.3.1 得到灵感 134
5.3.2 定位文件 135
5.3.3 定位函数 143
5.3.4 测试函数 145
5.3.5 编写实例代码 145
5.4 小结 147
第6章 ARM汇编相关的iOS逆向理论基础 148
6.1 ARM汇编基础 148
6.1.1 基本概念 149
6.1.2 ARM/THUMB指令解读 152
6.1.3 ARM调用规则 159
6.2 tweak的编写套路 161
6.2.1 从现象切入App,找出UI函数 162
6.2.2 以UI函数为起点,寻找目标函数 173
6.3 LLDB的使用技巧 203
6.3.1 寻找函数调用者 203
6.3.2 更改进程执行逻辑 208
6.4 小结 211
第四部分 实 战 篇
第7章 实战1:Characount for Notes 8 215
7.1 备忘录 215
7.2 搭建tweak原型 216
7.2.1 定位Notes的可执行文件 217
7.2.2 class-dump出MobileNotes的头文件 218
7.2.3 用Cycript找到阅览界面及其controller 218
7.2.4 从NoteDisplayController找到当前note对象 220
7.2.5 找到实时监测note内容变化的方法 223
7.3 逆向结果整理 227
7.4 编写tweak 228
7.4.1 用Theos新建tweak工程“CharacountForNotes8” 228
7.4.2 构造CharacountForNotes8.h 229
7.4.3 编辑Tweak.xm 229
7.4.4 编辑Makefile及control 230
7.4.5 测试 230
7.5 小结 233
第8章 实战2:自动将指定电子邮件标记为已读 234
8.1 电子邮件 234
8.2 搭建tweak原型 235
8.2.1 定位Mail的可执行文件并class-dump它 237
8.2.2 把头文件导入Xcode 238
8.2.3 用Cycript找到Mailboxes界面的controller 239
8.2.4 用Reveal和Cycript找到All Inboxes界面的delegate 240
8.2.5 在MailboxContentViewController中定位“刷新完成”的响应函数 242
8.2.6 从MessageMegaMall中拿到所有邮件 246
8.2.7 从MFLibraryMessage中提取发件人地址,用MessageMegaMall标记
已读 248
8.3 逆向结果整理 254
8.4 编写tweak 255
8.4.1 用Theos新建tweak工程“iOSREMailMarker” 255
8.4.2 构造iOSREMailMarker.h 255
8.4.3 编辑Tweak.xm 256
8.4.4 编辑Makefile及control 257
8.4.5 测试 258
8.5 小结 259
第9章 实战3:保存与分享微信小视频 260
9.1 微信 260
9.2 搭建tweak原型 261
9.2.1 观察小视频播放窗口,寻找逆向切入点 261
9.2.2 class-dump获取头文件 262
9.2.3 把头文件导入Xcode 263
9.2.4 用Reveal找到小视频播放窗口 264
9.2.5 找到长按手势响应函数 265
9.2.6 用Cycript定位小视频的controller 270
9.2.7 从WCTimeLineViewController找到小视频对象 272
9.2.8 从WCContentItemViewTemplateNewSight中提取WCDataItem对象 276
9.2.9 从WCDataItem中提取目标信息 278
9.3 逆向结果整理 288
9.4 编写tweak 289
9.4.1 用Theos新建tweak工程“iOSREWCVideoDownloader” 289
9.4.2 构造iOSREWCVideoDownloader.h 289
9.4.3 编辑Tweak.xm 290
9.4.4 编辑Makefile及control 292
9.4.5 测试 293
9.5 彩蛋放送 294
9.5.1 从UIMenuItem切入,找到小视频对象 294
9.5.2 微信历史版本头文件个数变迁 295
9.6 小结 298
第10章 实战4:检测与发送iMessage 299
10.1 iMessage 299
10.2 检测一个号码或邮箱地址是否支持iMessage 299
10.2.1 观察MobileSMS界面元素的变化,寻找逆向切入点 299
10.2.2 用Cycript找出placeholder 302
10.2.3 用IDA和LLDB找出placeholderText的一重数据源 308
10.2.4 用IDA和LLDB找出placeholderText的N重数据源 311
10.2.5 还原原始数据源生成placeholderText的过程 340
10.3 发送iMessage 341
10.3.1 从MobileSMS界面元素寻找逆向切入点 341
10.3.2 用Cycript找出“Send”按钮的响应函数 342
10.3.3 在响应函数中寻找可疑的发送操作 344
10.4 逆向结果整理 369
10.5 编写tweak 370
10.5.1 用Theos新建tweak工程“iOSREMadridMessenger” 370
10.5.2 构造iOSREMadridMessenger.h 371
10.5.3 编辑Tweak.xm 372
10.5.4 编辑Makefile及control 372
10.5.5 用Cycript测试 373
10.6 小结 373
越狱开发一览 375
沙箱逃脱 380
编写tweak——新时代的hacking 382

下载地址:http://www.ioshacker.net/forum.php?mod=viewthread&tid=32&extra=page%3D1

iOS逆向专栏总目录(持续更新) 文章目录引言I、概述1.1 基本概念1.2 环境搭建1.3 常用逆向分析工具的原理及使用1.4 正向知识储备II iOS逆向进阶2.1.2 模拟鼠标点击2.1.3 LUA2.1.4 分析网络数据包2.1.5 日志分析III、案例实战3.1 ASOIV、 安全保护4.1 脱敏规范4.2 接口安全4.2.1 接口安全设计的Checklist 引言 欢迎大家来到#公众号:iOS逆向的《iOS应用逆向与安全》专栏 本文列出学习大纲,同时也可作为大家学习《iOS应用逆向与安全》专栏的索引。 文中的蓝字都是 阅读详情

相关推荐

iOS安全和逆向系列教程 第2篇: iOS系统架构详解 - 逆向工程的基石

系统架构是指操作系统的组织结构和各个组件之间的关系。对于逆向工程来说,了解iOS系统架构就像是拿到了一张"藏宝图"——它告诉我们应用程序的功能是如何实现的,数据是如何存储和流动的,以及系统安全机制是如何工作的。想象一下,如果你不知道iOS的文件存储在哪里,不了解应用程序如何与系统API交互,那么逆向分析就会像在迷宫中没有指南针一样困难。通过本文,我们了解了iOS系统的基本架构、主要组件和安全机制。这些知识为我们后续的逆向工程工作奠定了理论基础。iOS系统分为四个主要层级,每层都有特定的功能和API。

一个自学不成材的程序员 1589

《iOS 应用逆向工程:分析与实战》 pdf 电子书分享

本书是iOS应用逆向工程方面的权威著作,三位作者都是iOS领域内的专家,拥有扎实的理论知识和丰富的实践经验。本书分为四大部分,分别是概念、工具、理论和实战。前三部分介绍iOS逆向分析领域的背景、知识体系,以及相应的工具集、理论知识;第四部分则通过4个实际案例来将前面的知识以实战的方式展开。第一部分为概念篇,简单介绍iOS逆向分析的概念以及iOS平台系统架构。第二部分为工具篇,介绍一系列基于Mac和...

十年磨一剑,霜刃未曾试! 1888

iOS应用逆向第二版

iOS逆向开发,了解攻防,才能让你的项目更加的安全。通过阅读此书让你更加全面的了解iOS开发中的安全问题

网安大佬(黑客)整理的282G自学资料,高清视频,边学边练,高清PDF开放下载,零基础自学转行,首选之作

给小伙伴们的意见是想清楚,自学网络安全没有捷径,相比而言系统的网络安全是最节省成本的方式,因为能够帮你节省大量的时间和精力成本。给自学的小伙伴们的意见是坚持住,既然已经走到这条路上,虽然前途看似困难重重,只要咬牙坚持,最终会收到你想要的效果。

Button12138的博客 570

iOS应用逆向工程(第2版).pdf

iOS逆向工程指的是在软件层面上进行逆向分析的一个过程。读者如果想要具备较强的iOS逆向工程能力,最好能非常熟悉iOS设备的硬件构成、iOS系统的运行原理,还要具备丰富的iOS开发经验。如果你拿到任意一个App之后能够大致推断出它的项目规模和使用的技术,比如它的MVC(Model-View-Controller,请Google“iOS MVC”)模型是怎么建立的,引用了哪些 framework和经典的开源代码,说明你的iOS逆向工程能力已经不容小觑了。

【IOS应用逆向工程:分析与实战】沙梓社.rar

【IOS应用逆向工程:分析与实战】沙梓社

计算机编程语言黑客技术学习书籍大合集,零基础入门到精通,收藏这篇就够了

│ [Python灰帽子:黑客与逆向工程师的Python编程之道].(Gray.Hat.Python).Justin.Seitz.文字版.pdf。对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。这也是耗费了大白近四个月的时间,吐血整理,文章非常非常长,觉得有用的话,希望粉丝朋友帮忙点个**「分享」│ 《PHP5与MySQL5从入门到精通》.(卫喆, 陈争航).[PDF]&ckook.pdf。因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取。

Javachichi的博客 1438

iOS程序的逆向与安全

iOS程序的逆向与安全,哪一个app都会考虑的安全问题,很不错的文档

《iOS 应用逆向与安全》读后感

本章主要对逆向整体进行描述,分别从应用中存在的风险、如何保护应用的安全、和开发工具的使用来介绍。而我觉得本章的核心是掌握逆向的流程和作用,了解 APP 开发中需要注意的安全问题。获取应用的 ipa 包,解密(如果是越狱应用则不需要解密),导出头文件;通过界面查看 APP 的布局,从布局中找到对应的头文件,查看关键函数;hook 相关函数,达到你的目的;静态分析加动态调试分析关键函数;模拟或篡改原有 APP 的逻辑;达到自己的目的。

dzqxwzoe的博客 371

IOS应用逆向工程(第2版) 最新高清完整PDF

iOS逆向其实有很多技巧跟途径,本书对于研究系统原理及攻防安全等方面十分有用。 对于微信和WhatsApp之类的IM应用,交流的信 息是它们的核心;对于银行、支付、电商类的软件, 交易数据和客户信息是它们的核心。所有的核心数据 都是需要重点保护的,于是,开发人员通过反调试、 数据加密、代码混淆等各种手段重重保护自己App, 为的就是增加逆向工程的难度,避免类似的安全问题 影响用户体验。

逆向工程实战:IoT固件漏洞挖掘的7种方法.pdf

文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 在万物互联的时代,信息安全已成为数字化进程中的关键基石。从金融交易到医疗数据,从企业机密到个人隐私,每一次数据流转都面临着潜在的安全风险。本文聚焦计算机信息安全核心技术,揭示黑客攻击的常见手法与防范策略。通过行业洞察与技术前瞻,帮助读者理解信息安全的底层逻辑,掌握实用的安全防护技巧。让我们共同提升安全意识,用技术为数字生活保驾护航。

iOS 逆向 - 应用安全攻防(越狱与非越狱)

1️⃣ : 代码混淆可以很有效的大量增加攻击者的分析耗时 , 增大干扰性 .2️⃣ : 代码混淆可以很轻松的对已有工程进行处理 .3️⃣ : 加入混淆后对正向人员正常开发基本没有影响 .4️⃣ : 完全可以利用宏定义的机制 , 灵活处理 , 例如类名方法名每次运行都是随机字符串 .单一的防护手段往往不足以保证安全 , 多重防护手段结合使用 , 能起到更好效果 .不要给防护代码留下明显的痕迹 , 尤其在UI层面 ( 例如闪退 , 弹框等等 ) .

网络安全学习教程分享 2288

产品失效你必须要知道的概念---MTBF、MTTF和FIT

如果我们想知道该电路在10年后仍能正常工作的几率,按照前面例子的相同计算步骤,结果将是90.3%。例如,假设一个TDK电容器的MTBF为6918年(16.5失效时间间隔,FIT),这并不意味着该电容器能持续这么久(显然,没有人能够对部件进行这么长时间的测试)。综上,MTBF和MTTF是用来描述系统或设备级别的故障间隔时间,而FIT是用来描述某单一器件的失效率的单位。MTBF和MTTF使用相同的计算方法,但MTBF用于可维修的产品,而MTTF用于不可维修或维修成本过高的产品。

weixin_49761275的博客 3835

<iOS应用逆向和安全 刘培庆著> 学习笔记 1

之前从未接触过iOS越狱和逆向方面的相关知识, 前段时间刘培庆的&lt;iOS应用逆向和安全&gt;一书首发, 我买了一本. 在学习过程中的一些小Tips, 分享给大家,希望能一起学习进步. 文章将不断更新完善. 配置 : iPhone6 乞丐版 , iOS10.3.2 iMac macOS High Sierra 10.13.5 Xcode 9.4.1 第一步: 越狱 越狱教程, ...

weixin_33728708的博客 356

手把手教你用Wireshark抓包分析BLE广播包:从PDU结构到AD Type实战解析

本文详细介绍了如何使用Wireshark工具抓取并分析BLE广播包,从PDU结构到AD Type的实战解析。通过硬件设备选择、软件配置、协议栈解析及高级故障排查,帮助开发者深入理解蓝牙低功耗通信机制,提升物联网设备调试效率。

weixin_30482383的博客 418

NotebookLM平替实测:用Open Notebook+Ollama零成本搭建私有AI知识库

本文提供了一份详细的实战指南,教你如何利用Open Notebook与Ollama,在本地零成本搭建一个功能强大且完全私有的AI知识库。通过Docker容器化部署,实现数据绝对安全、模型自由选择与离线运行,是NotebookLM等云端工具的绝佳平替方案,尤其适合注重数据隐私的教育工作者、研究者及小团队。

weixin_29052717的博客 514

iOS应用逆向工程完整指南:从入门到精通

iOS应用逆向工程是移动安全领域的重要技能,帮助开发者深入理解iOS系统架构和应用运行机制。作为世界上第一本非常详细的iOS应用逆向工程技能书籍,本项目为iOS安全研究人员、开发者和逆向工程爱好者提供了全面的学习资源。📱 ## 为什么学习iOS逆向工程? iOS逆向工程不仅涉及安全研究,还能帮助开发者: - 🔍 **深入理解iOS系统**:了解Apple未公开的API和内部机制 - 🛡

gitblog_01017的博客 1507

hcaptcha-challenger:基于本地AI模型自动破解验证码的工程实践

验证码作为区分人类与机器的经典安全机制,其核心原理是通过图像识别、行为分析等交互式挑战来阻挡自动化程序。传统绕过方法依赖第三方打码平台或脚本,存在成本高、稳定性差的问题。随着多模态大语言模型和计算机视觉技术的发展,本地化AI求解成为新的技术方向,它通过集成YOLO、ResNet等模型,在本地完成图像语义理解,实现了高隐私、低成本、可进化的验证码自动化解决方案。这种范式尤其适用于需要大规模稳定处理网页交互的场景,如电商数据采集和社交媒体管理。hcaptcha-challenger项目正是这一理念的工程实践,它

weixin_42587866的博客 1028

逆向工程实战分享

逆向工程实战分享                 本文转自移动开发:http://mobilev5.github.io/2016/03/24/crack-share/         逆向工程一般说来就是在没有源代码的情况下,通过一定手段分析软件结构,挖掘出有用的信息或绕过软件自身的一些限制。目前对逆向的研究主要集中在Windows, Android,Mac和iOS这几个平台,各

火雨(Nick) 4564

拆解歌尔2718硅麦:2.75mm超小封装背后的MEMS技术解析

本文深度解析歌尔2718硅麦的2.75mm超小封装技术,探讨MEMS麦克风在微型化过程中的声学性能与结构可靠性平衡。通过ASIC芯片堆叠、纳米级应力控制等创新技术,歌尔2718在TWS耳机和智能手机中实现卓越性能,同时克服微型化带来的声学挑战。

weixin_28292761的博客 611

手把手教你学simulink实例--基于Simulink的电动汽车动力总成控制策略验证与标定仿真平台

电动汽车的动力总成(Powertrain)是车辆的核心系统,包括动力电池、电机控制器、逆变器和驱动电机等关键部件。动力总成的控制策略直接影响车辆的动力性能、能耗效率和驾驶体验。为了验证和优化这些控制策略,基于MATLAB/Simulink的仿真平台成为一种高效且经济的解决方案。本项目旨在构建一个完整的基于Simulink的电动汽车动力总成控制策略验证与标定仿真平台,涵盖控制策略建模、性能评估以及参数标定等功能模块,并通过仿真验证系统的有效性。

MHD0815的博客 300
上一篇: 《iOS 应用逆向工程:分析与实战》 pdf 电子书分享
下一篇: 《深入解析 MAC OS X & iOS 操作系统》PDF 带书签
sysprogram
博客等级 码龄17年 298粉丝 442原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值