COMIC CLASSROOM

晶片裡的信任,是怎麼建立的?第 8 / 9 課

復古電玩主機的防盜拷攻防:Mega Drive、PS1 與 PS2 如何守住啟動門檻?

從遊戲展的一個疑問出發,說明早期 Mega Drive、PS1、PS2 的媒體辨識與防拷機制,拆解駭客如何跨越不同信任邊界,也區分互通性、保存、自製程式、盜版與惡意攻擊。

15 分鐘

先用一句話抓住這篇

從遊戲展的一個疑問出發,說明早期 Mega Drive、PS1、PS2 的媒體辨識與防拷機制,拆解駭客如何跨越不同信任邊界,也區分互通性、保存、自製程式、盜版與惡意攻擊。

先把這篇當成一張閱讀地圖:上方摘要說明問題,圖片先建立直覺,下面文字再補上真正的技術取捨。

如果第一次讀覺得名詞很多,可以先記住比喻與結論;第二次再回頭看名詞,會順很多。

復古電玩展的桌上,放著三樣東西:原廠遊戲、跨區發行的正版遊戲,還有一位玩家自己寫的小程式。玩家問老師:「為什麼同一台主機,有些能啟動,有些卻被拒絕?」主機可能在辨識遊戲媒體、執行區域政策,也可能只接受平台授權的程式;如果不先弄清楚它在檢查什麼,就很容易把不同問題都叫作「防盜拷」。

本課會從 Mega Drive、PS1 一路看到 PS2,追蹤各代主機想保護的資產、使用的檢查方式,以及後來的人如何跨過其中某些信任邊界。我們也會把「未授權複製」、「相容性研究」、「保存文化」、「自製程式」和「惡意攻擊」分開看。歷史案例只談機制與攻擊類別,不提供改機、接線、換片、燒錄或漏洞操作步驟。[1][2]

1. 復古電玩展的一個問題:為什麼同一台主機會拒絕不同遊戲?

復古電玩展上,銀灰髮老師面對原廠遊戲、跨區正版遊戲和自製程式,提出主機為何拒絕某些內容的問題
圖 1:先從玩家看得到的現象出發,再追問主機實際檢查的對象。

想像展場中的主機收到三種輸入:它熟悉的原廠遊戲、來自另一個地區的正版遊戲,還有玩家自行撰寫的程式。前兩者可能都是合法購買的內容,第三者也不一定懷有惡意,但平台仍可能對它們採取不同處理。眼前共同的現象只有「無法啟動」,背後的規則卻可能完全不同。

主機在啟動時可能會辨識媒體格式、檢查某種平台標記、套用地區政策,或判斷接下來要執行的程式是否符合平台規則。某些遊戲也可能只是與特定硬體版本不相容。因此,看到錯誤訊息不能立刻推論「防盜拷成功」,更不能單憑拒絕啟動就認定一定發生了駭客攻擊。

接下來我們會沿著一條固定路線看案例:先問主機檢查什麼,再問攻擊者接觸哪個環節,最後才討論失守會造成什麼後果。這樣比較能看出 Mega Drive 的平台識別條件、PS1 的特殊媒體訊號、PS2 的光碟與程式執行檢查,並非同一種機制。[1][2]

2. 一個「不能啟動」的現象,背後可能有不同威脅模型

四種不同風險:未授權複製、區域政策、自製程式與惡意程式;工具本身無法證明使用者動機
圖 2:從想保護的資產與可能的後果開始,才能判斷防線是否對準問題。

先把幾個常被混為一談的目標拆開。平台可能想限制未授權遊戲副本,保護遊戲授權與發行收入;區域政策則可能讓一片確實正版的光碟,因發行地區不同而遭到拒絕。兩者都可能讓玩家看見「不能玩」,但平台的判斷依據和受影響權益並不一樣。

玩家想執行自製程式,也不等於要散播盜版或植入惡意程式。Homebrew 可能是研究用途、遊戲保存、無障礙功能,或單純的程式設計實驗。另一方面,攻擊者也可能尋找執行惡意程式、竊取帳號資料、破壞服務或作弊的入口。這些使用目的都需要各自證據,不能看見工具就直接替使用者判定動機。

威脅模型可以用幾個問題建立:要保護的資產是媒體授權、主機程式完整性、玩家存檔,還是線上帳號?攻擊者只能接觸卡匣或光碟,還能修改硬體、操控網路,或餵入特製資料?萬一成功,後果是相容性問題、未授權副本、競技作弊、資料外洩,還是主機持續執行惡意程式?把這些答案說清楚,才知道防線應該設在哪裡。

