Thursday, April 26, 2012

How I Downgraded My iPhone (and Why I Won't Go Back)


I'm fed up, Apple. I've been patient—borderline masochistic, even. I understood that my iPhone 3G—almost three years old—is geriatric in consumer electronics years. I accepted that I wouldn't get the latest features. However, when iTunes prompted me to download iOS 4, I didn't expect it to slow my phone to a crawl. A reflexive sympathizer, I updated iOS 4 as far as you permitted—iOS 4.2.1—in the hope that I would reclaim the performance of iOS 3. It never materialized. I wasn't the only one to protest, but I was neither feisty enough to file a class action lawsuit nor so pliant to purchase a new iPhone, even if it is incandescent white. Instead, I resolved to boycott iOS 4 bydowngrading my iPhone. You didn't make it easy, Apple, but fortified with the Internet, tenacity, and a constantly replenished supply of coffee, I turned back the clock. This is how I did it, and this is why I'm not turning back.
Why I Did It
In March, Apple took my phone off life support: while iOS 4.3 gallivanted the web—armed with Personal Hotspots and a Nitro-charged Safari—Apple quietly pulled the plug on my iPhone 3G by freezing software updates at iOS 4.2.1. What I called iOS 4.2 was already a distant cousin to the iOS others knew. I was given a taste—folders, threaded e-mail, iBooks—but denied multitasking, Airplay, Airprint, and Game Center.
While I never expected Apple to ship every feature to every device, I won't lie—this stung. More than anything else, it stung because it revoked a hope. I updated again and again hoping that Apple would address what had dogged my iPhone since the introduction of iOS 4. At the end of the upgrade cycle, I was forced to confront an uncomfortable truth: this was as good as it could get. My response to that truth: defiance. I admit to Jailbreaking. I restored my phone (numerous times). Neither made a difference. So, with few other options and little to lose, I decided to transport my phone back to a time when waiting was a less prominent part of my digital life: iOS 3.
How I Did It
It turns out, plenty of people are looking to downgrade, and even more seem to be posting instructions on how to do it. Unfortunately, many led me astray. Some sites suggested that I uninstall iTunes and re-install iTunes 7.5. This wasn't necessary. Other tutorials required multiple Shareware utilities. I only needed one. After a day of trial and error, I have constructed a simpler way backward, for you dear reader, by synthesizing information from here and here.
iPhone Downgrading RecBoot
I began by downloading the appropriate version of iOS 3.1.3 for my iPhone 3G: iPhone1,2_3.1.3_7E18_Restore.ipsw. At 240 megabytes, it weighs considerably less than recent updates to iOS 4. The second, considerably smaller, requirement is RecBoot a teeny-tiny utility used to get your phone into and out from recovery mode.
Contrary to many instructions, you do not need to use button combinations to put your phone into recovery mode. Instead, I used RecBoot. After plugging my phone into my computer and quitting iTunes, I opened RecBoot and clicked "Enter Recovery."
Once finished, I re-launched iTunes, which prompted me to restore my iPhone. Now, rather than allowing iTunes to restore using the latest available version of iOS 4, I wanted to point iTunes to my iOS 3 package. To manually select the package, I Alt-clicked—on Windows, it's Shift-click—the Restore button and indulged in a coffee—okay, two—while it reformatted.
Ready for this? The process has successfully completed once you receive an error message. I received an "Unknown error 1015," though other "unknown errors" are kosher. Once erred, I quit iTunes, re-launched RecBook, and clicked "Exit Recovery." When my phone rebooted, it ran iOS 3.
iPhone Downgrading Xcode
Another (Simpler) Way
That's a lot of bother. There is an easier way if you have—or are willing to buy—Apple's developer toolkit, Xcode. Chances are, you don't, but all you need is a Mac, $5, and a whole lot of hard drive space. Apple makes Xcode available through theiringenious Mac App Store. At 4.5 gigabytes, it's a bargain, but it will, needless to say, take time to download and install. Once you have it, however, the process is simple: download the appropriateversion of iOS, open Xcode's Organizer, and locate the package. Xcode does the rest.

What I Gained
When I set out to downgrade my iPhone's operating system, I hoped that rolling back to last summer would rekindle the load times of yore. It turns out, that iOS 3 performance isn't just nostalgia—it's substantiated by numbers.
Before I set out on this project, I benchmarked my phone performing ten basic functions—from opening Settings to powering on. I also applied the same real-world browser test I used for the Opera and Dolphin mini browsers, though I used Wi-Fi to eliminate cellular signal as a variable: I loaded the desktop versions of NYTimes.com, Radioshack.com, CNN.com, and Expedia.com. After I had restored to iOS 3, I reran all the benchmarks. These are the results, in seconds:
iPhone Downgrading ALL
iOS 3 is faster than iOS 4 in every test. Sometimes—such as opening Messages or Mail—it comes down to fractions of a second. However, in some areas, differences are stark. In iOS 3, I can access Google Maps 7 seconds faster, a material difference for one of my most-used apps. I can open Settings in less than half the time (1.8 seconds as opposed to 5.2 seconds). If my battery dies and I need to power on my phone, it takes 11 fewer seconds. The differences are even more prominent when it comes to Web use.
While my phone is still painfully slow to load graphically intensive websites over Wi-Fi, it's lesspainful now. In all but one instance—Radioshack.com—Safari in iOS 3 opened pages about 10 seconds faster than Safari in iOS 4. Granted, Expedia was the only site that loaded in a reasonable amount of time. However, I'll take savings where I can. Returning to iOS 3 has made my phone useful again—or, at least, usable—until I can pounce on an iPhone 5.
What I Lost
Just as I anticipated a performance bump, I also expected to lose prized features including folders and e-mail threading. I also encountered a couple of surprises. With my phone returned to iOS 3, I synced with iTunes and encountered my first disappointment: Apple considered my phone's software "too old" to use my last iTunes backup. That meant I that I had to set up my phone from scratch.
iPhone Downgrading Lost Apps
The second issue entailed app compatibility. I admit that I'm an app hoarder. At last count I had accumulated 81, and of those 81, I lost 11 during the move. This actually isn't as bad as I had feared: I update my apps regularly, and I had assumed a survival rate far lower than 87%. I braced for the loss of subway apps, Netflix, or even Peel. Thankfully, all escaped unscathed.
I did, nevertheless, lose some regulars. Strewn among the collateral damage were Adobe Photoshop ExpressEpicurious, and Foursquare. iBooks, an iOS 4 exclusive, also vanished. If you're one of those people who never empties your trash, you may be able to retrieve a previous version of an updated app, drop it back into iTunes, and use it in iOS 3. Unfortunately, I'm not a hoarder in this regard.
Aside from lost apps and the legwork of reconfiguring my phone, the changes are obvious. I have more Home screens now that I've lost my folders. My e-mail is messier without threading. And some UI elements—including the Dock—look differently.
Why I Will Not Go Back
While I didn't want it to come to this, I don't regret taking the path backward. iOS 4 had so debilitated my iPhone that I had begun to avoid—even dread—using it. iOS 3 is no panacea, but it has prolonged my phone's life, and its utility. Downgrading has also challenged my habits. As previously confessed, I've become app hoarder. Folders enabled my behavior. Losing folders has forced me to think about what I actually do on my phone, and, correspondingly, what I actually need on my phone. It's true that I can do (a little bit) less now than before. But I also feel like I'm doing more with what I have.

Hacker Pod2G Is Nearing Completion Of The iOS 5.0/iOS 5.0.1 Untethered Jailbreak


Hacker Pod2G seems to be doing a great job at updating the Jailbreaking community with his progress of the iOS 5.0/iOS 5.0.1 Untethered Userland Jailbreak. Today he has written yet anotherblog post with a progress update on his Untethered Jailbreak.
To summarize his blog post Pod2G has managed to test his Untethered Jailbreak on the first generation iPad (it worked) and today his goal was to test it on the iPhone 3GS. He has mentioned that he does not plan to let the public test his Untethered Userland Jailbreak for fear of a leak, likeComex’s last Userland Jailbreak. Pod2G’s upcoming tasks include finalizing the Jailbreak for older iDevices, fixing some stability issues and then packaging it for public distribution. On top of everything that Pod2G is currently working on, he will also be researching whether or not he can port his Untethered Userland Jailbreak to the iPad 2 and iPhone 4S.
This is some exciting news from Pod2G, and if all goes as planned we can expect the UntetheredUserland Jailbreak to be released within the next week or so. We will keep you updated on the progress of Pod2G’s Untethered Userland Jailbreak. 

An Update On The iPhone 4S Untethered Userland Jailbreak From Hacker Pod2G

With millions of iPhone 4S’ sold around the world, this leaves a large majority of iPhone 4S users longing for a Jailbreak. Right now the only person that we know has made progress on Jailbreaking the iPhone 4S is hacker Pod2G. In fact, he has done more than look into an iPhone 4S Jailbreak, he has created an iOS 5.0/iOS 5.0.1 Untethered Userland Jailbreak for the iPhoneiPod Touch and iPad that he is going to be releasing to the public within the coming weeks.
iPhone 4S and iPad 2G Untethered Jailbreak
few days ago we told you that hacker Pod2G purchased an iPhone 4S for testing the UntetheredUserland Jailbreak on. Now, Pod2G has updated his blog to provide a status update on how his progress of porting his Untethered Userland Jailbreak to the iPhone 4S is going.
The untether fails right now because I’m having processor cache issues.
I’m close, but I can’t figure out what happens. It certainly has something to do with the Cortex-A9 cache management.
I could sort it out quick, it’s a matter of chance.
I’ll report you my progress tomorrow.
By the sounds of it Pod2G has made some good progress on Jailbreaking the iPhone 4S. Thus, I know I am not the only one hoping the Pod2G brings us good news tomorrow when he updates us on how things are going. As always, we will keep you updated when new information becomes available. In the mean time please stay tuned to iJailbreak.com and leave any questions or thoughts in the comments section below…
UPDATE #1: Pod2G has fixed these issues and has had the help of Saurik to essentially finish theiPhone 4S Untethered Jailbreak. Click here to find out more!

iPhone 4S 5.0.1 untethered BY POD2G

My friend @DHowett made a video of an untethered 4S iPhone 4,1 running iOS 5.0.1 some days ago.

@DHowett is a famous iOS developer and a member of the Chronic Dev Team.

Only a few to wait now.

iPhone 4S and iPad 2 untether to be released real soon


iPhone 4S and iPad 2 untether to be released real soon

Hello dear readers,

I know the wait was long, too much long, but it's about to end! You'd be able to free your iPhone in some hours.

A tool named Absinthe and developped by the Chronic Dev Team will install the untether on your device. Also the iPhone Dev Team will release a CLI (command line) tool to help diagnose issues and repair things if it goes wrong.

This is a little scary I know, but the chance you break something is really small, since we made lots of tests to verify the process on different devices. But it is the first time we use the backup / restore functions of iTunes to install software, and there are maybe things we are not aware of.

As you already know, different security researchers put a lot of energy to work out the different issues we had to install the untether on new devices.

Thus, a unified PayPal account was opened so that everyone who worked on the A5 exploits will receive a fair split of your contributions. Here is the link : contribute
As usual, contributions are not needed but are appreciated by developpers. By the way, thank you very much again for everyone who already participated. This is real nice.

Here is the complete list of Absinthe supported devices :
  • iPhone 4S running iOS 5.0, 5.0.1 (9A405 and 9A406)
  • iPad 2 Wifi/GSM/CDMA running iOS 5.0.1
Also, here is MuscleNerd's which explains the whole story in a really precise way: iPhone Dev Team blog post

iPad 2 5.0.1 untethered


iPad 2 5.0.1 untethered

No more to say !

IMPORTANT LINKS FOR IOS: Absinthe update


Absinthe (iPhone 4S and iPad 2 untether installer) is out

The greenpois0n blog is under heavy load... because it's indeed out !

Here is the download link of Chronic Dev Team's Absinthe : Absinthe MacOSX (>=10.6) v0.1.2-1

Happy Cydia !


Absinthe update 0.1.2-2

Chronic Dev Team has released a new build that'll point the web clip to greenpois0n.com instead of the absinthe dedicated page.

This will handle better the workload.

Here is the modified build link : Absinthe MacOSX (>=10.6) v0.1.2-2


Absinthe v0.3

Chronic Dev Team has released a new version of the A5 jailbreak tool Absinthe.

Don't reapply if your 5.0.x device is already jailbroken as it won't change anything.

The untether payload is exactly the same, only the computer part has been improved for stability issues.

Here are the links:
Absinthe Windows v0.3
Absinthe MacOSX (>=10.6) v0.3
Absinthe Linux v0.3

A working GNU Debugger on iOS >= 4.3


A working GNU Debugger on iOS >= 4.3

People know that the gdb package coming from Cydia is broken since 4.3.

But here is a simple way to have a working gdb running on your iOS device : use the one from the Apple SDK !

Prerequisites :
- a jailbroken iOS >= 4.3 device
- OpenSSH should be installed on the iOS device and should listen for connections
- an OSX machine with the iOS SDK >= 4.3 installed

How to :
- remove the gdb package from Cydia
- do the following in the OSX terminal :

cd /tmp
cp /Developer/Platforms/iPhoneOS.platform/Developer/usr/libexec/gdb/gdb-arm-apple-darwin .
lipo -thin armv7 gdb-arm-apple-darwin -output gdb
nano entitlements.xml

- paste the following to the OSX terminal :

        com.apple.springboard.debugapplications
       
        get-task-allow
       
        task_for_pid-allow
       

- save the file by doing CTRL + X, then 'Y', then 'ENTER'

- now do the following in the OSX terminal :

ldid -Sentitlements.xml gdb
scp gdb root@:/usr/bin/

- GDB is now installed to your iOS device.

Happy debugging !

IDC script to help reverse iOS 5 binaries with IDA < 6.2


IDC script to help reverse iOS 5 binaries with IDA < 6.2


Apple is not standing still and in iOS 5 the default compiler is LLVM instead of GCC. It produces somewhat different code and IDA < 6.2 fail to resolve references which are now relative to PC.

I wrote a little IDC script to resolve those refs (I don't know if another solution exists...). Feel free to use it and modify it to your needs.

It's on github.


Here is an example of code dissasembled with IDA :

__text:00001000 MOV R4, 0x12344
__text:00001008 ADD R4, PC

After executing this IDC script :

__text:00001000 MOV R4, 0x12344
__text:00001008 ADD R4, PC ; off_13350

(if the address is named, the name will appear instead of off_xxx)

The xref is also added so that when you type X on address 0x13350 you'll see where it is used.

Hope it could help.

Wednesday, April 25, 2012

a bible for jailbreak along with jailbreak list


Untethered vs. Tethered

An untethered jailbreak means you can turn off your device and reboot without the use of a computer. Atethered jailbreak means you can not reboot your device if you turn it off without the use of a computer.

Jailbreak iPhone 4S:

iOS 5.0.1 / 5.0: Absinthe (Untethered) (Recommended)

Jailbreak iPad 2:

iOS 5.0.1 / 5.0: Absinthe (Untethered) (Recommended)
iOS 4.3.3: JailbreakMe (Untethered)


Jailbreak iPhone 4

iOS 5.0.1: RedSn0w (Untethered) (Recommended)
iOS 5.0.1: Sn0wBreeze (Untethered)
iOS 5.0.1: PwnageTool (Untethered)
iOS 5.0: RedSn0w (Untethered)
iOS 4.3.5: RedSn0w (Tethered)
iOS 4.3.4: RedSn0w (Tethered)
iOS 4.3.4: PwnageTool (Tethered)
iOS 4.3.3: JailbreakMe (Untethered)
Jailbreak iPod Touch 4G
iOS 5.0.1: RedSn0w (Untethered) (Recommended)
iOS 5.0.1: Sn0wBreeze (Untethered)
iOS 5.0.1: PwnageTool (Untethered)
iOS 5.0: RedSn0w (Untethered)
iOS 4.3.5: RedSn0w (Tethered)
iOS 4.3.4: RedSn0w (Tethered)
iOS 4.3.4: PwnageTool (Tethered)
iOS 4.3.3: JailbreakMe (Untethered)

Jailbreak iPod Touch 3G

iOS 5.0.1: RedSn0w (Untethered) (Recommended)
iOS 5.0.1: Sn0wBreeze (Untethered)
iOS 5.0.1: PwnageTool (Untethered)
iOS 5.0: RedSn0w (Untethered)
iOS 4.3.5: RedSn0w (Tethered)
iOS 4.3.4: RedSn0w (Tethered)
iOS 4.3.4: PwnageTool (Tethered)
iOS 4.3.3: JailbreakMe (Untethered)

Jailbreak iPhone 3GS

iOS 5.0.1: RedSn0w (Untethered) (Recommended)
iOS 5.0.1: Sn0wBreeze (Untethered)
iOS 5.0.1: PwnageTool (Untethered)
iOS 5.0: RedSn0w (Untethered)
iOS 4.3.5: RedSn0w (Tethered)
iOS 4.3.4: RedSn0w (Tethered)
iOS 4.3.4: PwnageTool (Tethered)
iOS 4.3.3: JailbreakMe (Untethered)

Jailbreak iPad 1G

iOS 5.0.1: RedSn0w (Untethered) (Recommended)
iOS 5.0.1: Sn0wBreeze (Untethered)
iOS 5.0.1: PwnageTool (Untethered)
iOS 5.0: RedSn0w (Untethered)
iOS 4.3.5: RedSn0w (Tethered)
iOS 4.3.4: RedSn0w (Tethered)
iOS 4.3.4: PwnageTool (Tethered)
iOS 4.3.3: JailbreakMe (Untethered)

Unlock Your iPhone:

You can use PwnageTool to back up your baseband while updating to a new firmware: PwnageTool for iOS 5.0.1
Unlock iPhone 4 with UltraSn0w 1.2.5: Tutorial
4.10.08 Baseband Unlock: Not Currently Available

What is Jailbreaking?

Jailbreaking is a process that allows iDevice (iPhone, iPod Touch, and iPad) users to gain root accesses to their device, taking down Apple’s harsh resections. Jailbreaking generally installs an app called Cydia that acts as a third party installer allowing users to customize their device with apps, tweeks, themes, and things not possible in the Apple App Store.

Apple Now Accepting Mac And iOS App Nominations For 2012 Design Awards


Apple Now Accepting Mac And iOS App Nominations For 2012 Design Awards

Apple Now Accepting Mac And iOS App Nominations For 2012 Design Awards
The most coveted app awards will be announced by Apple this summer at WWDC 2012.
Following the announcement of the already-sold-out WWDC 2012, Apple has officially begun accepting nominations for its 2012 Apple Design Awards. Mac and iOS apps can be nominated to win the most prestigious developer awards Apple gives each year, and past winners include apps like Infinity Blade and Things.
Registered iOS developers can nominate apps today and Apple will announce the winners at WWDC in June.
The criteria each app will be judged by:

Well-Designed

Apps that are inviting, engaging, easy to use, intuitive, and compelling.

State of the Art

Apps that take advantage of the latest hardware, OS releases, and technologies to offer rich functionality, high performance, and extensive system integration.

Innovative

Apps that are revolutionary, inspiring, and do things in new and creative ways.
Any app submitted by May 1st to the iOS or Mac App Store can be considered. Nominations don’t necessarily secure a win, as Apple usually gives out design awards on its own anyway. You can view last year’s winners to get a taste of the kind of excellence to expect from this year’s awards.
Who’s pumped for June 11th?