ipsw文件 提取系统文件 方法总结
由于修改运营商文件造成我的有锁4S无法使用移动卡了,在网上苦寻一番还是没有结果,最后萌生了从固件中提取文件的想法,于是便开始在网上搜集资料,最后文件终于提取成功并修复了我的问题,现在把我的经历记录一下,希望对有需要的朋友有所帮助。
注:本次提取操作全部是在ubuntu下进行的,另外附件里面有已经解密、解压过的dmg文件,可以直接在MAC或linux下挂载
1,首先到theiphonewiki网站看看你所需要的文件对应的设备及系统版本是不是已经有破译的密钥,如果没有的话这个教程就无能为力了;
如果有密钥的话你就可以放心的下载对应版本的固件进行解锁了,以iPhone4S,A1387,ios7.0.4
为例,我们需要下载的固件为iPhone4,1_7.0.4_11B554a_Restore.ipsw,下载到电脑以后随便找个归档软件便可以打开,其
实它就是一个普通的ZIP文件。解压后的大致目录如下:-rw-r--r-- 058-1077-002.dmg
-rw-r--r-- 058-1108-002.dmg
-rw-r--r-- 058-1124-002.dmg
-rw-r--r-- BuildManifest.plist
drwxrwxr-x Firmware
-rw-r--r-- kernelcache.release.n94
-rw-r--r-- Restore.plist
其中最大的那个文件就是ios的rootfs。
2,接下来要做是就是解密这个文件,首先第一步中的网址下找到这个文件对应的密钥,然后打开终端,输入命令:
- cd [vfdecrypt所在的文件夹]
- ./vfdecrypt -i058-1108-002.dmg -kda293860c6f7fe2d2e6c86275fa83a254b51bdf8303dbd1df70e39a8a13e4830353ecab8 -odmg.dmg
注意:这个命令和一般的linux命令有点不同,参数后面是没有空格的,如果输入空格,命令不会报错,但是程序会假死,也不会有任何文件输出。
3,上一步中生成的dmg文件已经是解密的了,但是还无法正常加载,它还是一个压缩文件,我们需要工具进行解压缩,在终端中输入以下命令:
- ./dmg extract dmg.dmg dmg-raw.dmg
在
这里本人遇到了一些问题,就是当运行这个命令时显示找不到对应的crypto的lib库,我在网上找了很多资料,但是都无法解决,最后只好自己编译了一下
openssl,然后将生成的libcrypto.a和libssl.a手动复制到/usr/lib目录下,在终端执行命令如下:
- sudo cp libcrypto.a /usr/lib
- sudo cp libssl.a /usr/lib
至于怎么编译openssl这里就不作介绍了,后面我会在附件里附上我编译好的库文件.
4,接下来要做的就是在ubuntu下mount我们生成的dmg-raw.dwg,在终端执行命令如下:
- sudo mkdir /mnt/iphonedmg
- sudo mount -o loop -t hfsplus ./dmg-raw.dmg /mnt/iphonedmg
这时候我们就可以到/mnt/iphonedmg目录下找我们需要修正的文件了.
附件:文中所需工具下载地址
http://files.cnblogs.com/files/yujidewu/UltraISO_9.3.6.2766_XiaZaiBa.exe.zip
///////////////////////////////////////////////////////////////////////////
iOS GM固件dmg格式使用UltraISO工具提取ipsw教程
gm固件dmg格式怎么提取ipsw?发现很多朋友下了gm固件后说不能使用,其实只要从gm固件dmg格式提取ipsw就可以使用了,那么gm固件dmg格式怎么提取ipsw,下面小编为大家介绍。
其实从官网下到的固件是dmg格式的,mac系统可以直接用,windows的话只能使用ipsw的固件才行,其实他就包含在我们的dmg固件里面,所以只要将他提取出来就可以。下面教大家gm固件dmg格式提前ipsw。
提取的工具我们使用UltraISO
iOS gm固件dmg格式怎么提取ipsw教程
首先用UltraISO找到我们下的dmg格式的固件,打开后发现里面就包含着ipsw格式的固件,右键提取保存就ok了
iOS gm固件dmg格式怎么提取ipsw教程
gm固件dmg格式怎么提取ipsw的方法就是这样的了,大家试试吧!