3. Mega Drive 的 TMSS:Sega v. Accolade 的 Genesis III 怎麼檢查?

Sega v. Accolade 判決中 Genesis III 的 TMSS 概念流程:卡匣識別字串在啟動時被檢查
圖 3:判決描述的 Genesis III,不代表所有 Mega Drive/Genesis 型號。

討論 Sega v. Accolade 時,有個名稱要先說準:判決談的是 Genesis III,並稱它是當時 Genesis 主機系列的較新版本;這不表示每一台 Mega Drive 或 Genesis 都採用完全相同的設計。TMSS(TradeMark Security System)在此案例中的啟動條件,與卡匣裡特定位置的識別字串有關。[1]

主機在啟動早期讀取卡匣內容,尋找預期標記。條件符合後,流程才繼續。這道門影響相容性與商標呈現,但檢查標記不會驗證整份程式。例如保持識別字串,修改其他程式 bytes,標記仍可能相同;若密碼簽章涵蓋那些 bytes,修改就會影響驗簽。後面的互動實驗用自訂 ACAD 標記呈現這個差異,並不重現 Genesis III 的實作。TMSS 也不應被當成現代公鑰簽章或加密防拷。

這個案例提醒我們,不要只看系統名稱,而要問它實際驗證了哪些證據、又想從這些證據推論什麼。若一道門只確認某個識別條件,設計者就必須限制自己對它的安全宣稱。辨認檢查內容後,我們才看得懂後續互通性爭議究竟跨過了哪一道門。[1]

4. Accolade 案的重點,是互通性與逆向工程爭議

Accolade 研究相容性條件的概念流程,以及 Sega v. Accolade 案件中逆向工程和互通性的爭議
圖 4:理解相容性規則,不應被簡化成「加密被破解」。

Accolade 希望為 Sega 平台製作相容遊戲。案件中的關鍵背景之一,是它如何研究 Sega 的軟體,以及 Genesis III 的 TMSS 條件如何影響第三方遊戲。法院判決討論了逆向工程、互通性、合理使用與商標呈現等法律問題。這段歷史不應被改寫成「駭客破解了強大的加密演算法」。[1]

從工程角度來看,互通性問題是:要讓獨立開發者的程式在另一個平台上合作,必須理解哪些可觀察行為或介面條件?平台可能要求遊戲符合某種啟動規則;開發者為了相容,便需要研究規則如何影響執行。這跟恢復祕密金鑰、破解密文或複製光碟上的物理特徵,是不同層次的問題。

因此,介紹早期遊戲主機時,最好明確說出是哪一種邊界被挑戰。Accolade 案主要涉及平台相容條件及其法律待遇,而不是證明 Mega Drive 的所有防盜拷都被破解。把故事說準,既不會抹煞研究與互通性的價值,也能避免把所有繞過平台規則的行為都說成同一種攻擊。[1]

5. PS1 光碟除了資料,也可能帶有主機會辨識的物理訊號

PS1 光碟的概念示意:一般遊戲資料區與 Lead-in 區域的 wobble groove 特殊物理訊號
圖 5:可讀取的遊戲資料與媒體上的特殊物理特徵,是不同種類的資訊。

一般玩家把光碟放進主機,看到的是一片可以讀取的遊戲媒體;但主機作為系統,還可能檢查一般資料以外的媒體特徵。PlayStation 的歷史技術研究描述了 lead-in 區域中特殊的 wobble groove 物理訊號,並指出它與地區辨識條件有所重疊。Sony 的開發技術文件則另外記錄版權與防盜拷檢查;它能證明當時存在這類檢查,但不是 wobble groove 機制的說明。[2][3]

這就像一本書除了印出來的文字,還可能有紙張、裝訂或防偽標籤等特徵。把可讀取的遊戲檔案複製出來,不會自動重現原媒體的每一種物理性質。因此,「資料可以複製」和「主機會接受複本」不是同一件事;系統究竟接受什麼,要看它的檢查流程。[2]

也要避免反過度概括:不能說所有 PlayStation 機型、所有光碟與所有防護都只依賴同一條波形。本課的重點是辨識這個歷史案例中,內容資料、媒體物理訊號與地區政策如何共同影響啟動決定;不同修訂版和系統還需要各自查證。[2]

