Kann ein Virus das BIOS eines modernen Computers zerstören?

In den späten 1990er Jahren begann ein Computervirus namens CIH, einige Computer zu infizieren. Wenn die Nutzlast ausgelöst wird, werden die Systeminformationen überschrieben und das BIOS des Computers zerstört, wodurch im Wesentlichen der infizierte Computer blockiert wird. Könnte ein Virus, der moderne Betriebssysteme (wie Windows 10) betrifft, das BIOS eines modernen Computers zerstören und es im Wesentlichen gleich blockieren oder ist es jetzt unmöglich, dass ein Virus auf das BIOS eines modernen Computers zugreift?

Kommentare

  • Ja, aber aus der Perspektive eines Angreifers Es ist eine Verschwendung oder Ressourcen … Weitere Informationen zu einem Rootkit für UEFI als Beispiel im folgenden Artikel … welivesecurity.com/wp-content/uploads/2018/ 09 / ESET-LoJax.pdf
  • Kommentare sind nicht für eine ausführliche Diskussion gedacht. Diese Konversation wurde in den Chat verschoben .
  • Einige (oder die meisten?) Desktop-Motherboards verfügen über ein ROM, mit dem das BIOS aus einer bestimmten Form wiederhergestellt werden kann von Medien (früher Disketten, heutzutage USB-Sticks, vielleicht CD-ROM). Das ROM kann ‚ nicht geändert werden. Die Wiederherstellung erfordert jedoch normalerweise das Öffnen des Gehäuses und das Verschieben eines Jumpers, um in den BIOS-Wiederherstellungsmodus zu starten. Ich weiß nicht ‚, wie Laptops damit umgehen.
  • Verwandte Themen: security.stackexchange.com/q / 13105/165253

Antwort

Moderne Computer haben kein BIOS, sie haben a UEFI . Das Aktualisieren der UEFI-Firmware vom laufenden Betriebssystem ist ein Standardverfahren, sodass jede Malware, die es schafft, auf dem Betriebssystem mit ausreichenden Berechtigungen ausgeführt zu werden, dies versuchen kann Um dies zu tun, akzeptieren die meisten UEFIs jedoch keine Aktualisierung, die nicht vom Hersteller digital signiert ist. Das heißt, es sollte nicht möglich sein, es mit beliebigem Code zu überschreiben.

Dies setzt jedoch voraus, dass:

  1. die Mainboard-Hersteller es schaffen, ihre privaten Schlüssel geheim zu halten Das UEFI weist keine unbeabsichtigten Sicherheitslücken auf, die das Überschreiben mit beliebigem Code ermöglichen oder auf andere Weise ausgenutzt werden können, um Schaden zu verursachen.

Und diese beiden Annahmen gelten nicht unbedingt

In Bezug auf durchgesickerte Schlüssel: Wenn ein UEFI-Signaturschlüssel der Öffentlichkeit bekannt wird, können Sie davon ausgehen, dass eine Menge Medienberichte und hysterische Patches stattfinden. Wenn Sie einigen folgen IT-Nachrichten, Sie würden wahrscheinlich eine Menge alarmierender „Wenn Sie ein [Marken-] Mainboard haben, aktualisieren Sie Ihr UEFI JETZT !!! 1111oneone“ Schlagzeilen. Aber eine andere Möglichkeit ist das Signieren von Schlüsseln, die heimlich an staatliche Akteure weitergegeben werden. Wenn Ihre Arbeit für Industriespionage interessant sein könnte, könnte dies auch eine glaubwürdige Bedrohung für Sie sein.

In Bezug auf Fehler: UEFIs gewinnen Immer mehr Funktionen, die immer mehr Möglichkeiten für versteckte Fehler bieten. Ihnen fehlen auch die meisten internen Sicherheitsfunktionen, die Sie nach dem Booten eines „echten“ Betriebssystems haben.

Kommentare

Antwort

Ja, das ist definitiv möglich.

