美文网首页
iOS逆向(二)-系统文件层次结构介绍

iOS逆向(二)-系统文件层次结构介绍

作者: Yochi | 来源:发表于2017-08-18 11:28 被阅读54次
    • 可视化方式查看iOS系统文件
      可视化查看app系统文件方式很多
      == 在iOS通过Cydia安装Apple File Conduit 2,在OS X使用iFunBox可以查看iOS系统文件(iOS和OS X需要在通一个局域网内)
      ==手机上安装iFile查看:
    Cydia添加威锋源:
    http://repo.feng.com/
    http://apt.feng.com/
    搜索iFile插件即可使用 iFile对目录进行查看
    
    • 通过SSH远程登录iOS来查看
      ==Cydia上搜索OpenSSH并安装
      ==打开电脑终端 登录iOS ssh -p 22 root@xxx.xxx.xx.xx(同意局域网的ip地址)
      ==默认密码: alpine
      ==iOS 10 操作参考:iOS逆向(一)-环境介绍和基本工具的使用

    • Filesystem Hierarchy Standard(简称FHS, 文件系统层次化标准)
      FHS为类UNIX操作系统的文件目录结构制定了一套标准,目的是让用户预知文件或目录存放的位置。UNIX操作系统的常见目录结构如下所示:

    /: 根目录, 以斜杠表示,其他所有文件和目录在根目录展开
    
    /bin: "binary"的简写,存放提供用户级基础功能的二进制文件,如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用户的文件,是重点关注的目录
    
    • UNIX系统文件权限简介 (UNIX一切皆文件:读写普通文件、目录、设备、socket、管道、cpu信息、进程信息等)
      • 系统用3位(bit)来表示文件权限,从高位到地位分别是r(read)权限、w(write)权限、x(execute)权限。
        文件与用户的关系存在以下三种可能性:
        • 此用户是属主用户(文件所有者的权限)
        • 此用户不是属于主用户,但在属主组里(组用户权限)
        • 此用户既不是属主用户,又不在属主组里(Other用户权限)
    1111 1111  = 2^0*1 + 2^1*1 + 2^2*1 + 2^3*1 + ...+2^7*1 = 2^8 - 1 
    
    8421
    1111  = 8+4+2+1 = 15
    1011  = 8+2+1 = 11
    
    rwx      r-x    r--
    111      101    100 
    所有者   属组   其他
    
    用3*3位来表示一个文件的权限,如果某一位为1,则这一位代表的权限生效,否则无效。例如,111101101代表rwxr-xr-x,即该文件的属主用户拥有r、w、x权限,而属主组和其他所有人只具有r和x权限;同时,二进制的111101101转换成十六进制是755,也是一种常见的权限表示法。
    
    可以使用chmod 命令修改文件权限,如 chmod  755  filename
    
    • iOS的独有目录
    /Applications:存放所有的系统App和来自于Cydia的App,但不包括StoreApp。
    
    /Developer:如果一台设备连接Xcode后被指定为调试用机,Xcode就会在iOS中生成这个目录,其中会含有一些调试需要的工具和数据。
    
    /Library:存放一些提供系统支持的数据。其中/Library/MobileSubstrate下存放了所有基于CydiaSubstrate(原名MobileSubstrate)的插件(如:tweak编写的插件)。
    
    /System/Library:iOS文件系统中最重要的目录之一,存放大量系统组件。
    
    /System/Library/Frameworks和/System/Library/PrivateFrameworks:存放iOS中的各种framework
    

    相关文章

      网友评论

          本文标题:iOS逆向(二)-系统文件层次结构介绍

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