6. PS1 的破解案例,跨過的是媒體與啟動流程的信任邊界

PS1 光碟到主機判斷流程的信任邊界,並以高層次分類說明硬體改裝與利用啟動流程假設的歷史手法
圖 6:理解攻擊分類即可看見防線落點,不需要把歷史手法寫成操作教學。

當主機把特殊媒體訊號納入啟動判斷,後來的繞過方式便不只是複製一般檔案。有些歷史手法會在硬體層面介入檢查,或讓主機看到它預期的條件;另一些則利用啟動流程中的信任假設。這些是攻擊類別,不是一套可以互換的技巧。[2]

從系統圖來看,信任邊界可能在光碟和光碟機之間,也可能在光碟機回報資訊與主機判斷邏輯之間,或藏在啟動狀態轉移中。若攻擊者能改變檢查器實際觀察到的內容,問題可能是輸入來源可被操控、檢查結果未被保護,或流程過度信任某個前置條件,而不一定是密碼演算法本身出了問題。

這種分析方式同樣適用於硬體安全:感測器可能回報錯誤值,解析器可能在不完整輸入下做出不安全決策,信任政策也可能把可仿造訊號當成真實證明。工程師要追問的是:證據是否來自可信來源?送進判斷器的路徑是否保護完整?證據缺失或不一致時,設備會安全拒絕,還是反而放行?[2]

7. PS2 的離線光碟檢查,和 DNAS 線上服務不是一回事

PS2 離線遊戲光碟檢查與線上 DNAS 帳號、連線驗證服務的雙流程比較
圖 7:離線媒體授權和線上帳號/連線驗證屬於不同安全邊界。

到了 PS2 時代,遊戲媒體包含 DVD,資料更容易被一般設備複製;平台因此採用媒體辨識、區域條件和程式執行限制等設計。不同機型、光碟類型和時期的實作會有差別,所以適合用「主機需要判斷媒體是否符合啟動規則」這種概念理解,而不是假定每款主機都走完全相同的流程。[4]

線上遊戲又多出另一件事:Sony 的 DNAS(Dynamic Network Authentication System)是一種線上身分與服務驗證機制,負責協助網路服務判斷連線身分與服務資格。它的工作對象是線上服務,不是 PS2 離線遊戲光碟的同一套辨識流程。官方公告把 DNAS 描述為網路驗證服務,與本機媒體檢查應分開討論。[5]

分開看能避免錯誤結論:一片光碟可能通過本機檢查,但線上帳號或連線仍遭伺服器拒絕;反過來說,帳號通過 DNAS 驗證,也不代表光碟中的每個程式都沒有漏洞。每道檢查能支持的安全主張都有限,理解主機架構時要逐項確認。

8. PS2 的不同破解路徑,不等於都破解了加密

PS2 硬體改裝與軟體漏洞兩種高層次攻擊分類,並區分自製程式、研究保存、盜版與線上服務
圖 8:攻擊的入口、造成的能力與後續使用目的,必須分開描述。

PS2 的歷史案例包括硬體改裝,也包括利用程式如何處理輸入或啟動流程的軟體漏洞。後續研究如 FreeDVDBoot,便記錄了特定條件下與光碟處理有關的程式問題。這些案例的前提與入口不相同,不能把它們統稱為「密碼被破解」,更不代表每個型號都受同一漏洞影響。[7]

密碼學被破解,通常是在說演算法或金鑰在原本安全模型下遭到攻破;程式漏洞則可能是輸入驗證、記憶體處理或狀態轉移出了錯,使程式做出開發者未預期的決定。硬體改裝又是另一類,可能改變檢查器讀到的訊號或執行條件。問題不同,修補方式也不同。

結果也需要分開敘述。有些研究者和玩家希望執行自製程式、保存遊戲或研究主機;也有人把相似能力用於未授權複製、作弊或商業盜版。Sony v. Ball 等訴訟紀錄與技術研究提供了不同側面的材料,但不能單靠漏洞存在就推定某位玩家的動機。[2][6]

9. 三代主機各自檢查哪一層?

Mega Drive、PS1、PS2 與 DNAS 的檢查對象、攻擊方向和風險比較矩陣
圖 9:把檢查對象、攻擊入口和使用者動機分成三個問題。

把三代案例放在同一張表上,Mega Drive 的一列應註明是 Sega v. Accolade 判決所談的 Genesis III;PS1 一列討論特殊媒體訊號與地區條件;PS2 則有離線光碟條件和程式執行檢查。DNAS 應放在另一列,因為它負責線上身分或連線服務,而非離線光碟認證。[1][2][4][5]

