iOS提取系統dylib方法
来源:互联网 发布:北京银行 程序员 待遇 编辑:程序博客网 时间:2024/04/29 19:02
转载地址:http://www.dotblogs.com.tw/cmd4shell/archive/2012/11/15/83453.aspx
iOS有一部分系统动态库是存放于动态链接库cache中。该链接库cache存在于/System/Library/Caches/com.apple.dylib/dyld_shared_cache_armv7中。如果想要分析其中的dylib,就需要对其进行解密。最新版的IDA Pro已经支持该功能,对使用老版IDA的用户则可以使用解密cache的方法将需要分析的dylib提取进行分析。
现成的工具在这里:https://github.com/kennytm/Miscellaneous/downloads,下载最新版的dyld_decache。
工具具体命令如下:
$ ./dyld_decache
dyld_decache v0.1c
Usage:
dyld_decache [-p] [-o folder] [-f name [-f name] ...] path/to/dyld_shared_cache_armvX
Options:
-o folder : Extract files into 'folder'. Default to './libraries'
-p : Print the content of the cache file and exit.
-f name : Only extract the file with filename 'name', e.g. '-f UIKit' or
'-f liblockdown'. This option may be specified multiple times to
extract more than one file. If not specified, all files will be
extracted.
由于直接从系统提取文件有ASLR问题,我通过多种方式解决仍无法解密,因此采用从固件中提取的方式提取。首先下载固件,然后使用WinRAR/WinZIP一类的文件打开,解压最大的DMG文件。
以iPhone3,1_5.1.1_9B206_Restore.ipsw为例,对解压的DMG执行:
./vfdecrypt -i038-4292-008.dmg -ke897c2d0aaaea8f2752ff6e144c6efc3158a5dad13c6b95ebe8b99885fc6ad0f6b5448f7 -o038-4292-008_decrypt.dmg
打开解密后的DMG,提取上面路径下的dyld cache。
文件很大,有200M之巨。执行命令即可完成解密:
$ dyld_decache dyld_shared_cache_armv7
0/522: Dumping '/System/Library/Frameworks/CoreTelephony.framework/CoreTelephony'…
…….
即可完成对所需要系统dylib的解密。
------------------------------
- iOS提取系統dylib方法
- 为ios工程添加 .dylib库 的方法,libz.dylib libsqlite3.dylib等等
- ios 9.1以后 添加libz.dylib 方法
- Xcode添加 .dylib方法
- 生成iOS下的dylib
- IOS开发微信登录找不到libz.dylib,libsqlite3.0.dylib,libc++.dylib等
- Build and use dylib on iOS
- iOS中创建,使用动态库(dylib)
- iOS下远程进程注入dylib源码
- iOS中创建,使用动态库(dylib)
- Build and use dylib on iOS
- 文章标ios 9.0SDK 没有.dylib
- IOS 解决.dylib找不到的问题
- iOS Hacker 动态库 dylib 注入
- IOS逆向--进行dylib的重新签名
- iOS中遇到libc++abi.dylib`__cxa_throw:
- iOS: 从ipa提取图片资源文件及从iOS设备提取ipa文件的方法
- iOS: 从ipa提取图片资源文件及从iOS设备提取ipa文件的方法
- Android中pendingIntent的深入理解
- 【python系列】Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
- 拥抱Spark,机遇无限——Spark Summit 2013精彩回顾
- MyEclipse 6.5中安装svn插件
- Android中的Intent详细讲解
- iOS提取系統dylib方法
- A Proud Linguist
- Yahoo的Spark实践,下一代Spark调度器Sparrow
- Android开发中Intent的具体用法
- 如何在移动搜索中保持优势-骆旭剑
- mac系统如何显示和隐藏文件
- 2013年第4季度GPS品牌网络知名度排名
- android.view.InflateException: Binary XML file line
- 你所不知道的 const