Heutzutage, da UEFI weit verbreitet ist, ist es noch besorgniserregender: UEFI hat eine viel größere Angriffsfläche als herkömmliches BIOS, und ein (potenzieller) Fehler in UEFI könnte wirksam eingesetzt werden, um Zugriff auf die Maschine zu erhalten, ohne dies zu tun jede Art von physischem Zugang (, wie die Menschen in Eclypsium letztes Jahr bei Black Hat gezeigt haben ).

Antwort

In der Praxis ist ein Virus Software, kann also alles tun, was jede andere Software kann.

Also auf einfache Weise Antwort auf diese Frage und alle anderen der Klasse „Können Viren X machen?“ ist zu fragen „Macht Software derzeit X?“

Zu diesen Fragen könnte gehören: „Kann ein Virus meinen Hund laufen lassen?“ (nicht ohne einen Hundegehroboter); „Kann mir ein Virus Pizza bringen?“ (Ja, dies ist jedoch leider nicht das Hauptaugenmerk der meisten Virenautoren.)

Werden BIOS (UEFI) derzeit mithilfe von Software aktualisiert? Die Antwort lautet: Ja, das sind sie. Meins wurde letzte Nacht aktualisiert, als ich neu gestartet habe.

Die Antwort lautet also Ja.

Nach der gleichen Logik können Viren auch physische Schäden an Ihrer CPU, Ihren Festplatten und Druckern verursachen (und diese in der Vergangenheit verursacht haben).

Hausautomationssysteme und fahrerlose Fahrzeuge sind ebenfalls mögliche Ziele für physische Schäden, aber ich kenne keine Viren, die dies getan haben.

Kommentare

  • Ich würde ‚ nicht viel dagegen haben, wenn meine persönlichen Daten von Malware-Entwicklern verwendet würden, um mir kostenlose Pizza und sonst nichts zu bestellen. (+1 für nützliche Überlegungen)
  • @Marc.2377, es würde mir nicht viel ausmachen, wenn Ihre persönlichen Daten verwendet würden, um mir kostenlose Pizza zu bestellen… 🙂
  • Moderne Viren werden es sehr schwer haben Zeit, die körperlichen Schaden verursacht. Sie könnten höchstens die Hardware etwas zermürben, indem sie die CPU sehr heiß laufen lassen, was die Lebensdauer verkürzt, aber ‚ ist nicht üblich, dass sie Schaden verursachen kann . In der Vergangenheit war dies jedoch nicht ‚. Siehe “ den Todesstoß „.
  • @forest Aren ‚ Teilen Sie die heutzutage von Lüftern und Kühlsystemen gesteuerte Software? Ich ‚ bin mir nicht sicher, aber ich wette, Sie könnten den CPU- oder GPU-Lüfter irgendwie von der Software verschmutzen. Russland hat Generatoren aus der Ferne zerstört, indem es sie mit einer Resonanzfrequenz ein- und ausgeschaltet hat – ich wette, es gibt ähnliche Tricks, die Ihren Monitor ziemlich schnell töten könnten. Plattenfestplatten können definitiv durch wiederholtes Auf- und Abdrehen zerstört werden. Solid-State-Laufwerke sind anfällig für wiederholte Lese- / Schreibzyklen. Ich wette, es gibt eine Menge, die ein motivierter Hacker tun könnte.
  • Ich denke, wir ‚ müssten den Umfang von “ physischen Schaden verursachen “ bevor wir entschieden haben, ob es möglich / plausibel ist. Wenn Sie die Definition darauf beschränken, den Computer, auf dem der Code ausgeführt wird, buchstäblich zu beschädigen, ist ‚ ziemlich eng und ich denke, @forest ist richtig. Wenn Sie physischen Schaden allgemeiner einbeziehen, ist es ‚ viel einfacher, sich Szenarien vorzustellen, in denen ein infizierter Computer ‚ etwas steuert Andernfalls (Kraftwerk, Ampel, Nahverkehrssystem, Wasseraufbereitungsanlage usw.) kann es leicht zu schweren physischen Schäden kommen.

Antwort

Ja, das ist definitiv möglich.

Hier ist ein Beispiel für ein Malware-Betriebssystem-Update, das betrügerisch mit dem privaten Schlüssel des Herstellers signiert wurde: https://www.theregister.co.uk/2019/03/25/asus_software_update_utility_backdoor/

