Skip to main content
QUICK REVIEW

[论文解读] Methodically Defeating Nintendo Switch Security

Gauvain Tanguy Henri Gabriel Isidore Roussel-Tarbouriech, Noel Menard|arXiv (Cornell University)|May 18, 2019
Advanced Malware Detection Techniques参考文献 2被引用 6
一句话总结

本文詳細描述了一種系統性的逆向工程方法,用於繞過任天堂Switch的安全機制,結合了針對使用者空間和作業系統服務的軟體分析,以及針對基於ROM的啟動程式碼的硬體攻擊。研究人員成功在安全協處理器的高安全性模式下實現了ROP代碼執行,展示了對具有強大加密保護的新型嵌入式可信系統的完整攻擊鏈。

ABSTRACT

We explain, step by step, how we strategically circumvented the Nintendo Switch's system security, from basic userland code execution, to undermining and exposing the secrets of the security co-processor. To this end, we've identified and utilized two distinct analysis procedures. The software-based analysis suffices for reverse-engineering the userland and operating system services, and is necessary for a general architectural understanding of the software systems in the Nintendo Switch. While this method is extremely powerful and provides significant leverage over the control of the system and its software security, a hardware-based method was devised, which employs analysis of the trusted bootstrap code in ROM. This strategy was essential for the goal of defeating the hardware root of trust. Together, these two vectors provide essential insight required to instance a chain of attacks, in order to gain ROP code execution from the context of a high-security mode of a secure co-processor of a running system, thus allowing us to demonstrate a multi-faceted approach on attacking secure, embedded devices in an unfamiliar and novel environment.

研究动机与目标

  • 在缺乏文件的情況下,逆向工程任天堂Switch的安全架構,包括其可信啟動鏈和安全協處理器。
  • 識別並利用WebKit基瀏覽器組件中的軟體漏洞,例如use-after-free和越界讀取。
  • 開發並應用硬體技術,包括故障攻擊和ROM分析,以破壞硬體信任根。
  • 展示從使用者空間代碼執行到安全監視器與TrustZone環境內的權限提升的完整攻擊鏈。
  • 透過識別架構與實作缺陷,提供改進嵌入式設備安全性的實用見解。

提出的方法

  • 使用動態分析、模糊測試和協定逆向工程,在Switch的WebKit基瀏覽器應用程式上對使用者空間和作業系統服務進行軟體逆向工程。
  • 利用更新2.0.0中Wi-Fi登陸頁面的繞過漏洞,實現受控的網頁內容執行並存取瀏覽器引擎。
  • 對WebKit進行記憶體損壞分析,識別並利用如use-after-free和越界讀取等漏洞。
  • 採用硬體導向的方法分析ROM啟動程式碼,從而攻破硬體信任根。
  • 結合軟體與硬體技術,實現在安全監視器高安全性模式下的ROP執行。
  • 使用模擬器進行測試與除錯,以在實體裝置之外重現並驗證漏洞。

实验结果

研究问题

  • RQ1如何透過結合軟體與硬體攻擊,來攻破具備硬體信任根的嵌入式安全系統?
  • RQ2WebKit引擎與瀏覽器應用程式中的哪些漏洞允許在受限執行環境中實現遠端代碼執行?
  • RQ3故障攻擊與ROM分析在多大程度上可用於竄改現代遊戲主機的可信啟動鏈?
  • RQ4如何協調一系列漏洞,以實現從使用者空間到安全監視器與安全協處理器的權限提升?
  • RQ5Switch安全模型中的哪些架構與實作缺陷導致了此類攻擊,以及應如何修復?

主要发现

  • 研究人員成功在安全協處理器的高安全性模式下實現ROP代碼執行,證明了對可信執行環境的完全入侵。
  • Wi-Fi登陸頁面處理中的漏洞允許繞過網路限制,並實現對內嵌WebKit瀏覽器引擎的受控存取。
  • 在WebKit引擎中識別並利用了多個記憶體損壞漏洞,包括use-after-free與越界讀取,以實現初始代碼執行。
  • 對ROM啟動程式碼的硬體分析使研究人員得以破壞硬體信任根,這是系統安全模型中的關鍵組件。
  • 攻擊鏈結合了軟體利用與基於故障的硬體攻擊,證明即使系統具備ASLR、NX與TrustZone保護,只要多個缺陷被串連利用,仍可被攻破。
  • 本研究發現,缺乏足夠的程式碼審計、特權服務隔離不足,以及缺乏抗故障保護機制,顯著削弱了系統的安全性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。