Apple保护机制
iOS系统安全架构
软件+ 硬件固件
软件:文件系统->操作系统分区->用户分区(已加密)->应用沙盒->数据保护类
硬件固件:设备秘钥、组秘钥、Apple根证书->加速引擎->安全原件->内核
安全启动链->系统软件授权->代码签名->运行时进程安全性(1:沙盒机制 2:数据执行保护 3:地址空间随机性)->数据加密保护
安全启动链
系统启动过程中每一步包含的组件都已经经过苹果签名,并且只有在验证了信任链后才被执行。
系统启动->boot ROM ->底层引导加载程序(LLB)->引导加载程序(IBOOT)->kernel
签名验证 通过会继续 ·不通过 - 恢复固件升级模式
系统软件授权
为避免设备降级为缺少最新安全性更新的早期版本,iOS采用了名为“系统软件授权”的过程。
固件 ->CPU ->iTunes -固件签名 ->服务器验证 -> 开启验证-> 返回验证许可 /验证许可+随机串 - 验证通过刷机成功
关闭了开启验证这个环节之后,就无法刷机了。
应用代码签名
为确保所有应用均来自已经获准的来源,并且没有被篡改,iOS要求所有的可执行代码均使用Apple颁发的证书进行签名。
可执行代码 -> 加载动态库 ->加载资源----》运行时签名验证 --===-》验证通过 (正常运行)
沙盒机制
iOS提供的沙盒机制 保证APP 在运行的时候在隔离的环境中,不能互相访问。不能访问别的应用的存储空间的内容,应用程序请求的数据必须要授权才能访问(例如在访问相册相机等)!
数据执行保护(DEP)
处理器区分哪部分内存是可执行代码 、哪部分内存是不可执行代码。DEP不允许数据的执行,只允许代码的执行。
ROP开辟一段内存空间写入一段代码执行。但是需要签名验证,所以不合法的是没办法进行操作的。
地址空间布局随机化(ASLR)
在iOS中,二进制文件、库文件、动态链接文件、堆栈内存地址的位置全是随机的
可以用image list-o -f 查看每次程序加载的基地址都是变化的
加密和数据保护

越狱
通过一系列的iOS系统漏洞,对系统安全权限进行破解,获取系统的root权限。
分类
1:引导式越狱;2:不完美越狱;3:完美越狱
Cydia
系统主题,功能扩展 命令行工具 安装APP 程序插件(tweek)
越狱的利弊:
利:1:可以通过Cydia安装各种插件 2:更改系统外观 3:随意安装应用
弊:1:恶意代码运行的概率变大 2:系统的不稳定性增加 3:不予保修
沙盒机制没有失效
需要安装系统APP才能查看访问系统的目录
APP下载的APP还是没办法访问
可以用一些专门的软件进行查看文件的目录 ;
OpenSSH
SSH是一种可以保证用户远程登录到系统的协议。
OpenSSH是SSH的开源实现,使用加密的远程登录实现,可以有效保护登录及数据的安全。
更改密码
root :linux/unix系统中权限最高的账户,等于windows中的administrator,具有对系统完全的控制权,因此也最容易受到攻击。
mobile:使用设备时其实是以mobile用户组的身份进行操作的,这个账户比root权限低,就想Windows中的普通用户,可以操作一些普通文件,但是系统文件不可操作。这个账户同样重要。
网友评论