切换屏幕
9526阅读 | 50回复

[教程] [教程]如何不越狱"固定"随机值

  [复制链接]
94主题6146帖子3708人气

级别: 实习版主

经验   -22091

帖子
6146
经验
9707
精华
3
人气
3708
发表于 2018-9-23 12:19:27 |浏览量 | 显示全部楼层 |阅读模式
本帖最后由 xapenny 于 2018-9-23 12:22 编辑

注:原文发表在Reddit论坛Jailbreak分区,原作者 u/wb0815 ,由威锋网xapenny转载并翻译及少修改,本次搬运得到了作者的授权。转载请注明出处。

希望这个教程能帮到那些渴望越狱又舍不得新系统的人们!


11.4.1验证即将关闭,尽快!

    "apnonce bug"从iOS10开始就有了,在iOS11.4.1中这个bug依然存在。甚至在12.0测试版中也存在!不过在测试中发现iOS9及更老的系统中没有。

    我仅在iPhone5s iOS11.2.5、Linux16.x和macOS Sierra平台上测试通过,[注:译者在iPhone SE iOS12.0、macOS Sierra上测试通过]理论上他可以支持所有64位设备。[注:开始前请一定一定确认好最新版iOS的SEP是否兼容自己的设备,你可以在iOS预发行版公布时了解此消息。不兼容的SEP是无法通过刷机的!]
译者注:那么这个bug到底是什么意思呢?简单来说就是随机值不再随机改变,每次进入恢复模式都会校验同一个apnonce。然而即使这个随机值不变了,他还是一个随机数。如果我们备份的shsh和它不匹配那么还是不能通过刷机验证。这也是我在标题中“固定”一词打上引号的原因。从结果来看,我们的确把它固定了。但也仅限于让它的值不再随着重启改变了。所以对于这个值到底取什么,我们不越狱还是决定不了。因为他本身还是一段随机数。
看到这里的朋友先别着急骂我哈,我并没有耍大家玩。我们不如回到起点,一起回想一下我们究竟为什么要去固定随机值?没错,为了恢复指定固件。但由于苹果的随机值签名机制(具体可以去Tihmstar博客看看,有相关文章对此有详细的分析),我们备份的shsh只有当设备generate的值等于shsh中的generator时才会进行接下来的恢复,否则拒绝恢复。好了,抓重点。我们的目的其实是让设备generate的值等于shsh中的generator,让两者相等从而进行下一步操作。通常我们采取的方法都是在设备的nvram缓存里定义这个generator,也就是随机值。然而想访问nvram,不越狱是不可能的。对于我这样几乎每次都完美错过越狱的人来说简直是绝望。但我不愿意放弃。
       正着推不过去我们就反过来推。既然我们没有办法固定设备的随机值,那么固定shsh里的随机值也可以达到目的啊。事实证明,确实可以,就利用前文提到的apnonce bug。然而前提是该版本验证还开放的时候你就提前存了shsh并在某个版本用bug固定了随机值,还有最新版SEP要兼容你要刷的版本(这个由于技术困难暂时没有人能破解SEP),二者缺一不可。

     举个例子,我现在升级了iOS12,感觉非常流畅。但是lan beer过两天要放11.4.1的漏洞了。我舍不得iOS12的流畅,但11.4.1验证马上就要关了。那我就可以用bug先固定我的随机值,然后用这个随机值去备份11.4.1的shsh!这样以后就算11.4.1验证关闭,我还是可以直接用futurerestore刷11.4.1。(前提:未来版本的SEP兼容11.4.1.目前12正式版的SEP仍然兼容11.4.1.)


