2374277_ja-JP

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

2374277_ja-JP

2374277_ja-JP

i.Mx8mm HABv4 は、arm_smccc_smc から hab_rvt_authenticate_image を呼び出すとハングアップします。

こんにちは

i.Mx8mmプロセッサでHABv4を使用しようとした際に問題が発生しています。正確に言うと、hab_rvt_authenticate_image は、U-Boot 本体の「Secure Monitor Call Calling Conventions」(smccc)経由で呼び出されるとハングアップします。Bootscript (boot.scr) の認証を試みると、処理が停止してしまいます。SPLでは、(高度レベル3からの)ROM機能への直接呼び出しは正しく動作します。

SRK_Hashヒューズは切断しましたが、システムの残りの部分はまだオープン構成のままです。
興味深いのは、異なるキーセットを使用した当社のGitHubパイプラインから構築されたイメージを取得すると、SRKハッシュが明らかに一致しないため、システムが起動し、期待されるHABイベント情報が生成されるという事実です。

正常に動作するブートスクリプトと動作しないブートスクリプトを比較したところ、IVTヘッダーとCSTヘッダーに違いは見られなかった。
CSTのcsf_parseを使用しても、両方のファイルから同じ結果が得られます。
認証関数に渡されたアドレスと引数を確認しました。

ブートコンテナはeMMC内に配置され、イメージの残りの部分(ブートスクリプト、カーネル、ルートファイルシステム)はSDカード上にあります。
IVTとcsfヘッダーのない署名なしイメージを起動しても、認証関数が全く呼び出されないため、正常に動作します。

ボード: Toradex Verdin imx8mm
U-Boot バージョン: 2024.07
画像はCST 3.4.0を使用して署名されました。

一方のキーセット(ヒューズ内のSRK_HASHに一致するキー)を使用しているときに、間違ったキーセットを使用しているときに、認証呼び出しが返ってこない理由について何か心当たりはありますか?

ご協力ありがとうございました。


i.MX 8M | i.MX 8M Mini | i.MX 8M NanoSecurityRe: i.Mx8mm HABv4 hangs when calling hab_rvt_authenticate_image from arm_smccc_smc

こんにちは

ご回答ありがとうございます

1.ブートスクリプトに署名するために使用したスクリプトの一部を添付ファイルとしてまとめました。なお、弊社では他の機能も備えた独自の構築システムを使用していますのでご了承ください。これは、一部の環境変数がここから取得されているものであり、コードスニペットには直接表示されていません。

署名済みのブートスクリプト(boot.scr)も添付しました。boot.cmd も同様です。それらはboot.zipフォルダの中にあります。

2. 以下は、認証を実行する前のコマンドの出力です。残念ながら、その後は取得できません。システムがフリーズしてしまい、最終的にはウォッチドッグによってリセットされてしまうからです。

Verdin iMX8MM # md.l 0x30370000 0x40
30370000: 00000000 80002100 00000000 00000000 .....!..........
30370010: 00000000 80009b00 00002000 00000000 ......... ......
30370020: 00000000 00000000 00000000 00000000 ................
30370030: 00000000 00000000 00000020 00000000 ........ .......
30370040: 00000000 00000000 00000000 40000000 ...............@
30370050: 00000000 00000000 00000000 00000000 ................
30370060: 00000000 41736166 00000000 00000000 ....fasA....
30370070: 00000000 00000000 00000000 00000000 ................
30370080: 00000000 00000000 00000000 00000000 ................
30370090: 00000000 00000000 00000000 00000000 ................
303700a0: 00000000 00000000 00000000 00000000 ................
303700b0: 00000000 00000000 00000000 00000000 ................
303700c0: 00000000 00000000 00000000 00000000 ................
303700d0: 00000000 00000000 00000000 00000000 ................
303700e0: 00000000 00000000 00000000 00000000 ................
303700f0: 00000000 00000000 00000000 00000000 ................


ファイル U-Boot-Output.txt には、uboot の出力が含まれています。デバッグ用の出力文をいくつか追加したことに注意してください。


ファイルの内容に関してご質問があればお知らせください。

Re: i.Mx8mm HABv4 hangs when calling hab_rvt_authenticate_image from arm_smccc_smc

1. csfファイル、genIVT.shファイル、署名済みのブートスクリプト、およびブートスクリプトに署名するための実行コマンドを共有していただけますか?


2. u-bootコマンドラインでSNVSステータスを確認しましたか?署名済みブートスクリプトの認証前後のログを共有してください。
u-boot => md.l 0x30370000 0x40


タグ(1)
評価なし
バージョン履歴
最終更新日:
13 時間前
更新者: