[实验]通过内核Patch去掉iOS-v4.3.3的沙盒特性

本文介绍如何在MacOSX 10.9.2环境下使用xcode5.1.1和redsn0w0.9.15b3等工具对iOS 4.3.3的内核进行Patch操作。包括修改sandbox.S文件、编译datautils0、制作及应用内核Patch,最后使用redsn0w引导Patch后的内核。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境:

1、Mac OS X 10.9.2

2、xcode 5.1.1

3、gcc 4.8

4、redsn0w 0.9.15b3

前提:

1、获取 iOS 4.3.3 的kernelcache,并解密

操作步骤:

1、修改 datautils0/sandbox.S 的19行,将“movs r2, #19”改为“movs r2, #1”

2、编译 datautils0,也可以从此处下载

3、制作内核Patch:./make_kernel_patchfile ./kernel-iPod4,1-v4.3.3.decrypted ./kernel-iPod4,1-v4.3.3.patch

4、应用内核Patch:./apply_patchfile ./kernel-iPod4,1-v4.3.3.decrypted ./kernel-iPod4,1-v4.3.3.patch ./kernel-iPod4,1-v4.3.3.patched

5、使用redsn0w引导Patch后的内核:/Applications/redsn0w.app/Contents/MacOS/redsn0w -i iPod4,1_4.3.3_8J2_Restore.ipsw -k kernel-iPod4,1-v4.3.3.patched

6、写demo测试,读取MobileSafari的Info.plist

  - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
  {
      NSString *safariInfoFilePath = @"/Applications/MobileSafari.app/Info.plist";
      NSDictionary *infoContent = [NSDictionary dictionaryWithContentsOfFile:safariInfoFilePath];
      NSLog(@"-------->%@", infoContent);
 
      self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
      // Override point for customization after application launch.
      self.window.backgroundColor = [UIColor whiteColor];
      [self.window makeKeyAndVisible];
      return YES;
}


===========================================

接下来找时间详细得读读 datatuils0 的代码。

.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值