下面说方法(Mac/Linux)[Found By:u/wb0815][Tested oniPhone 5s<u/wb0815> &iPhone SE<u/xapenny>
It’sreally-really simple

以Mac为例
  • 下载最新的 igetnonce here.
  • 下载最新的 noncestatistics here.
  • 将 igetnonce-latest.zip 和noncestatistics-latest.zip复制到桌面
  • 双击解压getnonce-latest.zip, 将文件夹重命名为"igetnonce"
  • 双击解压noncestatistics-latest.zip, 将文件夹重命名为"noncestatistics"
  • 将设备插入计算机
  • 打开终端
  • 输入: killall iTunesHelper并回车
  • 输入: cd ~/Desktop/igetnonce 并回车
  • 输入: chmod +x igetnonce_macos 并回车
  • 输入: ./igetnonce_macos 并回车


此时你会得到三行数值。他们看起来像这样:
Identified device as n53ap, iPhone6,2 innormal mode...
ecid=This is my 5s apnonce and sepnoncerequested in normal mode using igetnonce:

Identified device as n53ap, iPhone6,2 innormal mode...
ecid=xxx
ApNonce=9c9ab593a6f55ff83f113eab57f7e96e9b9beff5
SEPNonce=93fc535dd8e780341908f321a15dbe5b66b32cd8xxx

第一行ecid就是你设备的ecid。第二行就是你固定好的apnonce,一会要用这个值来备份shsh,要把这个值复制到别处记下
然后我们一起来验证一下

  • 输入: cd ~/Desktop/noncestatistics
  • 输入: chmod +x noncestatistics_macos 并回车
  • 输入: ./noncestatistics_macos -t 10 test.txt 并回车


此时你的设备应该立即黑屏,然后无限循环恢复模式。屏幕上会显示获取的随机值。他们看起来像下面这样:

Getting noncestatistics for device with ECID: xxx
000001ApNonce=9c9ab593a6f55ff83f113eab57f7e96e9b9beff5
000002ApNonce=9c9ab593a6f55ff83f113eab57f7e96e9b9beff5
000003ApNonce=9c9ab593a6f55ff83f113eab57f7e96e9b9beff5
000004ApNonce=9c9ab593a6f55ff83f113eab57f7e96e9b9beff5
000005ApNonce=9c9ab593a6f55ff83f113eab57f7e96e9b9beff5
000006 ApNonce=9c9ab593a6f55ff83f113eab57f7e96e9b9beff5
000007ApNonce=9c9ab593a6f55ff83f113eab57f7e96e9b9beff5
000008ApNonce=9c9ab593a6f55ff83f113eab57f7e96e9b9beff5
000009ApNonce=9c9ab593a6f55ff83f113eab57f7e96e9b9beff5
000010ApNonce=9c9ab593a6f55ff83f113eab57f7e96e9b9beff5
Waiting for deviceto reboot...
Resettingautoboot...
Done

不难看出,10次获取的apnonce完全一样,现在它不会随机改变了。如果你和我一样也成功了,那么恭喜你。

请注意:不要在开机状态做请求随机值的操作!(包括但不限于连接iTunes和OTA更新)。建议关闭iTunes自动同步,并屏蔽设备自动更新(点此)

固定随机值的操作就到这里了,下面我们讲讲怎么用这个apnonce备份shsh(以Windows10为例)。




    • 下载附件中的tsschecker_windows
    • 解压,在相同目录的空白处按住Shift单击右键—在此处打开Powershell窗口
    • 输入cmd 并回车
    • 输入下面的指令并回车,不包含括号


  1. tsschecker_windows.exe -d <模型号> -i <iOS版本(数字)> --buildid <iOS版本(内部版本号)> -B <主板型号(A9及以上处理器需要制定此值,A8及以下不需要)> -e <你的ECID> --apnonce <刚才记下的apnonce>
复制代码
  • 以ECID为12345678的iPhoneSE,台积电版本,备份iOS11.4.1正式版shsh为例,apnonce为刚才的9c9ab593a6f55ff83f113eab57f7e96e9b9beff5,那么命令应该是

  1. tsschecker_windows.exe -d iPhone8,4-i 11.4.1 --buildid 15G77 -B n69ap -s -e 12345678 --apnonce 9c9ab593a6f55ff83f113eab57f7e96e9b9beff5
复制代码
耐心等待,直到出现iOS 11.4.1 is being signed!表是成功,在tsschecker目录下可以看到shsh文件。没出现或者出现其他的表示没成功,重试。

igetnonce-latest.zip

1.21 MB , 下载次数: 61

noncestatistics-latest.zip

3.69 MB , 下载次数: 55

tsschecker_windows.zip

670.14 KB , 下载次数: 86

评分6

评分次数6

we券+50 经验+50 人气+67

收起
EricZhan + 20 + 20 + 20 2018-10-22 09:14威锋有你更精彩:)
candyl6 + 7 2018-9-28 13:05那请问是在关机模式下操作还是DFU模式下操作?
手机锋友whg6ymz + 5 2018-9-27 12:43威锋有你更精彩:)
flyao + 10 + 10 + 10 2018-9-24 07:27威锋有你更精彩:)
小宋99 + 5 2018-9-23 16:01威锋有你更精彩
糖醋丶炒排骨 + 20 + 20 + 20 2018-9-23 14:15威锋有你更精彩
3主题24帖子5人气

