SSH 블롭

SHSH blob

SHSH blob(서명된 해시 및 바이너리 대형 객체의 줄임말, ECID SSH라고도 함)은 Apple이 생성하여 각[1] iOS 디바이스의 IPSW 펌웨어 파일을 개인화하기 위해 사용하는 디지털 서명을 가리키는 비공식 용어입니다.이러한 프로토콜은 신뢰할 수 있는 소프트웨어가 [2]장치에 설치되도록 설계된 Apple 프로토콜의 일부이며, 일반적으로 최신 iOS 버전만 설치할 수 있습니다.이 프로세스에 대한 Apple의 공식 이름은 시스템 소프트웨어 인증([3]iOS 7 이전에는 시스템 소프트웨어 개인화라고 불렸습니다)입니다.

이 프로세스는 TATSU("TSS") Signing Server(gs.apple.com)에 의해 제어되며, 업데이트 및 restore는 iOS 버전이 서명되어 있는 경우에만 iTunes에 의해 완료됩니다.iOS 탈옥에 관심이 있는 개발자들은 탈옥 가능한 구형 iOS 버전을 설치하기 위해 이 시그니처 시스템을 다루기 위한 도구를 만들었습니다.[4][5]

기술적 세부사항

SSH 블럽은 디바이스 유형, 서명되는 iOS 버전, 디바이스의 ECID [6][non-primary source needed]등 여러 키를 가진 해시식에 의해 생성됩니다.Apple이 사용자의 디바이스 복원 기능을 특정 iOS 버전으로 제한하려는 경우, Apple은 복원 시도 중에 이 해시 생성을 거부할 수 있으며, 복원은 성공하지 못할 것입니다(또는 적어도 시스템의 [7][8]의도된 기능을 우회해야 합니다).

이 프로토콜은 iPhone 3GS 이후의 [9]장치에 포함되어 있습니다.

TATSU 서명 서버

iTunes가 iOS 펌웨어를 복원하거나 업데이트할 때, Apple은 iOS 버전을 설치하고 장치 통합을 시작하기 전에 많은 체크포인트를 추가했습니다.첫 번째 "iPhone 소프트웨어 확인 중"에서 iTunes는 "gs.apple.com"과 통신하여 제공된 IPSW 파일이 여전히 서명 중인지 확인합니다.TATSU 서버는 서명된 버전의 목록을 반환합니다.버전이 서명되지 않은 경우 iBEC 및 iBoot은 이미지를 거부하고 "error 3194" 또는 "designed to authorized the image"라는 오류를 표시합니다.

iTunes는 펌웨어가 커스텀펌웨어('CFW')로 변경되지 않도록 업데이트 또는 restore 프로세스를 통해 iBoot와 통신합니다.iTunes는 파일이 변경되었다고 생각될 때 디바이스를 업데이트하거나 복원하지 않습니다.

이것은 체인 프로세스입니다.펌웨어를 인스톨 하기 전에, 인스톨이 끝난 iBoot등을 확인할 필요가 있습니다.서명되지 않은 iOS 버전은 1) SHSH2 Blob을 소유하고 있고 nonce(필요한 악용)를 설정하거나 2) 체인 프로세스를 이용하지 않는 한 설치할 수 없습니다.

이용 및 대책

서명되지 않은 iOS 버전에 설치하기 위한 SHSH Blobs의 요구사항은 iOS 펌웨어가 서명되어 있는 동안 Blobs를 저장하고 나중에 펌웨어를 설치할 때 Blobs를 사용함으로써 리플레이 공격을 통해 우회할 수 있습니다.새로운 iOS 버전에서는 SSH 블럽을 저장할 때 유효한 난스 등의 추가 요소가 필요합니다.A12 SoC 이후를 사용하는 디바이스의 Blob을 저장하려면 디바이스에서 제너레이터와 일치하는 난스를 가져와 나중에 복원 시 사용할 수 있는 유효한 Blob을 저장해야 합니다.SSH 블럽이 올바르게 저장되어 있어도 버전 간 SEP(Secure Enclave)가 호환되지 않아 특정 iOS 버전으로 이동할 수 없는 경우가 있습니다.

새로운 iOS 버전에서 SSH 블럽을 저장하는 도구에는 애플리케이션 블럽세이버와 명령줄 도구 tsschecker가 있습니다.

서명되지 않은 iOS 버전을 장치에 설치하기 위해 SHS BLOB를 사용하려면 future restore(idevice restore 기반) 또는 해당 GUI와 같은 도구를 사용하여 iOS 펌웨어 파일 및 SSH BLOB를 복원할 수 있습니다.

이전 바이패스 방식

iOS 3 및 4의 경우 SSH 블럽은 정적 키(디바이스 유형, iOS 버전, ECID 등)로 구성되었으며, 이는 특정 iOS 버전 및 디바이스에 대한 SSH 블럽이 복원될 때마다 동일함을 의미합니다.man-in-the-middle 공격을 사용하여 시스템을 전복시키기 위해 서버는 탈옥된 디바이스에 대해 애플에 고유한 SSH 블럽을 요구하고 이러한 SSH 블럽을 서버 상에 캐시합니다.따라서 사용자가 컴퓨터의 호스트 파일을 변경하여 SH 블럽을 리다이렉트하면 iTunes는 캐시된 체크에 속게 됩니다.HSH가 블로핑되어 디바이스를 해당 [9][10]버전으로 복원할 수 있습니다.

iOS 5 이후 버전의 iOS는 이 시스템에 난수(암호 난수)[11]를 추가해 APTicocket에 추가함으로써 단순한 리플레이 공격을 더 이상 사용할 [12][13]수 없게 됩니다.

