Banner

Tuesday, January 29, 2013

Spoof your iPhone firmware iOS 4.2.6 as iOS 4.3

I am sure I can't be the only one. I currently have an iPhone 4 (Verizon) updated to the last iOS4 version that is jailbreakable, 4.2.6. I really like this iOS version and my iPhone 4. I thought I was set for years. I could stand up against the onslaught of tempting technology. Then Apple got tricky.

Before iOS 5, CDMA and GSM iPhones were on different firmwares for the slightly different phones. Towards the end of iOS 4, GSM got 4.3 and CDMA got 4.2.10. Greenpois0n didn't bother releasing a jailbreak for the last firmware since iOS 5 was on the horizon and deserved their full attention. The result: any iPhone owner who did not want iOS 5 (for many reasons) and wanted to stay jailbroken had to stay with the earlier iOS 4.2. This was fine with me. Until I started seeing apps on Apple's App Store requiring 4.3 or above.

At face value, this seems straight forward. iOS 4.3 must include some newer libraries required for these newer apps. Not quite. The only main addition in 4.3 was a patch for the 4.2 jailbreak exploit. This was the checkmate to jailbreakers. Either update and lose your jailbreak, keep your jailbreak and be prohibited from using newer apps, or suck it up and continue the cycle with iOS 5. Until now.

As it turns out, the reported iOS firmware is actually set in a plist file. Once you modify the file, you can spoof the version as 4.3. Your jailbreak will stick around and you can download and use all apps requiring iOS 4.3!

A quick note:
There are reports that some have yielded their iPhone unbootable by misnaming or screwing up the plist file. As always, back your phone up and make absolutely sure everything is correct before rebooting. You can always do a restore. I have done this many times using the method below on my CDMA Verizon iPhone. TLDR: I'm not responsible if you have to do a restore.

STEP 1
First, make sure you are running the latest RC6 greenpois0n jailbreak. There are many fixes included in RC6 that you definitely want. Especially if you use emulators. You might be rolling back to 4.2 from another firmware. I won't get into that here since there are guides everywhere out there. Just follow a tutorial until you have a working, jailbroken, iOS 4.2.

STEP 2
Install iFile from Cydia

STEP 3
Navigate to /System/Library/CoreServices in iFile

STEP 4
Make a copy of SystemVersion.plist (call it SystemVersion.plist.old)

STEP 5
Open the original SystemVersion.plist in "Text Viewer"

STEP 6
Change the version id string to 8F190 (mine was 8E200)
Change the version number string to 4.3 (mine was 4.2.6)


STEP 7
Double check to make sure your SystemVersion.plist is set correctly

STEP 8
Reboot! (Don't mind the crazy screens you get during reboot)

And you're done! Feel free to enjoy the App Store once again. If you ever need to rollback, such as re-jailbreaking, change SystemVersion.plist to something else and remove the .old from the original.