SHSH blobis a term for a small piece of data that is part ofApple'sdigital signatureprotocol foriOSrestores and updates, designed to control theiOS versionsthat users can install on their iOS devices (iPhones,iPads,iPod touches, andApple TVs), generally only allowing the newest iOS version to be installable. Developers interested iniOS jailbreakinghave made tools for working around this signature system in order to install jailbreakable older iOS versions that are no longer being signed by Apple.[1][2]
Contents
[hide]
1Technical details
2Exploits and countermeasures
3See also
4References
Technical details[edit]
"SHSHblobs" (also called "ECID SHSH"[3]) is an unofficial term referring to thedigital signaturesthat Apple generates and uses to personalize IPSW (iOS software) files for each device; they are part of Apple's protocol designed to ensure that trusted software is installed on the device.[4]Apple's public name for this process is System Software Personalization (System Software Authorization as of iOS 7+).[5]
SHSH blobs are created by ahashing formulathat has multiple keys, including the device type, the iOS version being signed, and the device's ECID (a unique identification number embedded in its hardware).[6]When Apple wishes to restrict users' ability to restore their devices to a particular iOS version, Apple can refuse to generate this hash during the restore attempt, and the restore will not be successful (or at least will require bypassing the intended function of the system).[7][8]
This protocol is part ofiPhone 3GSand later devices.[9]
Exploits and countermeasures[edit]
A major contributor to this article appears to have aclose connectionwith its subject.It may requirecleanupto comply with Wikipedia's content policies, particularlyneutral point of view. Please discuss further on thetalk page.(December 2012)(Learn how and when to remove this template message)
For iOS 3 and 4, SHSH blobs were made of static keys (such as the device type, iOS version, and ECID), which meant that the SHSH blobs for a specific iOS version and device would be the same upon every restore. To subvert that system using aman-in-the-middle attack, server requests the unique SHSH blobs from Apple for the jailbroken device and caches those SHSH blobs on servers, so that if a user changes thehosts fileon a computer to redirect the SHSH blobs check to cache instead of Apple's servers,iTuneswould be tricked into checking those cached SHSH blobs and allowing the device to be restored to that version.[9][10]
iOS 5 and later versions of iOS implement an addition to this system, a random number (acryptographic nonce) in the "APTicket",[11]making that simplereplay attackno longer effective.[12][13]Versions ofredsn0wafter 0.9.9b9 include a way to bypass the nonce requirement for iOS 5, allowing the SHSH blobs and APTicket to both be replayed by "stitching" them into custom firmware.[14]
First released in 2009 (as TinyTSS and Umbrella),[15][16][dubious–discuss]TinyUmbrella is a tool for finding out information about SHSH blobs saved on third party servers, saving SHSH blobs locally,[17]and running a local server to replay SHSH blobs to trick iTunes into restoring older devices to iOS 3 and 4.[18][19]In June 2011, iH8sn0w released iFaith, a tool that can grab partial SHSH blobs from a device for its currently-installed iOS version (limited to iPhone 4 and older devices).[20][21]In late 2011, the iPhone Dev Team added comprehensive SHSH blob management features toredsn0w, including the ability to save SHSH blobs with APTickets and stitch them into custom firmware in order to restore a device to iOS 5 or later.[22]
Replaying SHSH blobs for newer devices (iPad 2 and later) is not always possible, because there are noboot ROM(hardware level) exploits available for these devices. As of October 2012, redsn0w includes features for restoring newer devices between different versions of iOS 5,[23]but it cannot downgrade newer devices from iOS 6 to iOS 5.[24][25]
See also[edit]
Hardware restrictions
References[edit]
Jump up^Nat Futterman (May 25, 2010)."Jailbreaking the iPad: What You Need to Know".Geek Tech. PCWorld. RetrievedAugust 2,2011.
Jump up^Kumparak, Greg (June 27, 2011)."Apple Steps Up Their Game with iOS 5, Makes Jailbreaking More Difficult". TechCrunch. RetrievedDecember 30,2012.
Jump up^Stern, Zack (July 5, 2010)."How to jailbreak your iPad and start multitasking immediately". ITBusiness.ca. RetrievedDecember 30,2012.
Jump up^Asad, Taimur (April 30, 2010)."Save SHSH Blobs (ECID SHSH) of iPhone 3.1.3 and iPad 3.2". Redmond Pie. RetrievedDecember 30,2012.
Jump up^Apple Inc. (May 2012)."iOS Security"(PDF). Apple Inc. Retrieved3 December2012.
Jump up^Stefan Esser (March 2012)."iOS 5: An Exploitation Nightmare?"(PDF). CanSecWest Vancouver. Retrieved3 December2012.[non-primary source needed]
Jump up^Adam Dachis (April 25, 2011)."Save Your iDevice's SHSH to Avoid Losing the Ability to Jailbreak". Lifehacker. RetrievedAugust 2,2011.
Jump up^Smith, Gina (September 27, 2012)."Apple iOS 6 woes: Save the blobs if you need to downgrade".Apple in the Enterprise. TechRepublic. RetrievedDecember 30,2012.
^Jump up to:abJay Freeman (saurik) (September 2009)."Caching Apple's Signature Server". Saurik.com. RetrievedDecember 3,2012.
Jump up^Hoog, Andrew; Strzempka, Katie (2011).iPhone and iOS Forensics: Investigation, Analysis and Mobile Security for Apple iPhone, iPad and iOS Devices. Elsevier. pp. 47–50.ISBN9781597496599. RetrievedDecember 3,2012.
Jump up^Cheng, Jacqui (June 27, 2011)."iOS 5 beta hobbles OS downgrades, untethered jailbreaks".Infinite Loop. Ars Technica. RetrievedDecember 30,2012.
Jump up^Oliver Haslam (June 27, 2011)."iOS 5 Will Halt SHSH Firmware Downgrades On iPhone, iPad, iPod touch". Redmond Pie. RetrievedNovember 12,2011.
Jump up^Levin, Jonathan (2012).Mac OS X and iOS Internals: To the Apple's Core. John Wiley & Sons. p. 214.ISBN9781118222256. RetrievedDecember 29,2012.
Jump up^iPhone Dev Team (August 2011)."redsn0w iOS5beta". iPhone Dev Blog. RetrievedJanuary 4,2012.
Jump up^notcom (September 19, 2009)."TinyTSS -- All your iphone restores are belong to you". The Firmware Umbrella. Retrieved3 December2012.[self-published source?]
Jump up^notcom (May 20, 2010)."TinyUmbrella - Unified TinyTSS and The Firmware Umbrella in ONE!". The Firmware Umbrella. Retrieved1 January2013.
Jump up^Brownlee, John (November 15, 2011)."TinyUmbrella Updated To Support Backing Up iPhone 4S And iOS 5.0.1 SHSH Blobs". Cult of Mac. RetrievedDecember 30,2012.
Jump up^Sayam Aggarwal (July 26, 2010)."Before Jailbreaking, Extract Your iPhone's SHSH Blobs with Umbrella". Cult of Mac. Retrieved3 December2012.[unreliable source?]
Jump up^Landau, Ted (April 22, 2011)."TinyUmbrella and ITunes 1013 Error Strike Again".MacWorld. PCWorld. RetrievedDecember 30,2012.
Jump up^Goncalo Ribeiro (June 3, 2011)."How To Save SHSH Blobs Of Any Old Firmware Running On Your iPhone, iPad, iPod touch Using iFaith". Redmond Pie. Retrieved3 December2012.
Jump up^Morris, Paul (December 24, 2011)."Cydia Is Now Saving SHSH Blobs For iOS 5.0.1 Firmware". Redmond Pie. RetrievedDecember 30,2012.
Jump up^Jeff Benjamin (September 27, 2011)."How to Stitch Your SHSH Blobs Using RedSn0w to Create Firmware That Can Always Be Downgraded". iDownloadBlog. Retrieved3 December2012.
Jump up^iPhone Dev Team (October 2012)."Restoration reinvigoration". Dev Team Blog. Retrieved3 December2012.
Jump up^iPhone Dev Team (September 2012)."Blob-o-riffic". Dev Team Blog. Retrieved3 December2012.
Jump up^Morris, Paul (October 14, 2012)."How To Re-Restore iPhone 4S, iPad 3, iPad 2, iPod touch From iOS 5.x To iOS 5.x Using Redsn0w". Redmond Pie. RetrievedDecember 30,2012.