级别: 小苹果

帖子
24
经验
37
精华
人气
5
发表于 2018-9-23 13:49:05 |威锋客户端 | 显示全部楼层
这个教程能不能固定11.3或者11.4的shsh2值
17主题2707帖子71人气

级别: 金苹果

帖子
2707
经验
2686
精华
人气
71
发表于 2018-9-23 14:11:22 |威锋客户端 | 显示全部楼层
点赞????
145主题4111帖子9211人气

级别: 实习版主

声望   -23333

帖子
4111
经验
8944
精华
4
人气
9211
发表于 2018-9-23 14:20:32 | 显示全部楼层
根据reddit上网友的测试,A9及以上设备iOS 12的sep不兼容iOS 11.3.X

Signature

17主题2707帖子71人气

级别: 金苹果

帖子
2707
经验
2686
精华
人气
71
发表于 2018-9-23 14:23:53 | 显示全部楼层
楼主 已经备份了的12 SHSH2里的G值拿来固定11.4.1的可以吗  还是说一定要先刷了12系统再操作?

Signature

153主题726帖子318人气

级别: 白苹果

帖子
726
经验
858
精华
人气
318
发表于 2018-9-23 15:28:21 |威锋客户端 | 显示全部楼层
那么6s及以上的备份就等于然并卵?
回4楼糖醋丶炒排骨于1 小时前发表的: 根据reddit上网友的测试,A9及以上设备iOS 12的sep不兼容iOS 11.3.X......
145主题4111帖子9211人气

级别: 实习版主

声望   -23333

帖子
4111
经验
8944
精华
4
人气
9211
发表于 2018-9-23 15:30:29 |威锋客户端 | 显示全部楼层
当然不是,可以用来刷11.4.1,但降级11.3.1应该是不行了
回6楼吳彥祖于1 分钟前发表的: 那么6s及以上的备份就等于然并卵?......
153主题726帖子318人气

级别: 白苹果

帖子
726
经验
858
精华
人气
318
发表于 2018-9-23 15:33:16 |威锋客户端 | 显示全部楼层
刚才看错了以为11.4.1不兼容12。
10主题558帖子73人气

级别: 白苹果

帖子
558
经验
627
精华
人气
73
发表于 2018-9-23 16:02:35 |威锋客户端 | 显示全部楼层
不需要刷上去,只要当前验证开着你就可以备份
回5楼╭季小新灬乄于1 小时前发表的: 楼主 已经备份了的12 SHSH2里的G值拿来固定11.4.1的可以吗&nbsp;&nbsp;还是说一定要先刷了12系统再操作?......
9主题356帖子27人气

级别: 红苹果

帖子
356
经验
353
精华
人气
27
发表于 2018-9-23 16:17:11 | 显示全部楼层
请问win电脑可以吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则