このリポジトリは、shim への署名依頼をレビューするためのものです。レビューを依頼するには:
shim.efi を追加してください"myorg-shim-arch-YYYYMMDD" 形式のタグを付けてくださいaccepted ラベルが追加されたら、承認が完了ですなお、当方は Linux 上での GRUB2 または systemd-boot の使用経験しか実質的にありません。そのため、それ以外のものへの署名を承認してもらうには、それなりの説得力のある説明が必要になります。
2025年10月20日時点で、Microsoft に送られた shim は 2011 年と 2023 年のキーで署名されます。提出した各 shim について、それぞれ異なるキーで署名された 2 つのコピーが返却されます。Microsoft からの最新情報はこちら: https://techcommunity.microsoft.com/blog/hardware-dev-center/signing-with-the-new-2023-microsoft-uefi-certificates-what-submitters-need-to-kn/4455787
新しい署名要件も有効になっており、こちらで確認できます: https://techcommunity.microsoft.com/blog/hardware-dev-center/updated-microsoft-uefi-signing-requirements/1062916 この shim レビューを受けることで、shim がオープンソースのブートローダーにのみ引き渡す限り、年次のセキュリティ監査が免除されることに注意してください。
ヒント: 提出方法と shim の署名取得に関するガイダンスについては、このリポジトリの docs ディレクトリを確認してください。
以下がテンプレートです:
組織名とウェブサイト:
[ここにテキストを記入]
レビューアがあなたの組織が法人であることを簡単に検証でき、悪用を防ぐことができる必要があります。 正当性を確実に証明できる情報を提供してください。
会社/税務登録のエントリ、またはそれに相当するもの:
(該当法域の登録簿における組織エントリへのリンクで構いません)
[ここにテキストを記入]
Microsoft Hardware Dev Center File Signing Services で .cab ファイルの署名に使用される EV 証明書における、あなたの組織と発行者の両方の公開詳細。
(shim バイナリに埋め込まれた CA 証明書ではありません)
例:``` Issuer: O=MyIssuer, Ltd., CN=MyIssuer EV Code Signing CA Subject: C=XX, O=MyCompany, Inc., CN=MyCompany, Inc.
[ここにテキストを入力]
*******************************************************************************
### 対象となる製品またはサービスは何ですか?
*******************************************************************************
[ここにテキストを入力]
*******************************************************************************
### 世界中の誰もが起動できるように、これが本当に署名される必要があるという正当な理由は何ですか?
*******************************************************************************
[ここにテキストを入力]
*******************************************************************************
### すでに署名されている別のディストリビューションのshimを再利用できないのはなぜですか?
*******************************************************************************
[ここにテキストを入力]
*******************************************************************************
### セキュリティ更新などの第一連絡先は誰ですか?
セキュリティ連絡先は、shim が受け入れられる前に検証される必要があります。その後のリクエストでは、セキュリティ連絡先またはその PGP キーが前回の検証成功以降に変更された場合にのみ、連絡先の検証が必要です。
許可されたレビュアーが、各セキュリティ連絡先にランダムな単語を含む PGP 暗号化メールを送信して、連絡先の検証を開始します。
これらのメールの内容を自分の `shim-review` イシューに投稿して、メールアドレスと PGP キーの所有権を証明するよう求められます。
PGP キーを keyserver.ubuntu.com などのよく知られたキーサーバーにアップロードし、および/またはレビューに .asc ファイルとして含めて、ここでそれらを参照してください。
*******************************************************************************
- 名前:
- 役職:
- メールアドレス:
- PGPキーのフィンガープリント:
- ファイル/キーサーバーの場所:
*******************************************************************************
### セキュリティ更新などの第二連絡先は誰ですか?
*******************************************************************************
- 名前:
- 役職:
- メールアドレス:
- PGPキーのフィンガープリント:
- ファイル/キーサーバーの場所:
*******************************************************************************
### これらのバイナリは16.1 shimリリースtarから作成されましたか?
16.1 shim リリース tar ファイルから始めて、自分の shim バイナリを作成してください: https://github.com/rhboot/shim/releases/download/16.1/shim-16.1.tar.bz2
これは https://github.com/rhboot/shim/releases/tag/16.1 に対応し、適切な gnu-efi ソースが含まれています。
tarball が正しいことを確認するには、ダウンロードのチェックサムを検証してください
(SHA256, SHA512) を以下のものと照合してください:```
46319cd228d8f2c06c744241c0f342412329a7c630436fce7f82cf6936b1d603 shim-16.1.tar.bz2
ca5f80e82f3b80b622028f03ef23105c98ee1b6a25f52a59c823080a3202dd4b9962266489296e99f955eb92e36ce13e0b1d57f688350006bba45f2718f159fb shim-16.1.tar.bz2
ビルドプロセスがそのファイルを信頼できる情報源(外部パッチを除く)として使用しており、そのチェックサムが一致することを確認してください。また、PGP 署名を確認することでリリースをさらに検証できます。分離署名 があります。
このリリースはメンテナである Peter Jones によって署名されています。彼のマスターキーのフィンガープリントは B00B48BC731AA8840FED9FB0EED266B70F4FEF10、ここにある署名の署名サブキーのフィンガープリントは 02093E0D19DDE0F7DFFBB53C1FD3F540256A1372 です。参考として、彼の公開鍵のコピーがここに含まれています:
pjones.asc
使用している tarball が正しく本物であることを確認できたら、ここで簡単に yes と回答してください。
公開鍵と署名の検証に関する短いガイドは、docs ディレクトリにあります。
[ここにテキストを入力]
ヒント: 使用しているすべてのパッチと変更をアプリケーションに添付している場合は、ここでアプリケーションの URL を指定できます (https://github.com/YOUR_ORGANIZATION/shim-review)。
コードがホストされている独自の git サーバーを指定することもできます。
[ここに URL を入力]
このアプリケーションの一部として提出した shim バイナリを正確に同じものにするために、ビルドプロセス中に使用したすべての外部パッチとビルドプロセスの変更点を挙げてください。
[ここにテキストを入力]
NX ビットなしでの shim の署名の詳細については、https://techcommunity.microsoft.com/t5/hardware-dev-center/nx-exception-for-shim-community/ba-p/3976522 を参照してください。
[ここにテキストを入力]
GRUB2 を使用していない場合は、この項目はスキップしてください。
[ここにテキストを入力]
GRUB2 を使用していない場合はこの項目をスキップしてください。使用している場合は、これらがすべて存在することを確認し、yes と回答してください。
[ここにテキストを入力]
GRUB2 を使用していない場合は、この項目はスキップしてください。使用している場合、GRUB2 バイナリに次のようなエントリがありますか:
grub,5,Free Software Foundation,grub,GRUB_UPSTREAM_VERSION,https://www.gnu.org/software/grub/?
[ここにテキストを入力]
以前に署名済みの shim がない場合は、その旨をここに記載してください。そうでない場合は、簡単な yes で構いません。
[ここにテキストを入力]
ヒント: upstream カーネルにはこれらがすべて適用されているはずですが、upstream とは別に保守されている独自の大幅な変更を加えた古いカーネルバージョンを提供している場合は、そうでない可能性があります。
古いカーネルを提供している場合は、ソースを再確認してください。すべてのパッチを保有していないかもしれませんが、問題を露呈しない構成を提供している可能性があります。
[ここにテキストを入力]
ヒント: 強制しない場合、あなたの shim に署名する可能性は低いです。
[ここにテキストを入力]
[ここにテキストを入力]
[ここにテキストを入力]
[ここにテキストを入力]
これにより、新しい shim+GRUB2 が、問題のある古い GRUB2 バイナリをチェーンロードできなくなります。
これが最初の申請である場合、または新しい CA 証明書を使用している場合は、その旨をここに記載してください。
[ここにテキストを入力]
レビュアーは常に docker build . を実行して、アプリケーションに添付した正確なバイナリを取得できる必要があります。
ヒント: GCC、binutils、gnu-efi のアップデートにより異なるチェックサムの shim バイナリがビルドされる可能性があるため、ツールチェーンには frozen(固定)パッケージを使用することをお勧めします。
提供された Dockerfile を使用して shim バイナリを再現できない場合、その理由、違い、およびこのビルドを再現するために使用されるビルド環境(OS とツールチェーン)を説明してください。その場合は、このビルド環境をゼロからセットアップする方法の詳細なガイドを記載してください。
[ここにテキストを入力]
これには、buildroot の作成、パッチの適用、ビルドの実行、アーカイブの作成などのログが含まれる必要があります。
[ここにテキストを入力]
例: 新しいカーネルのバリアント、UKI、systemd-boot の署名、新しい証明書、新しい CA など。
shim の署名申請が初めての場合は、この項目はスキップしてください。
[ここにテキストを入力]
[ここにテキストを入力]
鍵の保護に使用されるセキュリティ戦略を説明してください。HSM やスマートカードなどのハードウェアトークンの使用、エアギャップされた保管庫、物理的な金庫から、その他の優れたプラクティスまでさまざまです。
[ここにテキストを入力]
yes または no で構いません。後者でもペナルティはありません。
[ここにテキストを入力]
yes または no で構いません。後者でもペナルティはありません。ただし、yes の場合: その証明書には、CA であることを示す X509v3 Basic Constraints が含まれていますか? これに関する詳細なガイダンスは docs を参照してください。
[ここにテキストを入力]
ヒント: SBAT の歴史と仕組みに関する詳細は、こちら にあります。そのドキュメントは大きいので、いくつかの例だけを見るには SBAT.example.md を参照してください。
Downstream の GRUB2 実装(例: Fedora や Debian のもの)を使用している場合、それらの SBAT エントリが保持されていることを確認し、失効を簡素化するために独自のエントリを追加してください(それらのエントリを置き換えないでください)。
すべてのバイナリのエントリを投稿することを忘れないでください。ブートローダー以外にも、ファームウェアアップデーターなども提供している場合があり、それらにもこれらのエントリがあります。
ヒント: objcopy --dump-section .sbat=/dev/stdout YOUR_EFI_BINARY を実行すると、これらのエントリを取得できます。ここに貼り付けてください。各リストは、表示を良くするために 3 つのバッククォート(```)で囲むことをお勧めします。
[ここにテキストを入力]
GRUB2 を使用していない場合は、この項目はスキップしてください。
ヒント: これは、ファイルシステム上の .mod ファイルではなく、バイナリ自体に含まれるモジュールについてです。
[ここにテキストを入力]
[ここにテキストを入力]
[ここにテキストを入力]
ヒント: ここで最も一般的なケースは、fwupd のようなファームウェアアップデーターです。
[ここにテキストを入力]
GRUB2 または systemd-boot を使用していない場合は、この項目はスキップしてください。
[ここにテキストを入力]
セキュアブートチェーンが高レベルでどのように機能するかを、1〜2 文で要約してください。
[ここにテキストを入力]
[ここにテキストを入力]
[ここにテキストを入力]
レビュープロセスはピアレビューの取り組みであり、自分のアプリケーションをより早くレビューしてもらう最善の方法は、他の人のレビューを手伝うことです。私たちはほとんどの場合、勤務時間中にアプリケーションをレビューする仕事に雇用され報酬を得ているわけではなく、自由時間にこの場で活動するボランティアです。
レビューを待つ合理的な期間は 2〜3 か月に達することがあります。私たちを助けることが、この期間を短縮する最善の方法です。助けが多ければ多いほど、物事はより速く、よりスムーズに進みます。
初心者には、easy to review とラベル付けされたアプリケーションから貢献プロセスを始めることをお勧めします。
[ここにテキストを入力]
[ここにテキストを入力]