Dauerhafte Deaktivierung voneinander abhängiger Dienste und Dienstabhängigkeiten
Viele CIS-Benchmarks kontrollieren, ob ein bestimmter Dienst „deaktiviert“ ist und/oder „nicht läuft“. Ein wichtiges Beispiel ist die Kontrolle „Stellen Sie sicher, dass CUPS nicht aktiviert ist“ aus dem 'CIS Debian Linux 10 Benchmark'.
Nach dem Korrekturverfahren können Sie versuchen, den Dienst mit dem folgenden Befehl zu deaktivieren:
systemctl --now disable cups.service
Dieser Befehl sollte sofort das beenden Tassen
Dienst und verhindern Sie auch, dass er beim Booten neu gestartet wird. Jedoch Tassen
ist eine nachgelagerte Abhängigkeit des Dienstes Tassen durchsucht
, das nicht deaktiviert ist. Folglich Tassen
kann nach einem Neustart neu gestartet werden. Um solche Abhängigkeiten zu finden, können Sie den folgenden Befehl verwenden:
systemctl --reverse list-dependencies cups.service
Um sicherzustellen, dass deaktivierte Dienste nicht unerwartet neu gestartet werden, können Sie einen Dienst zusätzlich zur Deaktivierung mit dem folgenden Befehl maskieren:
systemctl mask cups.service
Durch das Maskieren eines Dienstes wird er für andere Dienste unsichtbar, wodurch das Problem effektiv gelöst wird.
Find and fix the security risks that pose the biggest threat to your business.
Warum sollten Sie verwenden treffende Säuberung
statt geeignet entfernen
Fast alle CIS-Benchmarks erfordern das Entfernen des einen oder anderen Softwarepakets. Für Debian-basierte Distributionen wird der APT-Paketmanager verwendet, und in älteren CIS-Benchmarks (Debian 8/9, Ubuntu 14.04 oder der CIS Distribution Independent Linux Benchmark) schlägt das Korrekturverfahren vor, ein Paket mit dem folgenden Befehl zu entfernen:
apt remove <package>
Oder
apt-get remove <package>
Neuere CIS-Benchmarks wurden jedoch ersetzt apt-get entfernen
mit treffende Säuberung
.
apt purge <package>
Ein weit verbreitetes Missverständnis ist, dass apt-get entfernen
löscht alle potenziell schädlichen Dateien und bewahrt nur die Konfiguration des Softwarepakets für eine mögliche zukünftige Verwendung auf. Manchmal enthalten nicht die Binärdateien selbst Sicherheitslücken, sondern auch die zusätzlichen Dateien, die mit dem Softwarepaket installiert wurden. Zum Beispiel die NTP-Sicherheitslücke CVE-2016-0727, ist eine Sicherheitslücke im Cronjob, der dem Paket beiliegt. APT-Softwarepakete ermöglichen es dem Paketbetreuer, festzulegen, welche Dateien gelöscht oder aufbewahrt werden sollen, falls das Paket entfernt wird geeignet entfernen
. Daher besteht die einzige Möglichkeit, sicher zu sein, dass alle anfälligen Teile eines APT-Softwarepakets von einem System gelöscht wurden, darin, treffende Säuberung
Befehl.
Wenn Sie ein Paket entfernen mit geeignet entfernen
, es wird immer noch als installiert angezeigt cnspec Abfragen:

Das liegt daran, dass unter der Haube cnspec
überprüft den Paketstatus in /var/lib/dpkg/status
oder /var/lib/dpkg/status.d
.
1. Lass uns benutzen cnspec um zu überprüfen, ob das Paket Vorlink
ist auf unserem Ubuntu 22.04-Testsystem installiert und verwendet cnspec shell local --sudo
.
cnspec> package("prelink").installed == false[failed] package.installed == false expected: == false actual: true
2. Jetzt entfernen wir das Paket mit geeignet entfernen
.
vagrant@vagrant:~$ sudo apt remove prelink
3. Wenn Sie dieselbe Abfrage wie oben ausführen, um den Installationsstatus zu überprüfen, wird angezeigt, dass es immer noch als installiert gilt:
cnspec> package("prelink").installed == false
[failed] package.installed == false
expected: == false
actual: true
Der Paketstatus in /var/lib/dpkg/status
lautet wie folgt:
Package: prelinkStatus: deinstall ok config-filesPriority: optional
4. Jetzt verwenden wir treffende Säuberung
um das zu entfernen Vorlink
Paket komplett:
vagrant@vagrant:~$ sudo apt purge prelink
Jetzt das Paket Vorlink
wurde entfernt von /var/lib/dpkg/status
.
5. Die folgende cnspec-Abfrage bestätigt die erfolgreiche Deinstallation:
cnspec> package("prelink").installed == false
[ok] value: false
Abschließend verwenden Sie immer treffende Säuberung
um Pakete zu entfernen, um eine korrekte Abhärtung Ihrer Debian-basierten Systeme sicherzustellen.