Laut Kaspersky Labs wurden etwa eine Million Asus-Laptops mit Shadowhammer infiziert. mit einem Update, das korrekt signiert zu sein schien. Es ist nicht klar, ob dies die Firmware geändert hat, aber es hätte sicherlich funktionieren können.

Antwort

Ihre Frage deutet auf ein tieferes Thema hin, nämlich das Klingeln und die Berechtigung von Code auf einem Betriebssystem. Unter MS DOS kann der Code tun, was er will. Wenn der Code alle 0x00 auf eine Festplatte schreiben wollte, konnte er, wenn er seltsame Ausgaben an eine Hardware senden wollte, auch den Code des Benutzers nicht aufhalten. Auf einem modernen Betriebssystem gibt es ein Konzept von Ringen (dies wird von der CPU erzwungen). Der Kernel läuft auf Ring Null und kann tun, was er will. Der Code des Benutzers hingegen kann nicht. Er läuft auf Ring 3 und erhält seinen eigenen kleinen Speicherplatz. Innerhalb dieses Speichers kann er tun, was er will, aber er kann nicht direkt mit der Hardware kommunizieren . Wenn der Code des Benutzers versucht, mit Hardware zu kommunizieren, beendet der Kernel das Programm sofort. Dies bedeutet, dass es höchst unwahrscheinlich ist, dass ein normaler Virus Hardware töten kann, da er nicht direkt mit ihm kommunizieren kann.

If Der Kernel wird gehackt, dann ist das Spiel im Grunde genommen vorbei. Der Kernel kann tun, was er will, und eine ganze Reihe von schlechten Dingen können passieren, z. B. das Übertakten der CPU bis zu einem Punkt, an dem die Hardware instabil ist, das Löschen der Festplatten (Füllen der mit Nullen zum Beispiel) oder so ziemlich jeder andere plausible Angriff.

Kommentare

  • “ Wenn der Code des Benutzers ‚ versucht, mit der Hardware zu kommunizieren, beendet der Kernel sofort das Programm “ – Wirklich? Geben Sie ein Zitat dafür an? Ich dachte, die geschützte Anweisung würde einfach fehlschlagen und es ‚ liegt am Programm, dies vernünftig zu behandeln oder abzustürzen.
  • @Marc .2377 Es ist richtig. Wenn der Benutzer ‚ Der Code versucht, eine Anweisung in CPL3 auszuführen, für die CPL0-Berechtigungen erforderlich sind. Er löst #GP(0) aus (allgemeiner Schutzfehler oder GPF). Dadurch springt der Code in den Kernel, um zu sehen, welcher Signalhandler für dieses Ereignis eingerichtet wurde. Standardmäßig beendet der Kernel den Prozess, obwohl es ‚ technisch möglich ist, dass der Prozess einen Signalhandler für SIGSEGV einrichtet. In diesem Fall setzt der Kernel die Ausführung des Prozesses um fort die Position des Signalhandlers. ‚ ist im Allgemeinen jedoch keine gute Idee, da ein Prozess gemäß POSIX als …
  • … undefiniert angesehen wird, wenn die Ausführung fortgesetzt wird Nachdem ein SIGSEGV ausgelöst wurde, der nicht ‚ von raise() stammt. Die Ausführung wird bei der fehlgeschlagenen Anweisung fortgesetzt, die nur erneut ausgeführt wird und den Prozess blockiert, wenn das Signal ignoriert wird.Es kann also dem Programm überlassen sein, damit umzugehen, wenn ein Signalhandler für SIGSEGV eingerichtet wird, aber dort ‚ Es gibt so gut wie nie eine Situation, in der dies geschehen würde (obwohl ich denke, dass der Dolphin-Emulator Segfaults für eine Art Hacky-Optimierung abfängt, sodass ‚ kein seltsames Paging-Verhalten emulieren muss und kann sich auf die MMU verlassen).
  • Siehe this für ein (seltenes) Beispiel, wann es ist bis zum Programm. Oder lesen Sie einfach PoC || GTFO 6: 3.

