Modchip 板


LINE

Part 1: https://www.youtube.com/watch?v=HEFMAP0mTvY
◆引言 426无断转载生儿子没屁眼! Wii 已经上市三年,期间总共有九次韧体更新。总销售数量有七千三百万台, 总共有三千万台的开机程式(bootloader)有漏洞。使用HBC 玩家的数量大概有 一百万人。 老任的软体非常脆弱,就算不破解,也有可能一不小心就当机或是变砖。这也 是Wii 这麽快就被破解的原因之一。老任在这段期间尝试防堵破解,但都徒劳 无功。 426无断转载生儿子没屁眼! XBOX360 从发售到今天只有两次让玩家有执行自制程式的机会,一次是《金刚 》游戏的漏洞,另一次是除错埠(JTAG)的破解。 PS3 因为厚机一开始支援安装 Linux,因此$QNY跟破解阵营有了一段关系不错 的蜜月期。但不能执行3D加速的限制最後还是让双方撕破脸,2007年底被发现 OtherOS 的RSX 漏洞,$QNY选择直接阉掉OtherOS 後双方正式宣战。$QNY声称 薄机不再支援Linux 是为了降低主机的成本,但时至今日我们知道$QNY根本就 在放狗屁,因为 Linux明明就可以在薄机上面正常执行。 我们可以证明$QNY的措施是没有意义的,他们根本不能阻止大家在主机上面执 行Linux 。 (秀投影片展示各个主机的破解难易度,颜色越深越难破解,破解的下场全都 是:盗版, PS3被破解後会不会落如同样的下场呢?) ◆PS3 主机架构。 $QNY看上IBM 的Cell处理器後决定采用作为 PS3的主机 CPU,实际上就是一颗 64位元的PowerPC 处理器而已。$QNY跟 IBM设计了一个孤立的 SPU架构,绝大 部分对於 CPU资源的存取都必须透过 SPU,使用者能够直接存取的部分非常有 限。由此可见$QNY在我们看不见的部分藏了不少东西。 主机的架构有三层: 426无断转载生儿子没屁眼! Lv1/HyperVisor ←→ SPU Lv2/Game OS ←→ SPU Problem State/Games 只有第一层跟第二层有办法直接和 SPU沟通。 (PS3开机程序) ◆各家主机的安全架构 1.都有一次写入的BootROM 2.Wii 跟 360使用了一次写入的记忆体储存金钥 3.都使用公私钥加密签证机制 4.除了 Wii以外都用了连锁认证机制,Wii 只在安装韧体时使用,所以很容易 破解 426无断转载生儿子没屁眼! 5.除了XBOX以外,其他主机都每台都有独特的金钥 6.除了Wii 以外,其他主机都有执行档签证机制 7.Wii 跟 PS3有独立的安全辅助晶片 8.只有 Wii使用了储存媒介签证加密,游戏光碟是加密的 9.Wii 跟 PS3有将主机内记忆体利用主机独特金钥加密 10.Wii 还有自身签证的安全架构 Part 2: https://www.youtube.com/watch?v=qFuTCEtK6l8
11. 360使用了主机记忆体加密的机制 12. 360跟 PS3都有Lv1 的防护机制HyperVisor 13. PS3有使者、核心模式,算是一种砂盒防护机制,Wii 跟 360都是在核心模 式执行程式 14.只有 360有防止降级的电子保险丝机制(eFUSE ),保险丝的状态是加密、 解密的资讯之一,因此就算用晶片烧录器强行写入低版本的韧体也无法正常 解密执行。保险丝的位置在 CPU里面,理论上无法还原。 但很显然的, PS3的主机内记忆体加密机制已经可以绕过了,所以暂时不会对 破解造成太大的妨碍。同时由於硬碟的内容都是用同一把金钥加密,而使用者 可以上传一些测试文件到硬碟,然後将硬碟拆出,分析变动的地方,以此资讯 作为样本进行暴力破解。 426无断转载生儿子没屁眼! ◆OtherOS (演讲者很靠北地送了个奖盃给$QNY:拔掉OtherOS 就可以引起大家的注意) 我们知道薄机拿掉OtherOS 绝对不是因为$QNY技术有问题,也可以排除行销方 面的问题,因为不会有人因为主机可以执行 Linux而拒绝购买。拿掉这个功能 只会激怒大家,让大家群起而攻之。结果George Hotz (Geohot)开了第一枪, 把错误的记忆限制资讯写入记忆体,然後骗过主机取得更大的记忆体权限。 ◆Geohot漏洞 426无断转载生儿子没屁眼! Lv1/HyperVisor也是存在主机记忆体中,因此执行OtherOS 时, Linux跟HV其 实都是使用同一块主记忆体,只是HV有分配权限,当Linux 核心需要更多记忆 体时,会向HV要求,然後HV给出,并在HTAB上纪录,让Linux 可以存取; Li- nux要释放记忆体时,也是跟HV通知要释放,然後HV清除在HTAB上的纪录。一 切都如此美好~。 426无断转载生儿子没屁眼! 但Geohot耍了一些小手段,利用外部讯号欺骗HV刚刚宣告的记忆体又释出了, 但实际上核心还是有存取权限。然後Geohot继续用这种方式欺骗HV,尽量将主 机的记忆体占满,运气好的话刚好某些记忆体的分页表就会跑进刚刚欺骗的范 围内,结果Linux 核心就可以读到原本不该读的资料,甚至也可以把HV整个读 进来。 426无断转载生儿子没屁眼! 有HV的资料就可以侵入HV模式。 ($QNY得到第二座的奖盃:你们家的HyperVisor摊在阳光下了!) 虽然听起来很厉害,理论上可以这样搞,但没有人知道把HV读出来以後要做什 麽。结果这一枪反而激怒$QNY,发火把所有厚机的OtherOS 功能拔掉了,最後 也衍生出违反《欧盟消费者保护法》的争议。 麻烦的是通常只有骇客们会使用OtherOS 功能,一般只玩游戏的玩家根本不会 理会那个功能的有无,於是$QNY这一搞惹毛了所有乖乖使用OtherOS 的骇客, 他们决定要把$QNY从他们身上平白夺走的功能抢回来。 ($QNY得到第三座奖盃:你惹到不该惹的人了!) $QNY显然太过大意,之後从内部流出了PSJB,一下子也让大家复制出来。PSJB 如大家所知,是一个让人在Lv2/GameOS里面执行没签证程式的手段。 ◆PSJB漏洞 426无断转载生儿子没屁眼! $QNY韧体系统在辨识 USB装置时的程式有漏洞。所有的 USB装置都有一个描述 子(discriptor),里面存有一个字串,描述这个装置的名称,例如随身碟的描 述子是磁碟标签这样。主机读取描述子时,首先会读取一开始的 8个byte,接 着读取描述子的长度。 利用模拟方式,一口气在 USB插槽上连接六个装置,主机读到第四个装置的描 述子时,第四个装置回答主机说描述子长度为 0,於是主机就没有宣告任何记 忆体空间来储存描述子字串。主机程式没考虑到这种状况,於是乎主机会尝试 去处理不存在的字串,结果不小心就处理到读第二个装置描述子时存下来的东 西,而这个字串恰巧能够骗过主机,於是主机能够成功将记忆体初始化。 读第二个装置存下的字串结尾是04 21 B4 2F ,结果让主机误认说这个装置的 描述子长度有0x2FB4,一读暂存器自然就爆掉了。主机继续读取第三个装置的 组态描述子(configuration discriptor),结果让第三个装置的资讯盖掉程式 的指标,指向第一个装置储存酬载的地方,於是主机就执行到我们要让他执行 的程式了。 426无断转载生儿子没屁眼! ($QNY得到第四座奖盃:得到在Lv2 里面执行程式的权限了!) 进一步分析之後我们发现HV根本不知道PSJB到底搞了什麽鬼,HV也不会去阻止 使用者利用PSJB执行未签证的程式。所以这个HV到底在干麽?走到这里,我们 并没有去破解Lv1/HV,也没去破解SPE ,所以得出的结论就是……。 ($QNY得到第五座奖盃:盗版参上!!) 天底下哪有这种只攻破Lv2 就可以执行盗版的好康事?有的原因就是因为$QNY 的防御机制根本起不了作用。所以我们可以将游戏备份到硬碟里面,然後将光 碟机的位址换成硬碟的位址,因为Lv1 不会去检查游戏的完整性。SPE 也不理 。所以你要把游戏备份到哪里都无所谓。 到此,已经可以绕过HV了。 426无断转载生儿子没屁眼! $QNY发觉事情大条之後,开始尝试阻止,於是发布新版韧体3.42、3.50,好吧 !山不转路转,就降级。 ◆降级 进入主机的方式其实不难,因为只是个简单的对称性加密HMAC而已,拿到金钥 後就不是问题了。进入F/S Mode之後可以执行存在USB 随身碟上而且签证过的 程式,偏偏$QNY内控有问题,於是又流出能够略过版本查验的韧体更新程式。 所以说……。 426无断转载生儿子没屁眼! (第六座奖盃:越来越多的盗版) ◆AsbestOS 由於GameOS跟OtherOS 其实差异不大,只差在硬体存取权限而已。AsbestOS把 GameOS赶出了记忆体,换成自己,於是我们就能在薄机上执行Linux 的原因就 来这里。我们可以将 Linux设成远端模式,然後透过电脑下指令来执行程式。 我们并未满足现状,要用 USB破解工具才能执行自制程式很不方便,我们希望 找出一个一劳永逸的方法,让主机一开机就进入 Linux。为此我们就需要分析 执行档的结构。 ◆执行档SELF 有蛮复杂的加密方式,因此不是那麽容易就能破解的。 https://www.youtube.com/watch?v=84WI-jSgNMQ
Part 3: ◆预言 $QNY的算盘是:没人看得到我们的程式码 ……除非能攻破PPE 能在GameOS里面把程式解密!?这样就不用破解安全辅助处理器了。 那加密金钥咧? 426无断转载生儿子没屁眼! 於是我们可以让主机自动帮我们把程式解码,而完全不用管到底是怎麽办到的 。所以…… (第七座奖盃:障眼法骗不了人的!) 因此 PS3的安全辅助处理器没用了 426无断转载生儿子没屁眼! ◆连锁认证 这个东西是个两面刃,如果不被攻破,那就牢不可破,但万一被攻破,就以透 过相互的认证机制全部拿下。只更新一部分程式是没用的,因为还是可以透过 认证换回旧版的,所以要防就要整个砍掉重练。 ◆破解开机程式 426无断转载生儿子没屁眼! 我们能够存取的范围不多,但反正要执行程式,系统都会先把程式复制到执行 程式的区域,所以还是利用缓冲区溢位的老招,写入大量的资料,把程式一口 气盖进去lv2ldr的位置。运起好的话就能把整个开机程式连根拔起。於是…… (第八座奖盃:得到AES 金钥啦!) 简单说,$QNY的机制是「一步错,满盘输」,只要有一小个在孤立载入器的漏 洞被发现,整个连锁认证的机制就毁了,而且这个漏洞会波及所有已经贩售的 主机。我们可以藉此拦截开机程序,换成执行我们的程式,这样开机时就可以 直接进入 Linux了。 426无断转载生儿子没屁眼! (第九座奖盃:连锁认证机制破灭) 虽然说是「破灭」,但并非「神话」…… ◆执行档 签证的问题怎麽办? 要描述椭圆曲线有五个参数 p a b G N Q = 公钥 e = 资料的杂凑值 426无断转载生儿子没屁眼! R,S = 签证指纹 当然最直接的就是直接找出用来加密的私钥,但理论上是有困难的。这牵涉到 椭圆曲线的加密方式,相当复杂,而且牢不可破。第一个方程式没人解得出来 ,第二条比较简单,但是有个乱数 m在里面,也是有点麻烦。 R = (mG)_x ... (1) S = (e + kR)/m ... (2) 426无断转载生儿子没屁眼! 照理来说, m应该是个乱数,就像我们丢骰子一样。但是,我也不知道为什麽 $QNY的骰子每次都会丢出相同的点数。因此当某两个签证指纹的 m相同时,就 代表 R也相同,於是可以透过简单的加减乘除推出 m,然後是 k。 R = (mG)_x R = (mG)_x S1 = (e1 + kR)/m S2 = (e2 + kR)/m 所以把S1减去S2,可以得到 426无断转载生儿子没屁眼! S1 - S2 = (e1 - e2)/m → m = (e1 - e2)/(S1 - S2) k = (mS1 - e1)/R = (e1S2 - e2S1) / [R(S1 - S2)] ◆Elliptic Curve Digital Signature Algorithm, ECDSA 椭圆曲线数位签证演 算法 我们用了 ECDSA演算法来保护我们的 HBC不被攻击,程式码大概是长这样。你 看这里,我们也用了乱数产生器。照理来说乱数产生器应该是有点复杂的,但 你知道$QNY的乱数产生器长什麽样吗? int getRandomNumber() { return 4; //随便丢骰子得到的结果 //骰子的结果当然是随机的啦啾咪~ } 426无断转载生儿子没屁眼! 於是可以得到 k, k就是私钥,有了私钥我们就可以高高兴兴的把程式拿来签 证罗~! (第十座奖盃:私钥也到手啦~) 这个私钥是$QNY在 PS3平台上最最重要的一样资讯,有了这个以後,什麽 Lv2 、 Lv1防御都没用,那是防人翻墙侵入的,我手上有大门的钥匙又何必翻墙? 更正一下,暂时还没拿到Lv1 的金钥 ,这部份还需要一些时间。 好了,所以公私钥的加密机制也崩坏了。只剩下最後一关:BootROM ,但是这 个东西实在谈不上是什麽高科技的玩意儿,我们没花多少时间就让他发生溢位 错误了。 426无断转载生儿子没屁眼! (第十一座奖盃:溢位错误的白金奖盃) 所以,谢谢啦,$QNY! http://fail0verflow.com ◆提问时间 426无断转载生儿子没屁眼! 原本我们想在这里直接展示我们的成果的,但是不知道为何暂时没办法正常运 作,两年前也是一样,不知道为何在关键时刻东西都会坏掉,我们会想办法修 好,然後明天,明天我们会另外安排个时间来作展示。(Lightning Talk) 我们准备了两只麦克风,请到两边排队,如果你不好意思在公开提问题的话, 你也可以私下到讲台前来。 Q1:你们知道PSJB的来源吗? 426无断转载生儿子没屁眼! A1:一无所知,但可以猜。只是有几分证据只能讲几分话。 Q1:所以是从$QNY内部流出的? A1:呵呵呵……。总之现在有很多晶片都可以模拟PSJB。但我们的破解方式不 一样,而且目前的战场有点脏,所以我们需要一些时间清理战场,大概下 个月左右我们就可以把我们的成果整理成破解工具放出来。 Q2:既然已经有私钥了,为何不能弄出个蓝光软体的酬载程式? A2:我们目前还没有拿到用来签证游戏的私钥,而且那跟appldr有关,而且 $QNY已经换了好几次私钥……。 426无断转载生儿子没屁眼! 更正一下,我搞错了,是的,我们目前已经可以把游戏签证,但那不是我 们的目的。 还有问题吗?没有的话,离场的出口在右边,离开时请带走所有的垃圾,谢谢 ! 426无断转载生儿子没屁眼! ※ 编辑: cassine 来自: 140.112.18.73 (12/30 13:52)
1F:→ p587868:什麽 施工中吗... 12/30 13:21
2F:→ SGBA:waiting 12/30 13:25
3F:推 MAGICXX:C4比较好用 12/30 13:28
4F:推 myriad:C4 (递 12/30 13:39
****** 刚刚打到一半断线, 120大学的网路就是这样ˋ(′_‵||)ˊ 所以这篇是断线後载入暂存档的,有些人的推文可能因此消失。另外这篇要转录 的话请先知会本人取得许可。
5F:推 JupIte:感谢翻译! 12/30 15:52
6F:推 p587868:等等..上一次编辑的网址是112耶..... 12/30 16:51
7F:→ p587868:不是中间隔了2小时就到台中了吧.... 12/30 16:51
8F:推 FightYourMom:PS3 全面破解 热烈上映中! 12/30 17:11
9F:推 f1234518456:乱数产生器那个我笑了XDDDDDD 12/30 17:41
10F:推 ipure:意思是每次乱数都回传4吗? 12/30 18:45
11F:推 coolan:推翻译 12/30 18:48
12F:推 ninjaxin:可以借转到个人版吗 12/30 19:09
13F:→ ninjaxin:谢谢 12/30 19:09
14F:推 hitsukix:看不懂 不过翻的很有趣XD 12/30 19:54
15F:推 chiyosuke:有点看不懂,不过未来金手指有望出吗?听说日本已有? 12/30 19:58
16F:推 ma19761112:看不懂 不过觉得很酷 12/30 20:12
17F:推 johnny3:惹到不该惹的人了 只能说自作孽 12/30 20:18
18F:推 doreamon909:为什麽大家都只想要在PS3上用Linux 没想用windows呢? 12/30 22:09
19F:→ psplay:windows太肥了 LINUX可依使用者需求来修改功能 12/30 22:19
20F:推 coolcliff01:用Linux跑QEMU之类的虚拟机 接者应该就可灌Windows了 12/30 22:27
21F:→ coolcliff01:理论上可行 不过应该只能拿来供着 效能一定惨不忍睹 12/30 22:28
22F:推 cheweichang:PS3 要跌价了 12/30 22:33
23F:→ cassine:简单说,就是微软没出给PS3跑的Linux版本 12/30 22:41
24F:推 damyr:那个乱数产生器的意思是不管骰子怎麽丢都会回传4的结果吗??? 12/30 23:18
25F:→ cassine:差不多是那个意思 12/30 23:49
26F:推 toro1144:用力的推!!! 这篇太棒了!! 12/30 23:57
27F:推 toro1144:PS3怎麽会跌价? $ONY会愿意降价格吗? 12/31 00:07
28F:推 damyr:忘了推,感谢翻译 12/31 00:21
29F:→ lamdacore:该小组的原意是让ps3执行linux,并非让它执行不正copy的 12/31 00:21
30F:→ lamdacore:游戏 12/31 00:21
31F:推 damyr:ps3应该会因为畅销涨价才对 12/31 00:22
32F:推 darklucker:426无断转载生儿子没屁眼! 12/31 01:13
33F:推 luhc:谢谢 原PO 翻译文的分享! ^^ 12/31 02:08
34F:推 tonyni:doreamon909: 没看到 PS3 用的是 PPC 处理器吗? 12/31 11:05
35F:推 silomin:这篇太有意思啦 不愧是高手云集的会场 所以真的不要乱惹人 12/31 12:20
※ 编辑: cassine 来自: 140.120.31.133 (12/31 17:04)
36F:推 jimihsu:推 12/31 17:21
37F:推 HolyBugTw:没想到微软不用dallas chip,但是用了没见识过的eFUSE 01/01 03:13
38F:→ HolyBugTw:return 4那边我想并不是RD偷懒,而是就算依赖时间换表 01/01 03:15
39F:→ HolyBugTw:也是一样可以硬是把时间给锁死,这样的random意义不大 01/01 03:15
40F:→ HolyBugTw:USB传回descriptor的bug就有点扯,竟然出包在这种地方 01/01 03:18
41F:推 jayemshow:我也只能给推了 01/02 22:29
42F:推 djboy:推一下!! 01/03 17:49







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP