前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ios逆向笔记

ios逆向笔记

作者头像
tea9
发布2023-03-17 15:52:32
8130
发布2023-03-17 15:52:32
举报
文章被收录于专栏:tea9的博客

1.2ios应用逆向工程的作用

1.2.1安全相关的ios逆向工程
代码语言:javascript
复制
1.评定安全等级
2.逆向恶意软件
3.检查软件后门
4.去除软件使用限制
1.2.2开发相关的ios逆向工程
代码语言:javascript
复制
1.逆向系统API 
    对于不上架的app 面向cydia
2.借鉴别的软件
    比较有意思的软件 录音软件Audio Recored
    老牌软件架构设计合理 借鉴他们使用哪个的高级技术 如WhatsAPP

1.3ios应用逆向工程的过程

代码语言:javascript
复制
系统分析
    整体上观察目标程序行为特征、文件的组织架构
代码分析
    软件的核心代码还原
1.3.1系统分析
代码语言:javascript
复制
进行操作观察行为特征
查看Documents目录 查看数据库文件
1.3.2代码分析
代码语言:javascript
复制
对app的二进制文件进行代码分析
推导出这个app的设计思路、内部算法、实现细节

ios逆向工程论坛

http://bbs.iosre.com

1.4ios应用逆向工程的工具

监测工具、反汇编工具(disassembler)、调试工具(debugger),以及开发工具

1.4.1 监测工具

起到嗅探、监测、记录目标程序行为

如ui变化、网络活动、文件访问等

常用的监测工具Reveal、snoop-it、introspy等

Reveal ui层面切入代码层面

1.4.2 反汇编工具

二进制文件作为输入,经过处理后输出这个文件的汇编代码

IDA和Hopper

1.4.3 调试工具

LLDB

1.4.4 开发工具

Xcode 最常用的开发工具

越狱ios

-基于Xcode的IOSOpenDev

-命令行Theos 可以突破AppStore

第2章 越狱ios平台简介

未越狱的ios是个封闭的黑盒子,直到evad3rs、盘古、太极等团队把ios越狱

2.1 ios系统结构

2.1.1ios目录结构简介

ios是由osx演化而来,osx基于unix操作系统

OSX在此基础上形成了自己的hier(7)框架

类UNIX操作系统的常见目录结构:

./:根目录,以斜杠表示,其他所有文件和目录在根目录下展开。

./bin:”binnary”的简写,存放提供用户级基础功能的二进制文件,如ls、ps等。

./boot:存放能使系统成功启动的所有文件。ios中此目录为空

./dev:“device”的简写,存放BSD设备文件。每个文件代表系统的一个块设备或字符设备,一般来说,“块设备”以块为单位传输数据,如调制解调器。

./sbin:“system binaries”的简写,存放提供系统级基础功能的二进制文件,如netstat、reboot等

./etc:“Et Cetera”的简写存放系统脚本及配置文件,如passwd、hosts等。在ios中,/etc是一个符号链接,实际指向/private/etc.

./lib:存放系统库文件、内核模块及设备驱动等。ios中此目录

./mnt:“mount”的简写,存放临时的文件系统挂载点。ios中此目录为空

./private:存放两个目录,分别是/private/etc和/private/var。

./tmp:临时目录。在ios中,/tmp是一个符号链接,实际指向/private/var/tmp.

./usr:包含了大多数用户工具和程序。/usr/bin包含那些/bin和/sbin中未出现的基础功能,如nm、killall等;/usr/include包含所有的标准c头文件;/usr/lib存放库文件。

./var:“variable”的简写,存放一些经常更改的文件,比如日志、用户数据、临时文件等。其中/var/mobile和/var/root分别存放了mobile用户和root用户的文件,是重点关注的目录。

上述目录中的内容多用于系统层,逆向难度较大

作为ios开发者,日常操作所对应的功能模块大多来自ios的独有目录

./Applications:存放所有的系统App和来自于Cydia的App,不包括StoreApp

./Developer:如果一台设备连接Xcode后被指定为调试用机Xcode就会在ios中生成这个目录,其中会含有一些调试需要的工具和数据

./Library:存放一些提供系统支持的数据,其中/Library/MobileSubstrate下存放了所有基于CydiaSubstrate(原名MobileSubstrate)的插件

./System/Library:ios文件系统中最重要的目录之一,存放大量系统组件

./System/Library/Frameworks和/System/Library/PrivateFrameworks:存放ios中的各种framework,

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.2ios应用逆向工程的作用
    • 1.2.1安全相关的ios逆向工程
      • 1.2.2开发相关的ios逆向工程
      • 1.3ios应用逆向工程的过程
        • 1.3.1系统分析
          • 1.3.2代码分析
          • 1.4ios应用逆向工程的工具
            • 1.4.1 监测工具
              • 1.4.2 反汇编工具
                • 1.4.3 调试工具
                  • 1.4.4 开发工具
                  • 第2章 越狱ios平台简介
                    • 2.1 ios系统结构
                      • 2.1.1ios目录结构简介
                  相关产品与服务
                  腾讯云代码分析
                  腾讯云代码分析(内部代号CodeDog)是集众多代码分析工具的云原生、分布式、高性能的代码综合分析跟踪管理平台,其主要功能是持续跟踪分析代码,观测项目代码质量,助力维护团队卓越代码文化。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档