Linux Boot の脆弱性 CVE-2016-4484:セキュア・ブートに存在する抜け穴とは?

Linux Boot Vulnerability Lets Attackers Bypass Secure Boot Protections

2025/07/07 gbhackers — Linux のブート・プロセスに発見された脆弱性が露呈したのは、数多くの最新ディストリビューションにおけるセキュリティ体制に重大な弱点を露呈している。Secure Boot/Full-Disk Encryption/bootloader Password が広く採用されているが、Initial RAM Filesystem (initramfs) デバッグ・シェルを悪用する攻撃者は、一連の防御を回避していく。Insinuator によるレポートが指摘するのは、多くのセキュリティ強化ガイドにおいて、この抜け穴が見落とされている点だ。

攻撃の仕組み

Ubuntu/Fedora/Debian などの Linux ディストロでは、暗号化されたルート・パーティションに対して誤ったパスワードを複数回入力すると、ブート・プロセス中にデバッグ・シェルが起動される可能性があるという。

CVEDescriptionImpactAffected Systems
CVE-2016-4484Cryptsetup/initramfs root shell via password failRoot shell, persistence, DoSUbuntu, Debian, Fedora, RHEL, SLES

このシェルは、Secure Boot が有効化される場合であっても、ブート初期環境においてルート・レベルのアクセスを提供する。通常において initramfs は署名されていないため、短時間で物理的アクセスが可能な攻撃者は、以下の行動を取れる。

  • 間違ったパスワードを繰り返し入力することで、デバッグ・シェルを起動する。
  • ツール/スクリプトを事前に配置した USB ドライブをマウントする。
  • initramfs を解凍/変更/再パックすることで、永続的なマルウェアや悪意のフックを注入する。

それにより、次回再起動される時に、注入したコードが昇格された権限で実行され、従来のブート保護機構を回避する。

この攻撃ベクターはソフトウェアのバグではなく、設計上の見落としによるものである。initramfs は、動的なハードウェアおよびシステム・コンフィグをサポートし、また、デバッグ・シェルを通じてシステムを回復する目的があるため、デフォルトでは署名されていない。

しかし、この “”evil maid” 攻撃おいては、つまり、対象デバイスへの物理的アクセスを攻撃者が可能にするシナリオにおいては、きわめて深刻な脆弱性となり得る。

現実世界への影響

この脆弱性 CVE-2016-4484 は、起動中における一定時間の Enter キーの押下、もしくは、空のパスワード入力により、攻撃者がルートシェルを取得する方法を明らかにするものだ。

この脆弱性は、Ubuntu/Fedora/Debian/Red Hat Enterprise Linux などの、主要ディストリビューションに影響を及ぼす。前述の initramfs 環境におけるルート・アクセスにより、攻撃者は以下の操作を実行できる。

  • ディスクの内容の複写/変更/破壊。
  • 永続的なマルウェアのインストール。
  • デバッグ・シェル上でのネットワーク設定による、データの外部への送信。

ハードウェアおよびカーネルの変更をサポートする initramfs は、対象システム上で生成される。そのため、あらゆるコンフィグレーションに署名することはディストリビュータにとって現実的ではない。

この柔軟性は、システムの復旧にとって有益であるが、署名されない変更の許容により、意図せずに物理的セキュリティを弱体化させる可能性がある。

緩和策
  • カーネル・パラメータの変更:Ubuntu では panic=0、Red Hat 系では rd.shell=0 rd.emergency=halt を追加することで、デバッグ・シェルへのアクセスを防止できる。
    • 変更時に限らず、すべてのブート時に、ブートローダ・パスワードの入力を要求する。
    • SSD におけるネイティブ暗号化を有効化する。
    • LUKS を使用し、ブート・パーティションも暗号化する。
  • Unified Kernel Image (UKI) の採用:カーネルと initramfs を単一の署名付きバイナリに統合する。
  • TPM の活用:起動時に initramfs の整合性を測定する。

initramfs に、デバッグ・シェルが存在するという事実はあまり議論されない。しかし、物理的アクセスが可能な状況においては、実行可能な攻撃ベクターとして成立する。

セキュア・ブートおよびディスク暗号化は依然として重要であるが、防御側は真に堅牢なシステム・セキュリティを実現するために、この見落とされがちな抜け穴にも適切に対処すべきである。