再把「攻擊入口」另外列出:有人可能改變硬體看到的訊號、利用程式漏洞,或挑戰啟動流程中的信任假設。這和「檢查對象」不是同一個維度。若一篇報導只說主機被破解,讀者還不知道究竟是哪個物件、哪一個入口、哪種安全主張遭到影響。

最後還要看影響:互通性、保存、自製程式、未授權複製、作弊、帳號被盜或惡意程式執行,都不是同一種結果。某一道檢查被繞過,只能說這一道防線對某條攻擊路徑沒能達到預期;它本身不能證明整台主機的所有安全性質都已失效。

10. 駭客為什麼想取得不同的啟動能力?

威脅模型檢查表:保護資產、攻擊者接觸點、失守影響,以及互通性、保存、自製程式、盜版與惡意控制等可能動機
圖 10:先問資產、能力與影響,再評估可能的使用目的。

回到展場,想像訪客要在新系統上執行一款已經停產的老遊戲。他可能是研究保存,也可能只是想讓舊收藏能繼續運作;一位程式設計者則可能想在主機上寫自己的遊戲。這些情境都可能需要理解平台規則,但不會自動等同於惡意入侵。

另一位使用者可能想取得競技優勢、散布沒有授權的遊戲副本;攻擊者也可能想植入惡意程式、竊取存檔或帳號資料,甚至進一步利用線上服務。若要評估真實風險,就要問他能接觸到卡匣、光碟、控制器、網路,還是主機內部硬體;他能做什麼、能維持多久、又能觸及哪些資料。

因此,威脅模型不是把所有「駭客」分成好人或壞人,而是具體記錄資產、攻擊者能力、入口和失守後果。研究能力可能被保存或互通性用途,也可能被濫用;我們要依實際行為、授權狀況與受害影響來判斷,而不是從某個工具名稱推測使用者的整體動機。[2]

11. 防盜拷與 Secure Boot 都會影響啟動,但保護目標不同

防盜拷的媒體授權檢查與 Secure Boot 的啟動信任鏈並排比較,說明兩者檢查對象與目標不同
圖 11:媒體授權回答「這份遊戲是否符合平台規則?」;Secure Boot 回答「下一段程式是否可信任?」

防盜拷或媒體授權檢查,主要想回答這份卡匣或光碟是否符合平台訂定的媒體、授權或地區規則。Secure Boot 則從硬體信任根開始,檢查接下來要執行的程式是否由受信任的簽署者授權、內容是否符合完整性政策,通過後才交給下一階段。兩者都可能影響設備是否進入遊戲,但檢查的對象並不相同。

因此兩者不能互相取代。遊戲光碟的授權檢查,不一定能保證後續每段程式都沒有被更動;Secure Boot 建立程式啟動信任鏈,也不會自動判斷遊戲授權是否有效、玩家帳號能否連線,或已授權程式內是否藏有漏洞。每個控制都只能支撐自己設計時明確定義的安全主張。[8]

它們共通的工程教訓,是要說清楚檢查依據從哪裡來、攻擊者能否操控檢查路徑、失敗時設備要怎麼處理,以及後續如何更新或復原。如果漏洞在最早的 Boot ROM,後面的軟體甚至可能還沒機會執行;這是另一個更靠近硬體信任根的問題,不應和光碟防拷混成同一課題。[8]

12. 回到電玩展:設計防線前,先完成四個檢查

四步驟防線設計檢查:檢查對象、威脅模型、失守後果、復原策略,並總結 TMSS、PS1、PS2 與 DNAS 的不同
圖 12:從機制史回到設計方法——先問要保護什麼,再問怎麼保護。

現在我們可以回答展場訪客:Sega v. Accolade 判決所談 Genesis III 的 TMSS,是一種平台識別與啟動條件;PS1 案例包含特殊媒體物理訊號與區域行為;PS2 有離線媒體與程式執行相關檢查;DNAS 則是另一條線上的身分與服務驗證路徑。這些機制可能都影響玩家能否進入遊戲,卻不能因此合併成一種「防盜拷」。[1][2][5]

