ios逆向与安全

iOS逆向与安全(二):设备系统结构

2018-09-17  本文已影响60人  繁华落尽丶lee

系统结构

本节学习iOS设备的系统结构,在登录设备输入uname -a命令可以查看系统信息:

root# uname -a
// 输出
Darwin iPad 15.0.0 Darwin Kernel Version 15.0.0: Wed Dec  9 22:19:38 PST 2015; root:xnu-3248.31.3~2/RELEASE_ARM64_S5L8960X iPad4,5 arm64 J86AP Darwin

iOS系统是基于Darwin Kernel的,是一种UNIX-like系统。在正向开发中只能访问到沙盒中的DocumentsLibraryTemp等文件。通过越狱可以访问整个iOS文件系统。

文件目录

上一节中安装了两款软件,Mac平台的iFunBox和iOS平台Apple File Conduit 2。电脑连接iOS设备打开 iFunBox,在左侧的导航栏选择文件系统。如下图:

文件的读写权限

文件权限是UNIX系统确保安全操作的重要部分。由于iOS系统是基于UNIX的,所以同样适用。
首先来看三个属性:

远程登录iOS设备:

root# cd /
root# ls -l
// 输出结果:
//...
drwxr-xr-x  4 root wheel  136 Oct  9  2015 private
drwxr-xr-x  2 root wheel  612 Sep 14 19:37 sbin
lrwxr-xr-x  1 root admin   15 Sep 19  2015 tmp -> private/var/tmp
drwxr-xr-x 11 root wheel  374 Sep 14 19:37 usr
lrwxr-xr-x  1 root admin   11 Sep 19  2015 var -> private/var

若有一个文件的类型与权限数据为『lrwxr-xr-x』,请说明其意义为何?
先将整个类型与权限数据分开查阅,并将十个字符整理成为如下所示:

[l][rwx][r-x][r-x]
1 234 567 890

1 为:文件类型,普通文件(-),符号链接文件(l),文件夹(d)。
234为:拥有者的权限,本例中为可读、可写、可执行(rwx);
567为:同群组用户权限,本例中为可读可执行(rx);
890为:其他用户权限,本例中为可读(r)

同时注意到,rwx所在的位置是不会改变的,有该权限就会显示字符,没有该权限就变成减号(-)就是了。

文件权限用3个比特表示文件的操作权限,从高到低位分别是读r,写w,执行x。rwx三个比特为转换成二进制111,可以用4代表读权限,2代表写权限,1代表执行权限。转成十进制为7

如果想要更改文件权限,可以使用chmod命令。

chmod 755 xxx
// 7:文件所有者权限读写执行,5:组权限和其他人权限为读与执行

小结

以上是iOS文件系统的相关内容,如果了解UNIX系统这些是最基本的内容。推荐《鸟哥的Linux私房菜》

参考文章

上一篇 下一篇

猜你喜欢

热点阅读