iOS 10.1.1 JB現況&SHSH2備份 - iOS

Table of Contents

好久沒有降級這件事情了XD


在古老時代,Apple會把裝置晶片碼(ECID)以及你想要刷的iOS版本拿去簽名,生成所謂

的SHSH,有了這個iTunes才會願意幫你刷iOS。簽名是一種單向函數,只要給一樣的input

就會生成同樣的output,故有人存下SHSH等到Apple不簽了把該SHSH餵給iTunes欺騙它是

Apple簽的,達到刷非最新版本的目的。


後來Apple學聰明了,在input那邊加了個隨機產生的資料,也就是nonce。這樣一來備份

下來的SHSH就不能用了,因為你每次產生的nonce不同,生成的SHSH也會不同。你如果

要使用備份好的SHSH,那必須要你的裝置隨機產生的nonce跟你當初備份時的一樣才行。


理論上這樣應該是完全不用想要降級了,那最近是在說什麼呢?

稍微看了一下tihmstar的blog:https://tihmstar.blogspot.de/

狀況應該是這樣:

1. 如果有JB,tihmstar有辦法讓你的裝置產生特定的nonce。這就是為什麼備份SHSH2的

板友們可能會看到六個資料夾,其中五個有一串像亂碼的東西。那串亂碼就是nonce,

那個資料夾裡的SHSH就是針對該nonce去簽名出來的。至於為什麼需要備份這五個特定

的nonce呢?作者本來說要等Prometheus釋出再說明,但是從他的其他回答可以猜測

他是要去改亂數產生器(所以需要已經JB的裝置),那估計他修改完產生的nonce應該是

只有 或 很可能是 這五個。

2. 如果沒有JB,tihmstar之前有在研究nonce collision,也就是不斷重開機,裝置有

機會產生一樣的nonce。他甚至寫了以下的tool讓使用者統計自己的裝置在不斷重新開機

的狀況下有多少機率會產生一樣的nonce,最常產生的nonce又是哪幾個:

https://github.com/tihmstar/noncestatistics

假設裝置有不是太低的機率產生出一樣的某個nonce,那就可以針對該nonce備份SHSH2,

然後想要刷機時就不斷重開機直到隨機產生的nonce又出現一樣的,就可以刷了(倒)

不過從他的統計:https://ghostbin.com/paste/6k62b

有些裝置怎麼樣就是不會collide啊....


如果以上兩點猜測沒錯的話,其實Prometheus的限制相當大,因為你的裝置需要是下列

兩者之一:

1. 已經JB,且該JB有enable tfp0或類似東西,才可以修改亂數產生器。以iOS9來說,

9.1那個有,9.3用Luca那個JailbreakMe的有,9.0的盤古沒有,而且根據i0n1c:

https://twitter.com/i0n1c/status/810780811800801280 (tihmstar有retweet)

9.0盤古的看來要加上tfp0也很難...

2. 你的裝置每次重開機產生的隨機nonce要有重複性,而且你有備份到該nonce相關的

SHSH2。重複的原因目前不明,只是看起來越新的裝置越不容易重複(6S根本不會啊...)

估計是舊裝置的亂數產生器用的seed比較差所以不夠"亂"吧...


那如果到目前為止都沒有錯,那可以進一步得到以下結論:

1. 在iOS 9.1那版盤古JB且有照板上方法備份SHSH2,應該未來可以用Prometheus

2. 在iOS 9.3那版Luca JailbreakMe JB,且有照版上方法備份SHSH2,同上

3. 在iOS 9.3那版但是用的是盤古JB,好像可以重開機回到未JB直接服用Luca JB,

然後同2

4. 在iOS 9.0那版盤古JB,或者其他任意iOS然後根本沒有JB,基本上可以去跑跑

noncestatistics 看看你的裝置會不會產生重複nonce,然後針對該nonce備份SHSH2,

如果幾乎不重複那就只能看別人玩Prometheus了...

5. 承上,有鑑於第四點的裝置無法在Apple關掉10.1.1簽名的時候用Prometheus刷10.1.1

然後又已知之後Luca的JB只能用在10.1.1 (10.2已經patch掉該漏洞了),那想要嘗試

10.1.1 JB勢必要趁Apple來在簽時刷上10.1.1,只是這樣就要入獄等Luca了...

對沒有JB的人來說還好,對9.0 JB的人要考慮清楚XD


以上是個人心得,有錯還請指正。

--
◢███
◤ ◢◤
◢███ ◢██ ◢███
◢◤ ◢◤
◢███ ◢█ ◢███


--

All Comments

Heather avatarHeather2016-12-24
9.0 + 6s+ QQ 不過也只有需要 ios10 的whoscall功能而已
Skylar Davis avatarSkylar Davis2016-12-25
Ida avatarIda2016-12-29
對到重複的nonce也太難
Thomas avatarThomas2017-01-02
感謝用心的心得分享
Skylar DavisLinda avatarSkylar DavisLinda2017-01-06
簡單說,不管怎樣,先備份 SHSH2, 對吧?
Rae avatarRae2017-01-11
看來要先升到10.1.1比較安全 不然關掉後不一定可刷10.1.1
Doris avatarDoris2017-01-11
備份是沒有什麼缺點,最多就是備份的東西不能用而已
Ursula avatarUrsula2017-01-13
先升級到10.1.1應該比較穩 對吧?到時候10.1.1越獄後就隨意升降
Agatha avatarAgatha2017-01-16
理論上,可是越獄還沒出降級tool還沒出誰知道呢...
Olga avatarOlga2017-01-21
好猶豫
Kama avatarKama2017-01-22
不太懂 意思是6s 9.0.2可能是備份心酸的嗎QQ
Puput avatarPuput2017-01-24
感謝分享,剛剛看完就立馬把6s升級到10.1.1了
Leila avatarLeila2017-01-25
9.0.2 6S的確可能是備身體健康的...
Bethany avatarBethany2017-01-30
7先降回10.1.1好了
Connor avatarConnor2017-01-30
阿鬼你還是說中文吧
Ophelia avatarOphelia2017-02-01
看起來我的SE 9.3.4也要先升上10.1.1了齁
Ingrid avatarIngrid2017-02-01
所以6s 9.0.2要升級賭一波的意思嗎QQ
Liam avatarLiam2017-02-06
明白了,感謝分享~~
Steve avatarSteve2017-02-09
也可以龜在9.0....反正也沒什麼不好(自我安慰)
或者期待有人搞出讓9.0可以用tool的方法...
Sierra Rose avatarSierra Rose2017-02-10
昨天備份好140B150的SHSH2了 啊之後要怎麽使用啊?
Jack avatarJack2017-02-14
等12/31 tool釋出應該會有說明
David avatarDavid2017-02-16
推詳細講解~
Vanessa avatarVanessa2017-02-21
推好文!另外想問ios8也可以嗎QQ
Regina avatarRegina2017-02-25
Ios 10.1 for device iPhone7,2 being signed 這個
訊息 請問我是備份到10.1嗎?
Dorothy avatarDorothy2017-02-27
樓上是的
Eden avatarEden2017-03-02
6s9.02 路過
Barb Cronin avatarBarb Cronin2017-03-07
昨天試著用6S跑了2000個nonce都不會collide...
Linda avatarLinda2017-03-10
請問noncestatistics 怎麼使用阿~?