web-dev-qa-db-ja.com

ウイルスは現代のコンピュータのBIOSを破壊することができますか?

1990年代後半、CIHと呼ばれるコンピュータウイルスが一部のコンピュータに感染し始めました。そのペイロードは、トリガーされると、システム情報を上書きし、コンピューターのBIOSを破壊し、感染したコンピューターを実質的に破壊します。現代のオペレーティングシステム(Windows 10など)に影響を与えるウイルスが現代のコンピューターのBIOSを破壊し、それを本質的に同じ方法で破壊する可能性がありますか、それともウイルスが現代のコンピューターのBIOSにアクセスすることは不可能ですか?

95
user73910

最近のコンピューターにはBIOSがなく、 [〜#〜] uefi [〜#〜] があります。実行中のオペレーティングシステムからのUEFIファームウェアの更新は標準的な手順であるため、オペレーティングシステムで十分な権限で実行されたマルウェアは、同じことを試みる可能性があります。ただし、ほとんどのUEFIは、製造元によってデジタル署名されていない更新を受け入れません。つまり、任意のコードで上書きすることはできません。

ただし、これは次のことを前提としています。

  1. マザーボードの製造元は、秘密鍵を秘密にしておく
  2. uEFIには、任意のコードでの上書きを可能にする、または他の方法で悪用して損傷を与える可能性のある、意図しないセキュリティの脆弱性はありません。

そして、これら2つの仮定は必ずしも成立しません。

漏えいした鍵について:UEFI署名鍵が一般に知られるようになった場合、メディアによる報告とヒステリックなパッチの適用が非常に多くなると考えられます。 ITニュースをフォローすると、多くの警戒心が強い「[ブランド]メインボードをお持ちの場合、今すぐUEFIを更新してください!!! 1111oneone」見出し。しかし、別の可能性は、国家の俳優に密かに漏らされた鍵に署名することです。ですから、あなたの仕事が産業スパイにとって興味深いものであるとしたら、これはあなたにとっても信頼できる脅威かもしれません。

バグについて:UEFIはますます多くの機能を獲得し、隠れたバグの可能性がますます増えています。また、「実際の」オペレーティングシステムを起動した後の内部セキュリティ機能のほとんどが不足しています。

120
Philipp

はい、それは間違いなく可能です。

今日、UEFIが広まるにつれて、それはさらに懸念事項になっています。UEFIは従来のBIOSよりも攻撃範囲がはるかに大きく、UEFIの(潜在的な)欠陥は、物理的なアクセスなしでマシンにアクセスするために利用される可能性があります(- 昨年ブラックハットでエクリプシウムの人々によって実証されたように )。

46
Stephane

実際には、ウイルスはソフトウェアであるため、その他ソフトウェアで実行できるすべてのことを実行できます。

したがって、この質問に対する簡単な方法と、「ウイルスはXを実行できますか?」 「ソフトウェアは現在Xを実行しますか?」

このような質問には、「ウイルスが犬を散歩させることはできますか?」 (犬の散歩ロボットなしではない); 「ウイルスは私にピザを感染させることができますか?」 (はい、残念ながら、これはほとんどのウイルス作成者の主な焦点ではありません)。

BIOS(UEFI)は現在ソフトウェアを使用して更新されていますか?答えは、はい、そうです。私は昨夜、私が再起動したときに更新されました。

そして答えはイエスです。

同じロジックにより、ウイルスはCPU、ハードドライブ、およびプリンターに物理的な損傷を与える可能性があります(これまでも引き起こしてきました)。

ホームオートメーションシステムと無人車両も物理的な損傷の標的となる可能性がありますが、ウイルスがこれを行ったことはありません。

20
Dewi Morgan

はい、それは間違いなく可能です。

以下は、製造元の秘密鍵で不正に署名されたマルウェアOSアップデートの例です。 https://www.theregister.co.uk/2019/03/25/asus_software_update_utility_backdoor/

Kaspersky Labsによると、約100万のAsusラップトップがShadowhammerに感染しており、アップデートは正しく署名されているようです。それがファームウェアを変更したかどうかは明らかではありませんが、確かにそれは可能でした。

12
emrys57

あなたの質問は、リングとオペレーティングシステム上のコードのアクセス許可である、より深い主題を示唆しています。 MS DOSでは、コードは何でも実行できます。コードがすべての0x00をハードドライブに書き込みたい場合は、奇妙な出力をハードウェアの一部に送信したい場合も、ユーザーのコードを停止させるものはありませんでした。最近のOSにはリングの概念があります(これはCPUによって強制されます)。カーネルはリングゼロで実行され、必要に応じて何でも実行できます。一方、ユーザーのコードはできません。これはリング3と呼ばれるもので実行され、独自の小さなメモリが与えられ、そのメモリ内では好きなように実行できますが、ハードウェアと直接通信することはできません。ユーザーのコードがハードウェアと通信しようとすると、カーネルはすぐにプログラムを強制終了します。これは、通常のウイルスがハードウェアと直接通信できないため、ハードウェアを殺す可能性が非常に低いことを意味します。

カーネルがハッキングされた場合、ゲームは基本的に終了します。カーネルは必要なことをすべて実行でき、ハードウェアが不安定になるポイントまでCPUをオーバークロックしたり、ハードドライブをワイプしたり(たとえば、ゼロで埋める)、その他のもっともらしい攻撃など、多くの悪いことが起こります。 。

4
scifi6546

潜在的に。ただし、正規のBIOS更新になりすます必要があるため、実行するのは困難です。その方法はモボによって異なりますが、秘密鍵やハードウェアキー、または他の秘密の漏洩を伴う可能性があります。

3
520

はい。これはハードウェア固有ですが、ユーザーが誤ってマザーボードのファームウェアをOSレベルから破壊した1つの例 https://github.com/systemd/systemd/issues/2402

MSIラップトップのファームウェアのバグにより、efi変数をクリアするとラップトップが使用できなくなりました。これらの変数はOSに公開され、ファイルとしてマウントされているため、OSレベルからすべてのファイルを削除すると、ウイルスがこれらの変数をターゲットにして悪用する可能性のある問題が発生しました。

3
Qwertie

多くの方法があり、それらのいくつかは不安です。たとえば、 Computraceは、オペレーティングシステムだけでなくBIOSもバイパスできる永続的なバックドア のようです。さらに一般的には、 Intel Management Engine がコンピュータを完全に制御しており、悪用される可能性があります。これらはBIOSを変更できますが、必要はありません。 2017年に、セキュリティ研究者はUSB経由でIntel IMEを悪用して未署名のコードを実行する方法を 見つけました

重要なのは、完全に安全なオペレーティングシステムを使用していて、安全でないソフトウェアや悪意のあるソフトウェアをダウンロードしなかったとしても、あなたのセキュリティの脆弱性を悪用することでそれらすべてを迂回するマルウェアの影響を受ける可能性は依然として無視できない可能性があるということですハードウェア(コンピューターの電源がオフになっている場合でも)。

1
user21820

私がここで見たことのないもの:

攻撃者がシステムの製造元によって正しく署名された公式のUEFIファームウェアでさえもインストールする十分な許可を得た場合でも、プロセス中に適切なタイミングでコンピューターの電源を強制的にオフにすることで、コンピューターを起動できない状態にしてしまう可能性があります。

最新のファームウェアの更新コードは通常、停電がファームウェアの破損を引き起こす状態でコンピューターが費やす時間を最小限にしようと試み、一部のファームウェアはそのような場合にアクティブになる回復モードさえ備えています。

ただし、これらのシステムの多くは完全に完全なものではありません。ランダムな電源障害に対する優れた保護を提供しますが、ファームウェアに堅牢な自動回復機能がない場合は、適切なタイミングでの電源オフにより、正常に動作しない可能性があります。

また、メインシステムファームウェアを攻撃する必要がない場合もあります。最近のPCのほとんどすべてのデバイスには何らかのファームウェアがあり、それらの多くはソフトウェアを介して更新できます。これらのデバイスは、多くの場合、安全性が低くなります。彼らは、署名されていないファームウェアを完全に受け入れるか、少なくとも更新プロセス中の悪意のある電源切断に対する耐性を弱める可能性があります。

電源コントローラー、ストレージコントローラー、ストレージデバイス、ビデオデバイス、または入力コントローラーのファームウェアを破棄すると、UEFIを攻撃した場合と同じようにシステムが使用できなくなる可能性があります。

0
Lily Finley