ホーム › フォーラム › Discussions › [info]OpenCoreがSecureBootModelで動かないとき
- このトピックは空です。
-
投稿者投稿
-
-
MifJpn(Alpha)ゲスト
おつかれさまです。
結構決定的な、設計思想の差が出てきました。
iMac20,2なので、j185fがDefaultでセキュアに設定されますが、OpenCore,Cloverともに、あるNVRAMを設定していました。4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:BridgeOSHardwareModel
です。
しかしながらOpenCoreは、この変数が、起動時にあるとセキュアでないとして止まる仕様になっています。
OSが必要なNVRAM項目は同じですが、OpenCoreはOSが終わる時に消しており、Cloverでは消しません。
その理由を、アタックが考えられるからだと言いましたが、OSが動いていないときにNVRAM項目があって、何かアタックする、動きをアタックウエアは行えるのでしょうか?
OpenCore側に理由を聞きましたが、答えは今のところ得られませんでした。
Clover側の答えは簡単です。OSで使うから定義している。OpenCoreで消せばいい。(NV-RAM->Deleteの項目で)思うに、
カメレオンからあるCloverは動くという実利主事を、
OpenCoreは動く暇のないときにも、NVRAMを汚さないという、理想的(ややペシミストな)道徳律を重んじているようです。結局のところ、
NVRAM → Delete →4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14:String:BridgeOSHardwareModel
-
須磨の辰五郎ゲスト
お疲れ様です。
OpenCoreブートローダーの利用において、セキュリティー関連の設定内容の”適宜更新”はとても重要だと思う。
今回も、公開(告知)なさった点を早速網羅して、私めのConfig.plistに素早く反映。これで、当分 頭を高くして安眠できそうです。
本当に、深く感謝です。 -
codereaderゲスト
OpenCore 0.7.3 -> 0.7.4に関するInsanelyMacのmillucoのポストでT2 SecurtyBoot関連で
修正があったが、それのことを書いてるのかな?
そもそもPCにはT2チップなんて搭載していないし、PCのUEFI BIOSもNVRAMにBridgeOSHardwareModelの
値が書きこまれるなんて想定していないから。OpenCoreのNVRAMセクションに追加しないという方針での修正は妥当な気がします。
NVRAM >> added BridgeOSHardwareModel NVRAM variable to fix T2 SecureBootMode on Monterey.
You do not need to add anything to NVRAM section. This is done internally by OpenCore itself.引用元:https://www.insanelymac.com/forum/topic/349151-how-to-opencore-073-074-differences/
下記のコミットのLibrary/OcAppleSecureBootLib/OcAppleSecureBootLib.cの変更点を見る限りでは、
OSがBootする前に、BridgeOSHardwareModelで指定された値を、EFIのRuntimeServiceを利用して
メモリ空間上にセット(l.116のgRT->SetVariable)することで、実現していると思われ、
NVRAMを汚さないとても綺麗で安全な実装だと思います。https://github.com/acidanthera/OpenCorePkg/commit/7cd3db3119a52859f5f5e05627242508725e92f3
-
MifJpn(Alpha)ゲスト
おつかれさまです。
BridgeOSHardwareModelについて、0.7.7でDeleteから取り除いてみたところ、やっぱり動きませんでした。
ええ、きれいで安全な実装はいいことだとおもいます。
ただ、どのような方法化はわかりませんが、OpenCoreでは終了時に取り除いているので、Deleteしないといけないのだと感じます。うごいていないOSにとって、不揮発性メモリにこの変数があっても意味があるのか聞いただけです。彼らが答えないので、loroft6氏が出てきますが・・・もし、良い方向に、コードが改変されているのなら、とてもいいことです。
ただ、設計上の道徳律の差であって、本来はコード実装とは関係ないことかもしれません。
また、この場所で設計思想の道徳律を出すのは本当に難しいです。(道徳律についての知識がないことがいけないとは言いませんが、以下のようにvit9696氏はある程度の理解を示しています。それに加えて、多くのここの読者は理系であるので、「分からないのは、言い方が悪い」というのは辛いものです。)かれは、明らかにドイツ観念論上のカントをなぞっていると私には感じます。どう感じるかは、皆さんにおまかせします。ただ、理解できないことが誰かのせいになると考えることは、ぜひ一考してほしいとおもうのです。(おもうに、哲学は、再実験による実証可能性を必要としないのですから、説明責任は、OpenCore側にもないと私は考えています。)https://github.com/acidanthera/bugtracker/issues/1868
以下私
I am a hacker who likes freedom, but I think freedom also goes back to basics. That is. I believe that true freedom is to voluntarily obey the laws of moral obligation (moral law), which every human being must obey at all times.This time, the moral law is the conscience of OpenCore, and I hope Clover is the same.
以下vit9696氏
There is a fundamental difference between Clover and OpenCore approach. Clover will unlikely see any reason to change this. But we may reword the message eventually.
-
-
投稿者投稿