How To Find Out iPhone 3GS Bootrom Version [Updated]

BY Jason

Published 25 Jun 2010

Redsn0w 0.9.5 for iOS 4

If you’re interested in jailbreaking your iPhone 3GS you might have figured out by now that the jailbreaking tools like PwnageTool 4.0 for iOS 4 released by the iPhone Dev Team work only on iPhone 3GS models with older bootrom.

So one of the most frequently asked questions by our readers is how does one find out if the iPhone 3GS has an older or newer bootrom?

Update: Use F0recast to find out iPhone 3GS bootrom, it's a lot easier than this method.

Before we get into the details on how to find the bootrom version, here is a recap to understand why one needs to go through the hassle of finding the bootrom version for iPhone 3GS.

After iPhone 3GS was released last year, it had taken the iPhone hacking community almost fourth months to race ahead in the cat and mouse game of jailbreaking the iPhone, thanks to blackra1n, Geohot’s amazingly easy jailbreaking tool and iPhone Dev Team’s PwnageTool.

The bootrom is essentially a snippet of code that runs at startup time, and checks on the status of the boot image. It's generally used to verify that the image has not been corrupted, but can also be used to check for unauthorized firmware. The 24kpwn exploit – otherwise known as 0x24000 Segment Overflow – bypassed the signature checks on iBoot and allowed unsigned firmware to be loaded, which helped in jailbraking iPhone 3GS.

But since mid October 2009, Apple starting shipping new iPhone 3GS units with a new Bootrom that was not vulnerable to the 24kpwn exploit.

The version of the bootrom in older iPhone 3GS models is iBoot-359.3, while the version of the bootrom in new iPhone 3GS model is iBoot-359.3.2.

So how does one find out if the iPhone 3GS has the older or newer bootroom?

Unfortunately, it’s not straight forward and is a time consuming process. We would strongly recommend iPhone 3GS users who have software unlocked their iPhone and depend on it should avoid this guide as you could end up losing your software unlock.

Here are the step-by-step guide to find out the iPhone 3GS bootrom version (courtesy folks at Redmond Pie):

Mac Users:

Step 1: Put your iPhone into DFU Mode (not recovery mode)

  • Connect your iPhone to your computer.
  • Turn iPhone off.
  • Start iTunes.
  • Hold Power and Home buttons together for 10 seconds or so.
  • Release Power button but keep holding the Home button until your computer recognizes a new USB device.
  • iTunes will now recognize your iPhone.
  • Your iPhone screen at this time should be blank (black in color), if not, then you are most likely in Recovery Mode, not DFU mode.

Step 2: Run "System Profiler" and navigate to: Hardware -> USB (menu on left).

Step 3: At the top right under “USB Device Tree” panel click “Apple Mobile Device (DFU Mode)”.

Step 4: Look for the string under “Serial Number”, as highlighted in the screenshot below.

Step 5: If it’s 359.3, iPhone 3GS has old bootrom. If it’s 359.3.2 or anything above that, it has a new bootrom.

Find iPhone 3GS bootrom

Find iPhone 3GS bootrom

Note: In both the cases above, it doesn’t matter whether your iPhone is an MB model or an MC model. As long as it has 359.3 bootrom, iPhone 3GS has the old bootrom, and if 359.3.2 or above then iPhone 3GS has the new bootrom.

Windows Users:

Step 1: Put your iPhone into DFU Mode (not recovery mode)

  • Connect your iPhone to your computer (important).

  • Turn iPhone off.

  • Start iTunes.

  • Hold Power and Home buttons together for 10 seconds or so.
  • Release Power button but keep holding the Home button until your computer recognizes a new USB device.
  • A few seconds later iTunes will now recognize your iPhone.
  • Your iPhone screen should be blank (black in color), if you see the connect to iTunes logo, then you are most likely in Recovery Mode, not DFU mode.

Step 2: Right Click on My Computer (or Computer) in Explorer and click on: Properties -> Hardware (tab) -> Device Manager

Step 3: Select the “+” to open sub-menu items for "Universal Serial Bus (USB) Controller".

Step 4: Now look for "Apple Mobile Device USB Driver", right click and select Properties.

Step 5: Go to "Details" and find "Device Instance ID" or "Device Instance Patch".

Step 6: You’ll find the bootrom version (iBoot) under Value for that property, as highlighted in the screenshots below:

Step 7: If it’s 359.3, iPhone 3GS has old bootrom. If it’s 359.3.2 or anything above that, its a new bootrom.

Find iPhone 3GS bootrom

Find iPhone 3GS bootrom

Note: In both the cases above, it doesn’t matter whether your iPhone is an MB model or an MC model. As long as it has 359.3 bootrom, iPhone 3GS has the old bootrom, and if 359.3.2 or above then iPhone 3GS has the new bootrom.

We hope you found this guide useful. As always, let us know how it goes.

Update: 

Use F0recast to find out iPhone 3GS bootrom, it's a lot easier than this method.

[via Redmond Pie]