Antwort

Potenziell. Dies wäre jedoch schwierig, da es sich höchstwahrscheinlich irgendwann als legitimes BIOS-Update tarnen müsste. Die Methode dazu ändert sich abhängig von Ihrem Mobo, aber es besteht die Möglichkeit, dass private oder Hardware-Schlüssel oder andere Geheimnisse verloren gehen.

Antwort

Ja. Es ist hardwarespezifisch, aber hier ist ein Fall, in dem ein Benutzer versehentlich seine Motherboard-Firmware von der Betriebssystemebene https://github.com/systemd/systemd/issues/2402 bricht

Ein Fehler in der Firmware eines MSI-Laptops führte dazu, dass das Löschen der EFI-Variablen dazu führte, dass der Laptop unbrauchbar wurde. Da diese Variablen für das Betriebssystem verfügbar gemacht und als Datei bereitgestellt wurden, wurde jede Datei von der Betriebssystemebene gelöscht hat das Problem verursacht, das von einem Virus ausgenutzt werden könnte, um gezielt auf diese Variablen abzuzielen.

Antwort

Es gibt viele und einige Möglichkeiten von ihnen sind beunruhigend. Zum Beispiel scheint Computrace eine permanente Hintertür zu sein , die nicht nur das Betriebssystem, sondern sogar das BIOS umgehen kann. Und allgemeiner das Die Intel Management Engine hat die volle Kontrolle über Ihren Computer und kann plausibel ausgenutzt werden. Diese können Ihr BIOS ändern, müssen es aber nicht. Nur im Jahr 2017 haben Sicherheitsforscher herausgefunden, o ut wie man den Intel IME über USB ausnutzt, um nicht signierten Code auszuführen .

Der Punkt ist, dass selbst wenn Sie ein vollständig sicheres Betriebssystem haben Wenn Sie niemals unsichere oder schädliche Software herunterladen, besteht immer noch die nicht zu vernachlässigende Möglichkeit, dass Sie von einer Malware betroffen sind, die all dies umgeht, indem sie eine Sicherheitslücke in Ihrer Hardware ausnutzt (selbst wenn Ihr Computer angeblich ausgeschaltet ist).

Antwort

Etwas, das ich hier gesehen habe:

Wenn der Angreifer eine ausreichende Erlaubnis erhält, auch nur einen Beamten zu installieren Die vom Systemhersteller korrekt signierte UEFI-Firmware kann den Computer möglicherweise immer noch in einem nicht bootfähigen Zustand belassen, indem der Computer zu einem geeigneten Zeitpunkt während des Vorgangs zwangsweise ausgeschaltet wird.

Der Aktualisierungscode in modernen Firmwares In der Regel wird versucht, die Zeit zu minimieren, die der Computer in einem Zustand verbringt, in dem ein Stromausfall zu einer Beschädigung der Firmware führt Einige Firmwares verfügen sogar über einen Wiederherstellungsmodus, der in einem solchen Fall aktiviert wird.

Viele dieser Systeme sind jedoch nicht vollständig kugelsicher. Obwohl sie einen guten Schutz vor zufälligen Stromausfällen bieten, kann ein zeitlich gut abgestimmtes Ausschalten sie dennoch zum Erliegen bringen, wenn die Firmware nicht über eine robuste automatische Wiederherstellungsfunktion verfügt.

Außerdem muss das Gerät möglicherweise nicht einmal angegriffen werden Firmware des Hauptsystems. Nahezu jedes Gerät in einem modernen PC verfügt über eine Firmware, von der viele über Software aktualisiert werden können. Diese Geräte sind häufig auch weniger sicher. Sie akzeptieren möglicherweise nicht signierte Firmwares vollständig oder sind zumindest weniger belastbar gegen böswilliges Ausschalten während des Aktualisierungsvorgangs.

Wenn Sie die Firmware auf dem Leistungscontroller, Speichercontroller, Speichergerät, Videogerät oder Eingabecontroller zerstören, ist das System möglicherweise genauso unbrauchbar wie zuvor hat die UEFI angegriffen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.