2009년에 [14][self-published source?][15][dubious ]처음 출시된 TinyUmbrella는 서드파티 서버에 저장된 SSH 블롭에 대한 정보를 검색하고 로컬에서 [16]SSH 블롭을 저장하며 로컬 서버를 실행하여 SSH 블롭을 재생하여 iTunes가 오래된 디바이스를 iOS 3 및 [17][unreliable source?][18]4로 복원하도록 속이기 위한 도구입니다.2011년 6월 iH8sn0w는 현재 설치되어 있는 iOS 버전(iPhone 4 및 이전 기기에 [19][20]한함)에서 부분적인 SSH 블럽을 가져올 수 있는 도구인 iFaith를 출시했다.2011년 후반, iPhone Dev Team은 디바이스를 iOS 5 [21]이상으로 복원하기 위해 APTikets로 SSH 블럽을 저장하고 커스텀 펌웨어에 연결하는 기능을 포함하는 기능을 redsn0w에 추가했습니다.

새로운 디바이스(iPad 2 이후)의 SHSBLOB를 재생할 수 있는 것은 아닙니다.이러한 디바이스에서는, 부트 ROM(하드웨어 레벨)의 부정 이용을 이용할 수 없기 때문입니다.2012년 10월 현재 redsn0w에는 iOS [22]5의 다른 버전 간에 새로운 디바이스를 복원하는 기능이 포함되어 있지만 iOS 6에서 iOS [23][24]5로 새로운 디바이스를 다운그레이드 할 수 없습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Stern, Zack (July 5, 2010). "How to jailbreak your iPad and start multitasking immediately". ITBusiness.ca. Retrieved December 30, 2012.
  2. ^ Asad, Taimur (April 30, 2011). "Save SHSH Blobs (ECID SHSH) of iPhone 3.1.3 and iPad 3.2". Redmond Pie. Retrieved December 30, 2012.
  3. ^ Apple Inc. (May 2012). "iOS Security" (PDF). Apple Inc. Archived from the original (PDF) on 21 October 2012. Retrieved 3 December 2012.
  4. ^ Nat Futterman (May 25, 2010). "Jailbreaking the iPad: What You Need to Know". Geek Tech. PCWorld. Retrieved August 2, 2011.
  5. ^ Kumparak, Greg (June 27, 2011). "Apple Steps Up Their Game with iOS 5, Makes Jailbreaking More Difficult". TechCrunch. Retrieved December 30, 2012.
  6. ^ Stefan Esser (March 2012). "iOS 5: An Exploitation Nightmare?" (PDF). CanSecWest Vancouver. Retrieved 3 December 2012.
  7. ^ Adam Dachis (April 25, 2011). "Save Your iDevice's SHSH to Avoid Losing the Ability to Jailbreak". Lifehacker. Retrieved August 2, 2011.
  8. ^ Smith, Gina (September 27, 2012). "Apple iOS 6 woes: Save the blobs if you need to downgrade". Apple in the Enterprise. TechRepublic. Retrieved December 30, 2012.
  9. ^ a b Jay Freeman (saurik) (September 2009). "Caching Apple's Signature Server". Saurik.com. Retrieved December 3, 2012.
  10. ^ 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. ISBN 9781597496599. Retrieved December 3, 2012.
  11. ^ Cheng, Jacqui (June 27, 2011). "iOS 5 beta hobbles OS downgrades, untethered jailbreaks". Infinite Loop. Ars Technica. Retrieved December 30, 2012.
  12. ^ Oliver Haslam (June 27, 2011). "iOS 5 Will Halt SHSH Firmware Downgrades On iPhone, iPad, iPod touch". Redmond Pie. Retrieved November 12, 2011.
  13. ^ Levin, Jonathan (2012). Mac OS X and iOS Internals: To the Apple's Core. John Wiley & Sons. p. 214. ISBN 9781118222256. Retrieved December 29, 2012.
  14. ^ notcom (September 19, 2009). "TinyTSS -- All your iphone restores are belong to you". The Firmware Umbrella. Retrieved 3 December 2012.
  15. ^ notcom (May 20, 2010). "TinyUmbrella - Unified TinyTSS and The Firmware Umbrella in ONE!". The Firmware Umbrella. Retrieved 1 January 2013.
  16. ^ Brownlee, John (November 15, 2011). "TinyUmbrella Updated To Support Backing Up iPhone 4S And iOS 5.0.1 SHSH Blobs". Cult of Mac. Retrieved December 30, 2012.
  17. ^ Sayam Aggarwal (July 26, 2010). "Before Jailbreaking, Extract Your iPhone's SHSH Blobs with Umbrella". Cult of Mac. Retrieved 3 December 2012.
  18. ^ Landau, Ted (April 22, 2011). "TinyUmbrella and ITunes 1013 Error Strike Again". MacWorld. PCWorld. Retrieved December 30, 2012.
  19. ^ 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. Retrieved 3 December 2012.
  20. ^ Morris, Paul (December 24, 2011). "Cydia Is Now Saving SHSH Blobs For iOS 5.0.1 Firmware". Redmond Pie. Retrieved December 30, 2012.
  21. ^ Jeff Benjamin (September 27, 2011). "How to Stitch Your SHSH Blobs Using RedSn0w to Create Firmware That Can Always Be Downgraded". iDownloadBlog. Retrieved 3 December 2012.
  22. ^ iPhone Dev Team (October 2012). "Restoration reinvigoration". Dev Team Blog. Retrieved 3 December 2012.
  23. ^ iPhone Dev Team (September 2012). "Blob-o-riffic". Dev Team Blog. Retrieved 3 December 2012.
  24. ^ 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. Retrieved December 30, 2012.