Wie kann ich verhindern, dass jemand über den Bootloader Root-Zugriff erhält?

7

Am 10.10 Ubuntu durch Ersetzen ohne das root - Passwort als root anmelden kann ich ro quiet splashmit rw init=/bin/bash. Wie kann ich meinen Computer sichern und diese Hintertür deaktivieren?

Torayeff
quelle

Antworten:

13

Sie müssen mehrere Dinge sichern, da durch das Offenlassen einer dieser Dinge eine Tür (die eigentlich keine Hintertür ist, da alles gut dokumentiert ist) mit ähnlichen Auswirkungen entsteht. (Ausnahme: Wenn Sie in Schritt 1 die Konsole auch physisch sichern können, müssen Sie nichts weiter tun.)

  1. Sichern Sie den Computer physisch. Sie müssen verhindern, dass Angreifer die Festplatte vom Computer trennen und mit einem anderen Computer verbinden, den sie steuern, und die Firmware-Zugriffssteuerung zurücksetzen.
  2. Schützen Sie den Startvorgang im BIOS des Computers (oder einer anderen Startfirmware) mit einem Kennwort (oder einer anderen Form der Zugriffskontrolle). Stellen Sie sicher, dass die interne Festplatte das einzige ausgewählte Startmedium ist, um zu verhindern, dass Angreifer von einer Live-CD, einem USB-Stick oder einem anderen Medium booten. Sperren Sie natürlich auch den Zugriff auf das BIOS, damit der Angreifer diese Einstellung nicht ändern kann.
  3. Schützen Sie den Bootloader so, dass für das Booten alles andere als die Standardbefehlszeile ein Kennwort erforderlich ist.

In den Schritten 1 und 2 geht es um Ihre Hardware und nicht um das Betriebssystem. Wenn Sie also Probleme damit haben, wenden Sie sich an Super User . Was in Schritt 3 zu tun ist, hängt von Ihrem Bootloader ab (den Sie nicht angegeben haben). Der Standard-Bootloader unter Ubuntu ist Grub 2 .

Generieren Sie zunächst einen Passwort-Hash mit grub-mkpasswd-pbkdf2.

Als nächstes deklarieren Sie einen Benutzer und ein Passwort, indem Sie eine ausführbare Datei (Mod 755 oder 700) mit dem Namen /etc/grub.d/01_users(es ist wichtig, dass die Datei verwendet wird 01) mit folgenden Inhalten erstellen (wo grub.pbkdf2.….DEADBEEFwird grub-mkpasswd-pbkdf2produziert):

#!/bin/sh -e
## Declare users and passwords
cat <<EOF
set superusers="torayeff"
password_pbkdf2 torayeff grub.pbkdf2.sha512.10000.DEADBEEF
EOF

Nur authentifizierte Superuser dürfen Menüeinträge bearbeiten oder eine Befehlszeile eingeben. Andere Benutzer dürfen nur vorbereitete Einträge starten.

Wenn Sie einige Starteinträge auch auf authentifizierte Benutzer beschränken möchten, ersetzen Sie sie menuentry "name"durch menuentry "name" --users "user1 user2"an der Stelle, an der sie generiert wurden. Die Einträge für Ihre Linux - Installation, memtest86 und jedem anderen Betriebssystem Sie auf dieser Maschine haben können , sind in /etc/grub.d/10_linux, /etc/grub.d/20_memtest86+und /etc/grub.d/30_os-proberjeweils.

Wenn Sie Änderungen vorgenommen haben /etc/grub.d, führen Sie diese sudo update-grubvor dem Neustart aus.

Gilles 'SO - hör auf böse zu sein'
quelle