Friday, April 30, 2010

LimeRain

No comments:
We are not here to take any credit away from geohot, we are here to simply be the first and best tutorial for his up and
coming jailbreak for the iPhone, iPod touch,    and the iPad.

FAQ: The Firmware Umbrella

No comments:


I've seen so many questions, comments, misinformation about ECIDs, SHSHs, Apple's TSS Server, Saurik, etc. I've decided to give a quick overview of my app along with its role and how it works with Saurik's Cydia on filemechanism.

Q: What is Umbrella?
A: Umbrella is a small application that sends the same requests to Apple's TSS server (details aren't important) that iTunes sends to Apple's TSS server when iTunes is trying to verify your 3gs restore. When it receives the response from Apple's TSS server, it saves the response (if the response is positive) in a formatted file that can be used with TinyTSS.

Q: I'm not jailbroken. Do I need to be jailbroken to be able to get my SHSH hashes saved (either locally or on Cydia)?
 A: NO. Umbrella only uses your ECID (which you can obtain in a couple different ways without being jailbroken) to obtain your SHSH hashes. If you select the Saurik - Cydia option in the "SHSH Repository" combo box, Umbrella will request the SHSH files through Cydia. This will have Cydia send the request to Apple (thereby saving the results in Cydia's "on file" list) and return the results to you. This also allows you to request from Cydia older SHSH hashes for your ECID IF CYDIA ALREADY HAS THEM. I cannot emphasize that enough...

Q: If I have a new device or simply never decided to jailbreak until now, is there any possible way for me to get older SHSH hashes for my device?
A: Unfortunately NO. The way Apple's TSS server works is they effectively only sign SHSH hashes for a specific firmware version for a limited time. Once they stop signing a version (like 3.1.2) and start signing a new version (like 3.1.3) they _do_not_sign_ the older version again. It's very much like missing the last boat to old-version-local-restore-land. You just can't get it anymore.

Q: So there is no other way for me to obtain older SHSH hashes for my device if I waited too long or just by dumb luck bought my device too recently?
A: Yes and No. Yes Apple TSS server will NOT sign your simple ECID request from Umbrella. This is the default answer and for most folks, I'm sorry. If you are one of the very few individuals that happened to save your temporary files during a 3.0.1 or 3.0 or 3.1 or 3.1.2 restore ANDhappen to have all of the required temporary files, TinyTSS can reconstitute your temporary files into your SHSH hash for the version of temporary files that you have saved. Keep in mind, the files are deleted after the restore process so if you are reading this and thinking "WOW I WONDER IF THEY'RE STILL THERE FROM THE RESTORE I DID 45 mins AGO!?" I can answer the question for you - They aren't. You have to have saved the files DURING the restore process. Not before. Not after. You have a tiny window in which to save those files and very few people actually save them at the right time. BUT. If you are one of the insanely lucky individuals that saved the right temp folders at the right time during a restore of an older firmware version. You can use TinyTSS to create your SHSH hash file for that version.


Q: What do I need in order to run Umbrella?
A: It depends on your OS. If you're on a Mac java is typically installed on for you on Snow Leopard. If you run an older version of OSX, you'll have to open Terminal and run "java -version" and see if you get a 'version'. You need version 1.5+ to run Umbrella and TinyTSS. (JDK/JSDK/JRE all work fine so if you are just a user don't worry about installing the full JDK/JSDK the JRE will work fine for you). If you run Linux just "sudo apt-get install sun-java6-bin" if I remember correctly. If you run Windows, you'll need to check your java version by opening a command window and typing "java -version". If it comes back 1.5 or greater you can run the .exe files. Otherwise you'll have to upgrade your java runtime environment (JRE) via java.sun.com. Incidentally, you'll also need your ECID for Umbrella (there are countless tutorials on this) and you'll need a proper SHSH hash file for TinyTSS (or a folder/folders containing temp restore files for SHSH file reconstitution).

Q: How do I know if my SHSH file is valid?
A: If the file that gets saved is anywhere from 60-65k bytes then the file should be just fine.

Q: The file I got from Cydia does not match the file that Umbrella got from Apple should I be worried?
A: Absolutely not. The only difference between the files is whitespace and the XML headers. Neither make any difference at all to the TSS process. (Incidentally when TinyTSS responds to iTunes TSS requests in a real restore, iTunes is perfectly tricked by the reponses that TinyTSS generates).

Q: Should I be worried about iTunes updates?
A: VERY MUCH YES!!! iTunes updates can completely break the restore process. The whole reason TinyTSS works is because iTunes is faked into thinking it's talking to the REAL Apple TSS server. Future versions of iTunes can very easily stop this process. In fact, evidence is showing that future versions of iTunes WILL break local restores by Cydia and TinyTSS. Apple also seems to be planning to move this functionality into the bootrom of devices so that restores will be ONLY possible via a valid responds from Apple themselves.

Q: What iTunes version do you use?
A: I'm on 9.0.2 because Requiem works perfectly on it and local restores work perfectly as well.

Q: Why do I get error 16xx, 13xx etc when I try restoring using TinyTSS?
A: First, ensure that you have TinyTSS running. Then, make sure your hosts file has an entry matching (whitespaces and quotes ignored) "127.0.0.1 gs.apple.com". Then, make sure you are restoring to the exact version of OS that you have REAL SHSH hashes for. Changing the name of the file won't change the hashes. (Yes - some folks actually thought that would make a difference). If you have valid hashes for the version you wish to restore to check the version of iTunes you are running. I know for a fact that 9.0.2 works every time. I have heard that 9.0.3 works fine as well. Beyond that I'm unsure. If you're getting exceptions go ahead and write a comment and I'll take a look at it.

Q: Why did you do this in Java?
A: Because it was faster for me to get this out to everyone in Java (across multiple platforms, OSes, OS Versions) than it would have been in any other language.

Q: I cannot listen on port 80! I can't start up TinyTSS because it says the port is in use! HELP!
A: On this I cannot help you much. You're going to have to do some legwork to figure out your own machine. Google is your friend. Try googling " default services port 80" and see if you get any hints. TinyTSS MUST listen on port 80 AND the hosts entry must exist (127.0.0.1 gs.apple.com) in order to trick iTunes.

Q: Umbrella is just not working it's saying that it cannot even get my SHSH file for the current device version!
A: Did you remember to remove the hosts entry? If you have 127.0.0.1 gs.apple.com OR if you have an entry pointing gs.apple.com to any other site ie: cydia. You may have to comment it out using # and save it and then try Umbrella again. 

Q: Can I use my friend's hacked ipsw to downgrade my 3.1.3 device to 3.1.2?
A: No. You MUST have your ECID shsh hashes for the version you wish to restore to on a 3GS/ipod touch 3G device.


Those are the few questions I can think of off the top of my head. There are many more and I'll add to this list as I think of more questions. 



Umbrella & TinyTSS - iPad Support

No comments:


I've added iPad support to v222 of Umbrella and TinyTSS. As the device isn't out yet, I cannot be 100% certain it works perfectly. I'm confident it'll work just fine though. From what George Hotz posted on his blog, I have high hopes for a quick jailbreak for 3.2 (untethered). That jailbreak will make Umbrella and TinyTSS very important for early adopters of iPads with OS version 3.2.

Enjoy.

Edit: Ok guys, a couple notes. Yes your SHSH will be different each time you run it for 3.1.3. If you did a little bit of reading of my previous posts you would have noticed my mention of APTicket in the SHSHs for 3.1.3. This is a unique value for each SHSH request. So far iTunes doesn't use it yet (to my knowledge). This is why it is VITAL that you do NOT update iTunes past 9.1. (In my personal opinion I would have a version 9.0.2 lying around because that is what I use). 


Future versions of iTunes can use this value to further [in]validate your local restore. This will eventually require an iTunes patch to do local restores. And then, when the new bootrom comes along, they can move the [in]validation based on the APTicket to the device and then anyone with THAT new bootrom will be really screwed.


Edit: Please do not direct link the download. I want the download and the hashes to appear together. Thank you for your understanding.

fw-umbrella-semaphore-222.zip 


fw-umbrella-semaphore-222.zip md5: d17e449ba79c1c1caa4c0a6dd970eb0e
fw-umbrella-semaphore-222.zip sha1: 6c2229d615e40560f0d67fec5649192dd35f6461


umbrella.exe md5:  b667ec438182bc6771e420ddbc657002
umbrella.exe sha1:  2408764b7b2d8b7ea80f6bf23d9044658d5dabbd
tinytss.exe md5:  35d4e41775fe7741bc48da8dff374bd4
tinytss.exe sha1:  a383bb72f7cb6b5058a5c1b4568bbef672a533ae
umbrella64.exe md5: 31f0ce296d28a00b05b2fa82cde83a45
umbrella64.exe sha1: cf5dabd9e03c349158e220047b32b5fc07227d18
tinytss64.exe md5: aeeeae6bdd85343d8b4438f2d0edcc76
tinytss64.exe sha1: f5d9355a067a888fcffb76a5e5238848a40e9c57
Umbrella.dmg md5: 018b29a3662bc2c9b55ed93fe32d95a6
Umbrella.dmg sha1: a071492b0417ce2b2926b8df015f7f9c99412365

disclosure policy.

No comments:

This policy is valid from 30 April 2010

 This blog is a collaborative blog written by a group of individuals. For questions about this blog, please contact  reviewsonlimerain dot com at gmail dot com.

 This blog accepts forms of cash advertising, sponsorship, paid insertions or other forms of compensation. These Blog Posts will be identified as Sponsored.

 This blog abides by word of mouth marketing standards. We believe in honesty of relationship, opinion and identity. The compensation received may influence the advertising content, topics or posts made in this blog. That content, advertising space or post will be clearly identified as paid or sponsored content.

 The owner(s) of this blog is compensated to provide opinion on products, services, websites and various other topics. Even though the owner(s) of this blog receives compensation for our posts or advertisements, we always give our honest opinions, findings, beliefs, or experiences on those topics or products. The views and opinions expressed on this blog are purely the bloggers' own. Any product claim, statistic, quote or other representation about a product or service should be verified with the manufacturer, provider or party in question.

 This blog does contain content which might present a conflict of interest. This content will always be identified.

To get your own policy, go to http://www.disclosurepolicy.org


For the latest limera1n, rubyra1n, and all tech stories, follow us on Twitter at @iphonepixelpost or @limerain_com www.iPodSets.com - Posted using my iPhone 4