c't-Notfall-Windows 2024

Unser Bausatz erstellt ein vom USB-Stick bootfähiges, transportables Windows zur Schädlingsbekämpfung und Datenrettung. Diese Projektseite ergänzt die Artikel.

In Pocket speichern vorlesen Druckansicht 413 Kommentare lesen
c't-Notfall-Windows 2024
Lesezeit: 9 Min.
Von
  • Peter Siering
Inhaltsverzeichnis
      Der Bausatz für das Notfall-Windows erfordert einen Windows-PC nebst Internetzugang. Er erstellt ein vom USB-Stick bootfähiges, transportables Windows mit allerhand nützlichen Werkzeugen, um Windows-PCs auf Schädlinge zu überprüfen, Daten zu retten und Passwörter zurückzusetzen.

Für c't 2/2024 haben wir das Notfall-Windows erneut überarbeitet. Es verwendet als Basis ein unter Open-Source-Lizenz auf GitHub entwickeltes Projekt: PhoenixPE. Die von uns vereinfachte und etwas abgewandelte Bauanleitung führt PEBakery aus; eine ebenfalls als Open-Source entwickelte Alternative zum altgedienten WinBuilder.

Die nötigen Downloads nebst MD5-Summen zum Überprüfen finden Sie auf dieser Seite weiter unten. Wie Sie den Bausatz und das erzeugte Notfallsystem anwenden, erklären Artikel aus c't 2/2024:

c't-Abonnenten mit Zugriff auf digitale Inhalte können die Artikel hier lesen (alle Artikel aus c't 2/2024):

Das eigene Notfallsystem bauen, Seite 16

Weitere Funktionen im c’t-Notfall-Windows 2024 freilegen, Seite 22

Probleme lösen mit dem Notfall-Windows, Seite 24

Virensuche mit dem Notfall-Windows 2024, Seite 30

Weitere Artikel:

FAQ: c’t-Notfall-Windows 2024 (erscheint in c't 6/2024, digital verfügbar seit 28.2.2024)

Ältere, vertiefende Artikel zeigen weitere Anwendungsfälle auf:

Copy & Save, Windows-Installationen als Klon übertragen oder als Image sichern (aus c't 22/2019, S. 20)

Die Zeit zurückdrehen, Datenrettung mit dem c't-Notfall-Windows (aus c't 22/2019, S. 24), siehe dazu auch Schwerpunkt in c't 21/23 zum Datenretten

Was ist kaputt?, So nutzen Sie das c’t-Notfall-Windows für die Hardware-Diagnose (aus c't 2/2022, S. 24)

Sollten Sie weder in den Artikeln noch hier die nötige Hilfestellung finden, schauen Sie doch im Forum vorbei. Gern können Sie uns auch per E-Mail Fragen stellen. Richten Sie diese bitte an ctnotwin24@ct.de und fügen Sie bei Bauproblemen gleich ein komprimiertes Log bei, das Sie im Unterverzeichnis Logs in Ihrem Bauverzeichnis als 7z-komprimierte Datei finden.

Sie benötigen den Bausatz selbst:

ctnotwin24.zip, md5: aac0df11f98e0f9d3245ebb40416a094

und zusätzlich die Eval-Fassung von Windows 11 Version 22H2:

Windows 11 Version 22H2, x64 (64 Bit), md5: 0f15cde22b9bb1de820a7aac0711182b

Vom Einsatz anderer Versionen von Windows 10 oder 11 raten wir grundsätzlich ab, zum Beispiel solchen, die Sie mit dem Media Creation Tool heruntergeladen haben. Nicht alle enthalten die für das Verarbeiten des Bausatzes notwendige .wim-Datei, sondern ein nicht geeignetes .esd-Format – ein Konvertieren ist zwar möglich, aber arbeitsintensiv. Grob getestet haben wir die folgenden Versionen:

Windows 10, 2004, x64 (64 Bit), md5: 219edcda684fa6de532482780064bd99

Windows 11 Version 23H2, x64 (64 Bit), md5: 7c1f3439f6e3308ec33febaf3ab7cf0d; hier beendet sich der Windows-Explorer gelegentlich

Gegebenenfalls (meist auf frisch eingerichteten PCs oder in VMs) sind auch die Visual C++ Laufzeitbibliotheken von Microsoft notwendig. Hier ist die aktuelle Fassung die passende. Die Architektur muss zu der des Bausystems passen.

PEBakeryLauncher.exe startet üblicherweise ein Browser-Fenster für den Download der .NET Desktop Runtime, wenn die auf dem Bau-PC nicht installiert ist. Es benötigt die 6er-Version, die sich über diesen Link herunterladen lässt – die gleichzeitige Installation mehrerer Versionen ist kein Problem.

Um die md5-Summen der Zip-Datei und ISOs zu überprüfen, genügt der in Windows verfügbare Befehl certutil in einer Eingabeaufforderung (der Name der Datei muss dabei angepasst werden):

certutil -hashfile windows.iso MD5

Die Neuauflage des Bausatzes gründet wie schon die letztjährige Fassung auf der Arbeit der PEBakery- und PhoenixPE-Entwickler. Aus den Supportanfragen zur letzten Version unserer Variante des Notfallsystems haben wir gelernt, dass offenbar die als Basis verwendeten Downloads der Windows-ISO-Dateien mitunter misslingen, also fehlerhaft auf den SSDs unserer Leser landen. Der Bausatz überprüft deshalb die daraus benötigte Install.Wim-Datei vorher und warnt, falls die Prüfsumme abweicht.

Fehlalarmen durch Antivirus-Software begegnet der Bausatz, indem er die kritischen Dateien verzögert entpackt. Die nötigen Ausnahmen für das Bauverzeichnis richtet er für den Windows Defender selbstständig ein. Außerdem überprüft der Bausatz, ob er vollständig entpackt ist – in der Vergangenheit produzierten eher exotische Methoden, Zip-Dateien zu entpacken, gerne Fehler. Diese Prüfungen wirken jeweils beim ersten Start nach dem Entpacken.

Außerdem haben wir den internen Aufwand reduziert, der entsteht, wenn Programme in neuen Versionen erscheinen und die alten nicht mehr als Download erhältlich sind. Solche Updates kann der Bausatz jetzt verarbeiten, ohne dass dafür ein PEBakery-Neustart anfällt. Auch das enthaltene Sortiment an nützlichen Programmen haben wir aktualisiert und etwas erweitert.

Für das Fernsteuern haben wir das als Open Source entwickelte Rustdesk integriert. Das schon immer an Bord befindliche AnyDesk hatte uns Kopfzerbrechen bereitet: Irgendwann stellte es wie aus dem Nichts die Zusammenarbeit ein. Im PhoenixPE-Ticket 59 auf GitHub wurde das Phänomen jetzt aufgeklärt: Windows PE, auf dem das Notfall-Windows aufbaut, kennt keine Sommerzeit – das bringt AnyDesks Zertifikatshandling durcheinander.

Programme, um bei Bedarf auf die Sommerzeiteinstellung in PE einzuwirken (tzutil und w32tm), bringt das neue Notfallsystem mit. Ob Anydesk nach einer Korrektur damit funktioniert, werden wir probieren, wenn es wieder so weit ist und berichten – während der Winterzeit lässt sich das nicht testen. Eine generelle Anpassung des PE-Systems wurde bisher verworfen, weil das die CMOS-Uhr unerwünscht verstellen könnte.

Neu an Bord sind auch Treiber für das Linux-eigene Btrfs-Dateisystem. Da die beim Systemstart mit starten und alle sichtbaren Btrfs-Partitionen einbinden, müssen Sie den Treiber bei Bedarf beim Bauen aktivieren – auf eigenes Risiko per Option im ExtraDrivers.script (siehe dazu den Haupttext des Artikels). Wer sich in einer Unix-Shell heimischer fühlt, findet auch eine BusyBox-Bash im Startmenü.

Für die Datenrettung haben wir außerdem die GNU-Version von ddrescue hinzugefügt. Es lässt sich in BusyBox oder auch in einer Eingabeaufforderung verwenden. Vorerst deaktiviert haben wir eine Funktion, um im laufenden Notfallsystem den Nutzer vom System-Konto auf ein Administrator-Konto umzuschalten: Wenn Sie die einschalten und ausprobieren sollten, werden Sie feststellen, dass Programme unter dem Administrator-Konto nicht vollständig funktionieren, etwa Autoruns.

Dauerthema bei Bausätzen für ein Windows-PE-basiertes Notfallsystem sind Fehlalarme von Antivirus-Software beim Entpacken der Zip-Archive, beim Bauen oder auch im Betrieb, wenn ein Scanner das laufende System untersucht. Wir prüfen die Bausätze des Notfall-Windows deshalb vor Veröffentlichung und haben die Ergebnisse und Methoden erstmals 2017 in einem eigenen Artikel zusammengefasst.

Der aktuellen Ausgabe des c't-Notfall-Windows sind wir ebenfalls wieder zu Leibe gerückt und dabei auf die in der folgenden Tabelle genannten Programme gestoßen, die den einen oder anderen Virenscanner auf den Plan rufen. Die Tabelle dokumentiert nur Dateien, die mehr als zwei Scanner haben Alarm schlagen lassen. Nach bestem Wissen und Gewissen handelt es sich dabei um Fehlalarme, die meist durch heuristische Verfahren ausgelöst werden – wirkliche Malware verwendet ähnliche Verfahren oder Techniken.

Programmname Funktionsbeschreibung
7zG.exe Teil von 7zip und BusyBox; die BusyBox-Datei erzeugt diesen Fehlalarm, liegt nur im Baubereich und wird nicht ins Notfallsystem eingebunden
7zst.exe siehe 7zG
AimRamdrive.exe Hilfsskript zum Erstellen eines RAM-Drive per Arsenal Image Mounter; Fehlalarm, der typisch für AutoIt-Skripte ist
AutoIt3.exe beliebte Skripting-Engine, die leider auch Malware-Autoren nutzen; liegt nur im Baubereich und wird nicht ins Notfallsystem eingebunden
BcastEnvChg.exe sorgt beim Start dafür, dass sich Netzwerkkonfigurationsänderungen herumsprechen
binmay.exe sucht und ersetzt auch in Binärdateien; in Standardeinstellungen nicht aufgerufen
chkdsk.exe chkdsk-GUI mit üblichen Fehlalarmen wegen gepackter EXE-Datei und AutoIt-Verwandtschaft
ClassicIE_64.exe Teil von OpenShell, die für das Startmenü im Notfall-Windows 2024 zuständig ist; liegt nur im Baubereich und wird nicht ins Notfallsystem eingebunden
drvinstpatch.exe modifiziert Verhalten von Windows PE bei Treiberinstallation
GetBinaryResource.exe extrahiert aus Ressourcen einer EXE- enthaltene Binärdaten (nur benutzt, wenn ProcMon oder DebugView aktiviert werden)
GetStringResource.exe extrahiert aus Ressourcen einer EXE enthaltene Texte (in einigen Skripten genutzt, um Sprachanpassungen vorzunehmen)
gwt.exe lädt selektiv Dateien aus dem ADK/WAIK herunter
hiderun.exe verbirgt Programmausgaben, macht den Startschirm schöner
hiveunload.exe blendet beim Bauen zeitweise geladene Registry-Strukturen wieder aus
imageconvert.exe hilft in PhoenixPE beim Konvertieren des Formats von Bilddateien
imdiskstart.exe Hilfsskript zum Erstellen eines RAM-Drive mit ImDisk; Fehlalarm, der typisch für AutoIt-Skripte ist
jj.exe komprimiert JSON; bisher nur in den Makros von PhoenixPE erwähnt
keyfinder.exe liest Installationsschlüssel aus
letterswap.exe ändert Laufwerksbuchstabenzuordnung im Notfallsystem
mailpv.exe bringt Mail-Passwörter zum Vorschein
OpenShellSetup_4_4_191.exe führt theoretisch die Installation von OpenShell aus; im Kontext des Bausatzes läuft die Installation selbst aber nie, sondern die Dateien werden aus der EXE-Datei gepflückt
OskTray.exe zeigt ein Symbol im Tray-Bereich, um die Bildschirmtastatur zu aktivieren; Fehlalarm, der typisch für gepackte Binärdateien ist
pecmd.exe steuert beim Starten des Notfallsystem startende Programme, skriptartige Funktionsweise
pinutil.exe legt in Startmenü & Co. Verweise auf Programme an
RegFind.exe sucht und ersetzt Inhalte in der Registry während des Bauens
rustdesk.exe Software, die Fernhilfe wie TeamViewer und AnyDesk erlaubt; wie die genannten Produkte auch bedienen sich Scammer gern solcher Programme und sie gerät in falschen Verdacht
StartMenu.exe zum Zeitpunkt der Untersuchung befanden drei Scanner diese Komponente von OpenShell als Malware; einen Tag später nur noch ein Programm; wir belassen es hier, falls die Anzahl der Fehlalarme schwanken sollte
Uninstall.exe siehe Hinweise zu 7zG.exe
UxPatch-x64.exe manipuliert einige Theme-DLLs beim Bauen des Notfallsystems; einige eher exotische Scanner halten das Programm für Malware
WizTree.exe analysiert die Belegung von Datenträgern, Programmdatei ist vom Autor signiert; trotzdem Fehlalarme bei einigen exotischen Scannern
WLU_x64.exe Windows Login Unlocker entsperrt per Microsoft-Konto geschützte Windows-Konten; solche Eingriffe alarmieren zumeist viele Scanner, auch in diesem Fall
xml.exe bearbeitet XML; bisher nur in den Makros von PhoenixPE erwähnt

Das folgende Log im HTML-Format ist beim Bauen auf einem PC mit Windows 11 Version 23H2 als Betriebssystem entstanden. Als vom Bausatz verarbeitete Eval-Fassung haben wir die gleiche Version von Windows 11 verwendet.

Haben Sie bitte etwas Geduld beim Rendern im Browser die Datei ist einige MByte groß:

Erfolgreicher Baulauf auf Windows 11 23H2 mit 23H2-Eval-ISO als Basis

Die Liste ist in umgekehrt chronologischer Reihenfolge (neuestes Update zuerst):

Am 18.1. abends korrigiert Update 3 die folgenden Probleme, die einen erfolgreichen Baulauf verhinderten (in autorunf.inf als 1.0.4.0):

  • Neue Download-Adresse für einige Intel-Treiber in ExtraDrivers (Download war nicht mehr verfügbar)
  • Einbau von Busybox in das Notfallsystem (fehlende cygwin1.dll)

Am 15.1. abends kommen mit Update 2 folgende Änderungen:

  • Die Dateien unvollständiger Downloads werden direkt gelöscht, sodass es nicht mehr nötig sein sollte, Dateien wegzuräumen; der Preis: evtl. Fehlerhinweise, die teilweise in den Dateien landeten, gehen damit verloren.
  • Der Bausatz erkennt jetzt, wenn er keine Powershell aufrufen kann, warnt und beendet sich (ohne Powershell läuft er nicht); in der Regel genügt es dann, die Windows PATH-Einstellung zu reparieren.
  • Updates hinterlassen jetzt eine Signatur in der autorun.inf-Datei der ISO-Datei/des USB-Sticks (mit Update 2 1.0.3.0).

Am 11.1. abends korrigiert Update 1 die optionale Btrfs-Integration (ps)