美文网首页ios 开发
iOS逆向_动态库共享缓存

iOS逆向_动态库共享缓存

作者: iOS小洁 | 来源:发表于2023-01-15 22:44 被阅读0次

动态库共享缓存

从iOS3.1开始,为了提高性能,绝大部分的系统动态库文件都打包存放到了一个缓存文件中(dyld shared cache)

缓存文件路径:/System/Library/Caches/com.apple.dyld/dyld_shared_cache_arm[x]

dyld_shared_cache_arm[x]的x代表ARM处理器指令集架构

动态库共享缓存一个非常明显的好处是节省内存

现在的ida、Hopper反编译工具都可以识别动态库共享缓存

架构对应手机

所有指令集原则上都是向下兼容的

v6
iPhone、iPhone3G
iPod Touch、iPod Touch2

v7
iPhone3GS、iPhone4、iPhone4S
iPad、iPad2、iPad3(The New iPad)
iPad mini
iPod Touch3G、iPod Touch4、iPod Touch5

v7s
iPhone5、iPhone5C
iPad4

arm64
iPhone5S、iPhone6、iPhone6 Plus、iPhone6S、iPhone6S Plus
iPhoneSE、iPhone7、iPhone7 Plus、iPhone8、iPhone8 Plus、iPhoneX
iPad5、iPad Air、iPad Air2、iPad Pro、iPad Pro2
iPad mini with Retina display、iPad mini3、iPad mini4
iPod Touch6

抽取动态库

可以使用dyld源码中的launch-cache/dsc_extractor.cpp
将#if 0前面的代码删除(包括#if 0),把最后面的#endif也删掉

编译dsc_extractor.cpp
clang++ -o dsc_extractor dsc_extractor.cpp

使用dsc_extractor
./dsc_extractor  动态库共享缓存文件的路径   用于存放抽取结果的文件夹

动态库加载

在Mac\iOS中,是使用了/usr/lib/dyld程序来加载动态库

dyld

dynamic link editor,动态链接编辑器

dynamic loader,动态加载器

dyld源码: https://opensource.apple.com/tarballs/dyld/

相关文章

  • iOS逆向_动态库共享缓存

    动态库共享缓存 从iOS3.1开始,为了提高性能,绝大部分的系统动态库文件都打包存放到了一个缓存文件中(dyld ...

  • 五 iOS逆向- 动态库共享缓存(dyld shared cac

    共享缓存机制 dyld简介 共享缓存库中抽取动态库 从iOS 3.1开始,为了提高系统的性能,所有的系统库文件都被...

  • 【iOS逆向工程】dyld_shared_cache_X动态库共

    苹果的动态库都放在了缓存里,叫动态库共享缓存,从iOS 3.1开始,为了提高性能,绝大部分的系统动态库文件都打包存...

  • iOS逆向-dyld shared cache 动态库共享缓存-

    从iOS3.1开始,为了提高性能,绝大部分的系统动态库都打包存档到了一个缓存文件中。 动态库共享缓存 缓存文件存放...

  • 动态库共享缓存

    动态库共享缓存 从iOS3.1开始,为了提高性能,绝大部分的系统动态库文件都打包存放到了一个缓存文件中(dyld ...

  • iOS 底层原理 day04 dyld Mach-O

    一、动态库共享缓存(dyld shared cache) 从 iOS3.1 开始,为了提高性能,绝大部分的系统动态...

  • 静态库与动态库

    在iOS中,库分为静态库和动态库,它是程序代码共享的方式。 iOS静态库的形式:.a和.framework iOS...

  • DYLD 摘录

    原文: iOS中dyld缓存的实现原理是怎样的? 在iOS系统中,几乎所有的程序都会用到动态库,而动态库在加载的时...

  • iOS App启动优化:动态库手动加载

    一、前言 在介绍动态库手动加载方式之前,我们简单了解下动态库,又名共享库在iOS中是个特殊的存在,除了系统库以外,...

  • 应用程序加载

    程序加载流程: 动态链接器Dyld加载流程:1、环境变量的配置。2、共享缓存。3、主程序初始化。4、 加入动态库。...

网友评论

    本文标题:iOS逆向_动态库共享缓存

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