設計防線時,可以依序問四件事:一、檢查對象是媒體、程式、韌體還是線上服務?二、攻擊者接觸得到什麼,又具備哪些能力?三、檢查失敗會造成授權爭議、資料外洩、惡意執行還是服務中斷?四、發現漏洞後能不能安全更新、撤銷失效的信任,以及讓設備進入可控的復原流程?這些問題比先挑一個安全技術名稱更接近工程設計。

下一步,我們會從可移除的遊戲媒體往主機內部走,追蹤第一段執行程式如何建立信任。如果漏洞已經位在最早的 Boot ROM,後續安全開機設計還有哪些選項?這就會把話題從復古主機防拷,帶到硬體 Root of Trust 與 Secure Boot。[8]

五個重點,帶著走

  • 主機拒絕啟動只是一種現象,先辨認它檢查的是平台識別、媒體訊號、程式碼,還是線上服務。
  • Sega v. Accolade 的 TMSS 案例談的是判決所稱 Genesis III;不要推廣成所有 Mega Drive 或 Genesis 機型。
  • 複製可讀取的遊戲資料,不代表同步複製媒體上的特殊物理訊號。
  • PS2 的硬體改裝、軟體漏洞與 DNAS 線上驗證屬於不同邊界;繞過檢查不必然等於破解密碼學。
  • 防盜拷與 Secure Boot 保護不同主張,都需要明確威脅模型與適當復原方式。

情境練習:老主機拒絕一款自製遊戲,但同一台主機仍能使用正版線上服務。你會先懷疑哪一道檢查?要取得哪些資料,才能判斷這是平台相容政策、安全漏洞,還是單純的程式不相容?

參考答案:先檢查本機媒體或程式啟動政策,不要直接推論 DNAS 或 Secure Boot 出了問題。接著確認主機型號與版本、被檢查的媒體或程式、拒絕發生在哪個啟動步驟,以及規則原本要保護什麼。若只是平台不支援某類自製程式,可能是相容政策;要稱為安全漏洞,還需要證據顯示非預期行為跨越了安全邊界並造成具體影響。

參考資料

  1. Sega Enterprises Ltd. v. Accolade, Inc., 977 F.2d 1510 (9th Cir. 1992):Genesis III、TMSS、逆向工程、互通性與商標呈現的主要判決資料。
  2. Renard、Benadjila,Strategies of Defense and Attack: the Case of Game Consoles,SSTIC 2015:遊戲主機防禦與攻擊類別的技術回顧。
  3. Sony Computer Entertainment,PlayStation Technical Note: Checking PlayStation CD-ROMs:當代主機開發技術文件。
  4. Rodrigo Copetti,PlayStation 2 Architecture: Anti-Piracy and Homebrew:PS2 光碟、主機修訂差異與 Homebrew 的技術整理。
  5. Sony Computer Entertainment,Dynamic Network Authentication System for PlayStation 2 (2001):DNAS 線上驗證服務官方公告。
  6. Sony Computer Entertainment Europe Ltd. v. Ball, [2004] EWHC 1738 (Ch):PS2 周邊與規避裝置相關判決紀錄。
  7. CTurt,FreeDVDBoot research project:PS2 軟體漏洞研究脈絡;本文僅引用研究事實,不提供操作方式。
  8. NIST SP 800-193,Platform Firmware Resiliency Guidelines:平台韌體保護、偵測與復原的設計脈絡。

互動實驗:辨識標記、媒體證據與程式簽章

保持前四個 bytes 不變,只改程式內容。識別字串仍然相同,ECDSA 驗簽卻會拒絕。切換檢查,再分別關閉區域與線上服務條件,觀察每道門處理的問題。

這是使用 ACAD 公開標記與自訂資料的比較模型。SHA-256 與 ECDSA 真正運算;物理媒體訊號、區域與服務資格是給定條件。它不重現 TMSS、PS1 wobble、PS2 或 DNAS,也不驗證授權、著作權或程式沒有漏洞。

本次實驗條件

學習指南

晶片裡的信任,是怎麼建立的?

0 / 9

查看課程大綱 → · 進度只計入已發布課程

先備知識

    我學會了什麼

    • 辨認主機啟動遊戲前實際檢查的對象
    • 區分媒體檢查、線上身分與程式信任
    • 從資產、接觸範圍與影響建立威脅模型

    本課術語

    查看術語字典 →

    延伸閱讀

    課後小測驗

    讀到這裡,辛苦了。

    把概念帶走,比把術語背走更重要。

    #Console Security#Anti-Copy#TMSS#PlayStation#Threat Modeling#Hardware Security#漫畫小教室