PSP-DA官網置頂文章:何謂HEN、M33、Devhook、IPL、Pre-IPL?
原文地址:http://www.dark-alex.org/forum/viewtopic.php?f=83&t=12857
原文作者:Erland
翻譯:NC組-melphi9
目錄:
1.官方軔體
2.自製軔體
3.HEN
4.DevHook
5.User Mode Exploit
6.Kernel Mode Exploit
7.Pre-IPL
8.IPL
OFFICIAL FIRMWARE(官方軔體)
=================================================
官方軔體就是你PSP上的軔體系統,或者說是一個PSP上的操作系統。SONY在向你出售PSP的時候,PSP會搭載這個系統。當然你也可以從官方網站上下載它,然後更新到你的PSP上。
目前最新的PSP官方軔體版本是5.50。這個版本的軔體在沒有溢出漏洞的幫助之下,是無法執行自製程式和ISO鏡像的。
Custom Firmware(自製軔體)
=================================================
自製軔體是由Dark_Alex開發出來的PSP操作系統。他從Humma Kavula的自製程式UMDEmulator中獲得了靈感,理解了這個軟件在待機狀態下保存自身信息的功能。
http://forums.maxconsole.net/showthread.php?t=19699
這個連結所指向的帖子裡有對這個問題的討論,這個帖子也算是自製軔體系統的開端,我想可以找到當時Dark_Alex說了些什麼。
之後,Dark_Alex再接再厲,發佈了內建HEN的1.5概念驗證程序(可以在官方系統上執行自製軟件)。
接下來,他更是利用了SONY每一個值得利用的官方軔體版本,修改相應的內容,開發出了一系列的自製化模組,其中包括:
4個不同類型的ISO 鏡像加載器
自製程式執行工具HEN-D
新版自製軔體下載模組
恢復模式
VSH 選單
NID translator (解決官方系統更新,NID改變影響自製程式執行的問題)
PS模擬遊戲組件
修改CPU時脈模組
據我所知,Dark_Alex把這些模組都整合進了自製系統。而在加入了這些模組之後,PSP的系統就可以實現以下的功能了:
使用HEN-D執行自製程式
使用四種不同的ISO鏡像加載器:OE、M33、Sony's、Original來執行遊戲。
使用PS模擬組件執行PS1遊戲
HEN(自製程式啟動器)
=================================================
Hen是什麼,Hen能起到什麼作用。
HEN是「HomeBrew Enabler」的簡稱,它的作用是在官方軔體系統上執行自製程式。它所做的就是利用系統溢出,掌握核心模式的權限,然後載入定制的代碼讓未經系統註冊驗證的程序得以執行。HEN目前的最新版本是HEN-D。
這意味著任何人都知道如何讓一個自製程式在PSP上執行。利用這些溢出漏洞的程序在PSP上幾乎無所不能,包括執行ISO鏡像加載器。
HEN本身並不能加載ISO鏡像。它所能做的一切就是讓那些未經系統註冊驗證的程序執行起來。
有一些人在某個特定版本的HEN中設置障礙,阻止ISO鏡像加載器執行,當ISO 加載器執行時,HEN就會中斷程序的調用,這當然是可行的,這樣的設計同樣也能夠阻止其他的一些自製程式執行。我不能否定這種可能性的存在,但是通常來說,這樣做不太值得。當然,如果HEN的開發者真的想要阻止盜版,這種可能性將變為現實
請記住:所有HEN的作用僅僅是讓那些未經系統註冊驗證的程序執行起來,除此之外,別無他用。
Devhook
=================================================
Devhook 是一個可以執行在HEN環境下的模擬器,Devhook 是一個未經系統註冊驗證的程序。
Devhook的作用是模擬一個官方系統,同時加入HEN模組和ISO鏡像加載器,就是這樣。
目前Devhook的最新版本是0.6F。該版本只能在執行在3.10OE版本上,同時僅能模擬官方軔體2.71-3.11.也許它還能模擬官方軔體 3.40,但也就是到此為止了。官方軔體3.50以及以上的版本已經徹底改變了加密方式和nids,而目前無人針對這些改變更新DevHook 的代碼。現在Devhook只能執行在PSP1000系列上,鑒於M33自製軔體已經一統天下,Devhook已經沒有執行的必要了。
Devhook 不更新的理由是現在已經是M33自製軔體的時代了。當初開發Devhook的初衷就是為了應對不斷更新的系統軔體和遊戲。很多遊戲需要最新的系統軔體才能執行。M33的出現,適時地滿足了這些需求。即使是將來某個遊戲需要官方軔體10.0才能執行,你依然可以用5.00 M33-6 來執行它,除非這個遊戲必須使用10.0裡的某些特性才能執行。
關於Devhook的未來。Mathieulh 擁有Devhook的源代碼。他代表軟體的原作者Booster把這些代碼提供給了Team C+D小組和Prometheus 團隊的開發者們。如果他們中有人更新了這個軟體,那麼Devhook就能執行在即將登場的HEN之上(針對TA-088v3 和 PSP-300x的版本),Devhook 將可以讓PSP執行在5.50以上的新軔體下,同時又讓HEN模組和鏡像加載器依然有效。然而我高度質疑這種情況發生的可能性。為什麼呢?因為5.00 M33-6早已發佈,而我敢肯定5.50M33不久就會推出了。當然,我認為Booster不會重新復出了,我也不認為有任何人能夠再次獲得 Devhook的源代碼。
User Mode Exploit(用戶模式溢出漏洞)
=================================================
用戶模式的溢出漏洞了為破解者們提供了存取PSP RAM 中的軔體信息和部分NIDS的機會。然而這個類型的漏洞並沒有提供直接存取硬體的權限。
這是因為無論是PSP軔體系統和還是其他系統,還是遊戲或是應用程序,為了保護硬體,它們的功能都是受限制的。
Kernel Mode Exploit(核心模式溢出漏洞)
=================================================
核心模式的溢出漏洞為破解者提供了存取硬體的權限。簡單來說就是能夠存取Flash0,1,2,3的權限。這意味著可以安裝自製軔體。這也意味著HEN程序將可以執行,同時讓更多的未經註冊的自製程序執行。
核心模式的溢出漏洞提供了掌握PSP所有資源的完整權限。沒有核心模式的溢出漏洞,也就沒有HEN的用武之地。
Pre-IPL
=================================================
Pre-ipl是PSP在打開電源後第一個執行的東西。它告訴處理器到何處去調用程序載入系統軔體,Pre-ipl固化在PSP硬體之中,任何系統軔體的更新都無法改變它,pre-ipl採用硬體編碼的方式寫入到PSP。
Pre-ipl擁有讓PSP從NAND中啟動還是從記憶卡上啟動的裁決權。
目前的情況是,PSP-100x, PSP-200x系列的pre-ipl已經被破解。而PSP-300x 和PSP-2000 TA-088v3使用相同的pre-ipl,但是還沒有能夠導出,因此也無法判斷是否能破解或是存在溢出漏洞。
IPL
=================================================
IPL被稱作「Initial Program Loader」包含初始化物件與讀取Kernel起始位置,如果讀取主機的IPL,就是就進入XMB。如果透過潘朵拉電池,就會被引導讀取記憶卡的IPL,換句話說會進入刷寫軔體的程式。
留言