美文网首页iOS 架构知识
iOS逆向基本知识2:指针&MachO文件

iOS逆向基本知识2:指针&MachO文件

作者: 小宝_ab67 | 来源:发表于2018-05-09 21:43 被阅读0次

    指针


    1.指针自增、自减的结果,其实就是指针指向的数据类型宽度决定的!

    2.指针加上或减去一个整数的结果,其实就是指针指向的数据类型宽度决定的!

    3.指针求差,得到的结果是整形,其结果和指针指向的数据类型宽度有关!

    4.这也就是指针的特点! 它的运算单位 是数据类型的宽度!

    逆向原理


    动态调试 通过界面调试Cycript\Xcode LLDB!

    静态分析 利用我们之前学习的汇编代码,分析三方APP的源码!

    代码注入 注入的其实是动态库!HOOK代码 改变原来程序的执行流程!

    重签名 安装在非越狱手机上面

    class-dump


    $ class-dump -H MachO文件Path -o 头文件路径

    MachO文件


    官方介绍总共有11种格式! 是 Mach Object的缩写,是Mac\iOS 上用于存储程序,库的标准格式!

    常见的格式:

    1.可执行文件 

    2.objcet

        .o 文件(目标文件)

        .a 静态库文件.其实就是N个.o文件的集合

    3.DYLIB: 动态库文件

            dylib

            framework

    4.动态连接器

    5.DSYM

    动态库共享缓存

                dynamic linker

                dynamic loadel


    拆分二进制文件


    经常用于整合静态库

    瘦身

    $ lipo002--可执行文件 -thin armv7 -output macho_armv7

    $ lipo002--可执行文件 -thin armv64 -output macho_armv64

    整合

    $ lipo -createmacho_armv7 macho_arm64 -outputmachO_v7_64

    相关文章

      网友评论

        本文标题:iOS逆向基本知识2:指针&MachO文件

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