美文网首页
iOS逆向学习笔记 - 指针&Mach-O 文件

iOS逆向学习笔记 - 指针&Mach-O 文件

作者: iOS_LeON | 来源:发表于2018-05-16 14:26 被阅读22次

指针&MachO文件

指针

  • 指针自增、自减的结果,其实就是指针指向的数据类型宽度决定的!
  • 指针加上或减去一个整数的结果,其实就是指针指向的数据类型宽度决定的!
  • 指针求差,得到的结果是整形,其结果和指针指向的数据类型宽度有关!
  • 这也就是指针的特点! 它的运算单位 是数据类型的宽度!

逆向原理

动态调试 通过界面调试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

动态库共享缓存

为了提高性能,系统的动态库文件都存在了动态库共享缓存里面!

动态加载器(dyld)

  • dynamic linker
  • dynamic loadel

拆分二进制文件

经常用于整合静态库

瘦身

$ lipo 002--可执行文件 -thin armv7 -output macho_armv7
$ lipo 002--可执行文件 -thin armv64 -output macho_armv64

整合

$ lipo -create macho_armv7 macho_arm64 -output machO_v7_64

相关文章

  • iOS逆向学习笔记 - 指针&Mach-O 文件

    指针&MachO文件 指针 指针自增、自减的结果,其实就是指针指向的数据类型宽度决定的! 指针加上或减去一个整数的...

  • iOS逆向反编译

    iOS逆向 准备:完美越狱iPhone 逆向APP思路:1,代码分析 2,对Mach-O文件的静态分析MachOV...

  • iOS逆向005 指针&MachO文件

    指针&MachO文件 指针 指针自增、自减的结果,其实就是指针指向的数据类型宽度决定的! 指针加上或减去一个整数的...

  • iOS逆向开发(二)----Cycript,class-dump

    iOS逆向开发(二)----Cycript,class-dump,Mach-O Cycript 在逆向开发中经常要...

  • # iOS进阶 # 逆向的了解

    iOS逆向 1.class-dump解密 class dump 是一个用于检查保存在 Mach-O 文件中的 ob...

  • iOS逆向之指针&MachO文件(六)

    指针&MachO文件 指针 编译器决定了指针不能做乘法和除法运算! 指针自增、自减的结果,其实就是指针指向的数据类...

  • 指针&MachO文件

    逆向课程随堂笔记 指针&MachO文件 指针 指针自增、自减的结果,其实就是指针指向的数据类型宽度决定的! 指针加...

  • 逆向杂记

    逆向笔记 Mach-O为Mach object文件格式的缩写,它是一种可执行文件、目标代码、动态库的文件格式,作为...

  • iOS逆向学习

    参考文章:iOS逆向开发记录:iOS逆向之手机越狱iOS逆向之介绍iOS逆向之文件系统结构iOS逆向之文件权限及类...

  • iOS逆向-MACH-O文件

    博客迁移到hexo

网友评论

      本文标题:iOS逆向学习笔记 - 指针&Mach-O 文件

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