美文网首页ios逆向与安全
iOS逆向与安全(二):设备系统结构

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

作者: 繁华落尽丶lee | 来源:发表于2018-09-17 11:04 被阅读60次

    系统结构

    本节学习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,在左侧的导航栏选择文件系统。如下图:

    • Applications :存放所有的系统App和来自Cydia的App,不包括从App Store下载的APP。
    • Developer:供开发者使用。
    • Library: 系统资源,用户设置。
    • System: 系统的重要组成部分。其中,/Library/Carrier Bundles里面是运行商的一些配置。/Library/Frameworks/Library/PrivateFrameworks里面存放着系统公开和未公开的Framework
    • User: 用户目录,实际指向/var/mobile,使用mobile账号登录系统$HOME也是这个目录。
    • bin: 存放用户级二进制文件,例如:mv,ls等。
    • dev: 设备文件。
    • etc: 存放系统脚本、hosts配置、SSH配置文件等,实际指向private/etc/.
    • sbin: 存放系统级二进制文件,例如:reboot、mount等。
    • usr:用户工具和程序。
    • var: 一些经常改动的文件,包括keychains、临时文件、包括从APP Store下载的文件。

    文件的读写权限

    文件权限是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私房菜》

    参考文章

    相关文章

      网友评论

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

        本文链接:https://www.haomeiwen.com/subject/gwwhnftx.html