xbox360吧 关注:265,025贴子:6,089,331

Xbox360保护和破解的历程

只看楼主收藏回复

转自15432。俄文原贴分为三部分,我会加入自己的理解并转载。
您可能听说过 Xbox 360 游戏机,并且它正在运行“脉冲破解”。这里的“自制固件”是指绕过内置保护机制来运行游戏和自制软件的副本。破解,就是漏洞所在!
有什么机制,它们如何运作?微软的开发人员做了什么以及他们如何设法解决这个被破解的问题?
事实上,这个话题非常广泛和有趣,尤其是对于 Xbox 360 - 在这里你可以找到软件漏洞、硬件缺陷和绝对神奇的魔法。有趣的?让我们来看看!在第一部分中,让我们来我们熟悉虚拟机管理程序、驱动器和固件......以探寻破解的原理


IP属地:浙江来自Android客户端1楼2023-10-12 11:41回复
    原贴链接:https://habr.com/ru/articles/491634/


    IP属地:浙江来自Android客户端2楼2023-10-12 11:44
    回复
      认识测试对象
      Xbox 360 游戏机于 2005 年发布,此后硬件特性没有发生任何变化。整个发布过程都是一样的:
      3.2 GHz PowerPC架构 CPU,/ 3 核
      500 MHz GPU
      512MB 运行内存
      SATA DVD-ROM驱动器
      SATA 硬盘(可选)
      是的,随着时间的推移,设计发生了变化,制程的改进,纳米减少了:
      从左到右依次是厚机、Slim小蛮腰、Slim E


      IP属地:浙江来自Android客户端3楼2023-10-12 11:50
      回复
        所有游戏在所有“版本”的游戏机上都运行得同样好 - 这正是现代游戏可以在 2005 年硬件上运行的情况。
        在发布时,微软曾大声声明:该控制台的设计尽可能安全 - 拥有带有硬件保护的定制芯片,一般来说,黑客从未见过这样的事情(相对于使用计算机x86架构的初代Xbox):
        这个盒子里的安全级别是黑客社区以前从未见过的
        开发商想出了什么办法?
        首先,他们竭尽全力确保着系统引导的程序代码无法被获取。中央处理器内置了 32 KB ROM,其中包含主引导加载程序 (1BL) 和执行该加载程序的 64 KB SRAM。从CPU晶振中读取获取ROM的内容是非常非常困难的。所以1BL 方面并无法寻找到可供绕过的漏洞:
        图为初代90nm CPU


        IP属地:浙江来自Android客户端4楼2023-10-12 12:05
        回复
          其次,他们在处理器中插入了特殊的保险丝——跳线被烧毁(字面意思是高压物理熔断),这是一种一次性可编程存储器。保险丝包含:
          JTAG接口锁定位(fuseset 00,所有零售和XDK机器一致)
          定义前缀用途的位(fuseset 01,用于区分零售/devkit/testkit,末尾五位,是ff0f0或者0f0f0)
          CB LDV ,决定引导方式 fuseset 02
          独特的 128 位处理器密钥 fuseset 03 04,05 06
          用于禁止降级的锁定值 (CF,CG LDV) 计数器 fuseset 07~11


          IP属地:浙江来自Android客户端5楼2023-10-12 12:12
          收起回复
            是的,是的,LDV保险丝的数量是有限的。如果您设法连续更新主机 80 次,CFLDV 计数器就会耗尽并且...我不知道,我没有尝试过。主机可能无法再更新。
            注:360如果包括所有测试版的dash界面,是有将近80个版本号的
            第三,开发商实施了信任链。为了验证引导加载程序的真实性,在1BL,2BL阶段使用了现代(当时)SHA-1 和 RSA-2048 算法的组合,这排除了运行您自己的代码或未经授权修改引导加载程序的可能性,即使您以某种方式获得了主机所有密钥并能够有方法重建系统。


            IP属地:浙江来自Android客户端6楼2023-10-12 12:24
            回复
              第四,开发人员决定进一步遵循“不要相信任何人”的原则,并将特殊的硬件RAM 保护模块嵌入到同一个不幸的 CPU 中!在它的帮助下,所有包含程序代码的区域都被加密,并且对于最重要的区域(虚拟机管理程序)启用了完整性控制!
              当开发人员通过可访问 RAM 的外部设备更改 RAM 中的系统代码时,这可以保护开发人员免受 DMA 攻击。(XeDK开发主机所带的外部附带控制盒调用南桥接口进行修改)


              IP属地:浙江来自Android客户端7楼2023-10-12 12:28
              回复
                最后,这个防止入侵的管理程序负责界定内存区域的权限。当然,只有他才能使页面可执行,在他检查数字签名之前,因此即使通过某些驱动程序或游戏中的漏洞(就算游戏已启动)也无法加载未签名的代码或从数据区域执行某些操作具有内核权限。
                因此,Xbox 360操作系统得到了很好的保护,黑客从而选择DVD-ROM作为第一个攻击媒介。
                让我们启动...游戏备份!
                在 Xbox 360 中,游戏的主要媒体是双层 DVD。当然,正版光盘这里也有保护机制:
                与 DVD-ROM 的数据交换使用唯一密钥加密
                在磁盘的开头有特殊的“安全扇区”来确认许可
                磁盘上的可执行文件.xex经过数字签名
                与主系统相比,保护 DVD 驱动器受到的关注要少得多。游戏机对 DVD 驱动器过于信任——正是 DVD-ROM 中的固件,决定了光盘的许可。
                此外,刚开始的时候,光驱固件存储在外部存储器中,可以由编程器读取:
                图为双90nm初代机器所配备有的东芝-三星光驱


                IP属地:浙江来自Android客户端8楼2023-10-12 12:42
                回复
                  于是,2006年5月14日,commodore4eva(c4eva)发布了TS-H943驱动器的第一个修改固件。
                  固件发布自述文件:
                  — TS-H943光驱,Xbox 360 的 Xtreme 固件
                  — 这就是期待已久的世界首个 Xbox 360 备份固件修改,可启动所有游戏备份!
                  —功能:
                  启动所有 Xtreme Xbox 360 游戏备份
                  启动所有 Xtreme Xbox 初代 游戏备份
                  启动所有 Xbox 360 功能光盘备份
                  启动Xbox 360上所有 Xbox 初代功能光盘备份
                  —Xtreme0800提取固件使驱动器能够在 Windows 下被识别,从而运行,无需任何硬件转换/适配器
                  注:360的sata光驱在windows下是识别不到的
                  在 Xbox Live 上使用需自行承担风险
                  —技术细节:
                  从 PSN 04FB1F(第 0 层)读取 Xbox 360 安全扇区
                  从 PSN 605FF(第 0 层)读取 Xbox 初代 安全扇区
                  对于 Xbox360 游戏和 Xbox 初代游戏,必须使用 Xtreme0800 光驱固件提取安全扇区
                  不会启动使用 Xbox初代 605b 0800 固件制作的 Xbox 初代 备份(可能在未来版本中加入支持)


                  IP属地:浙江来自Android客户端9楼2023-10-12 12:48
                  回复
                    固件从 DVD 光盘上的固定区域读取安全扇区,而非固定头段读取特定信息,并欺骗游戏机,使其误认为已插入许可光盘。
                    同时发布了固件“0800”,旨在创建游戏副本和读取安全扇区。计算机中可检测到刷入此固件的 Xbox 360 驱动器,并且可以完全读取游戏光盘的扇区。
                    还可以使用以下技巧复制游戏:
                    将普通的两层DVD光盘放入计算机光驱中
                    等到它被识别,平静下来并停止旋转
                    使用回形针打开托盘并将光盘更改为 Xbox 360 中的游戏光盘
                    关闭托盘并制作磁盘映像!
                    (但是这并不适用于所有 DVD-ROM 型号。)
                    最重要的是,该驱动器仅使用特殊的 ATA 命令在软件中进行刷写(Vendor Mode)。该套件包括一个特殊程序,用于读取原始固件和写入修改后的固件。原始固件包含将驱动器链接到 Xbox 360 的珍贵密钥(DVD Key):
                    注:早期使用Dos刷写,或Wondows的命令行。后期才出现了Jungle Flasher的GUI操作界面


                    IP属地:浙江来自Android客户端10楼2023-10-12 12:54
                    回复
                      失去DVD Key密钥就意味着连正版光盘都无法启动,所以有人把密钥写在记事本上,尽可能保存下来,这是最珍贵的知识。
                      另一个话题是对在线游戏的恐惧。大家都担心微软会发现驱动器被修改并远程禁止游戏机进行在线游戏。有些人甚至制作了一个硬件模块来在原始固件和修改后的固件之间切换:
                      在原始固件上,他们“根据许可”播放游戏光盘并连接到网络Xbox Live;在修改后的版本上,互联网电缆被羞涩地断开。顺便说一句,恐惧并不是徒劳的,但这样的双固件完全是徒劳的,一切都在没有网络连接的情况下进行而已。


                      IP属地:浙江来自Android客户端11楼2023-10-12 12:58
                      回复
                        最完美的破解是jtag破解吗


                        IP属地:浙江来自Android客户端12楼2023-10-12 13:01
                        回复
                          整整一个月后(2006年6月15日),该固件被移植到当时安装在Xbox 360中的另一款驱动器型号上——日立GDR3120L。
                          幸好,他还有一个包含固件的外部闪存驱动器:那个具有紫外线擦除口的芯片
                          注:在我使用,自己刷写的情形下这是对于所有刻录碟,压制碟兼容性最差劲的一款光驱,很多不能读取而东芝三星光驱可以读
                          该驱动器得到了更好的保护:
                          固件以加密形式存储在 ROM 中
                          固件具有完整性控制
                          要重写固件,您必须进入特殊的“Mode B”,同时能在Windows下被识别
                          研究人员自己已经解决了前两点,那么所有年轻的重蹈覆辙的破解者都必须重复这一步进入到“Mode B”的壮举


                          IP属地:浙江来自Android客户端13楼2023-10-12 13:07
                          回复
                            建议使用 Slax Linux 的特殊启动盘。
                            或在启动时短路12V供电电线来执行此操作。必须将驱动电源连接器的引脚 0 和 9 短路。例如,用别针!镊子也挺好,就是容易烧xbox360的供电或者光驱内部的主控芯片而已
                            在这两种情况下,在这种操作之后,该驱动器在 Windows 中被检测为常规 DVD 驱动器,并可以进行强制刷新。



                            IP属地:浙江来自Android客户端14楼2023-10-12 13:12
                            回复
                              第一个版本发布后,改进了自定义固件,增加了稳定性,增加了对新游戏的支持,总的来说,一切如常。
                              微软的回应
                              开发者只是回应了“无法破解”的游戏机已被黑客入侵的指控:
                              系统没有被黑客入侵,他们只是学会了如何运行游戏副本,我们正在努力避免
                              注:实际上就是嘴硬,瞧不起雕虫小技
                              原答案:
                              核心安全系统尚未被破坏(确实是,引导程序没有遭受攻击,没有运行自制系统)。不过,据报道,光驱和游戏机之间的身份验证协议可能会受到攻击,如果准确的话可能会允许人们玩非法复制的游戏。我们的安全团队已意识到这一点,并且正在研究此问题的潜在解决方案。Xbox 360 平台旨在进行更新避免问题,如果发现任何未经授权的活动,我们准备采取适当的应对措施。


                              IP属地:浙江来自Android客户端15楼2023-10-12 13:15
                              回复