Was tun Sie, um die Computer in Ihrem Unternehmen sicherer zu machen? Verwenden Sie beispielsweise FileVault unternehmensweit für die vollständige Festplattenverschlüsselung? Oder haben Sie Recovery Lock konfiguriert, um zu verhindern, dass Benutzer eigenständig in die Recovery-Umgebung gelangen? Gibt es auf allen Computern ein Management Admin-Konto unter der Kontrolle der IT-Verwaltung? Und wird das Passwort dieses Kontos mit LAPS erneuert?
Wenn wir diese Beispiele und ähnliche macOS-Hardening-Funktionen untereinander aufzulisten beginnen, ergibt sich eine lange Liste. Von der Deaktivierung von AirDrop bis hin zur Verwendung von Secure Keyboard Entry im Terminal… Wenn Sie möchten, können Sie eine solche Liste speziell für Ihre Organisation erstellen und die von Ihnen verwalteten Geräte über das von Ihnen verwendete MDM in Einklang bringen.
Anstatt zu versuchen, das Rad neu zu erfinden, können Sie zu diesem Thema universell anerkannte Standards befolgen. Institutionen wie NIST, CIS, DISA und CNSSI veröffentlichen jeweils Sicherheitsstandards für verschiedene Betriebssysteme und Plattformen. Sie können die Standards einer dieser Stellen auswählen, die zu den Sicherheitsrichtlinien Ihres Unternehmens passt, und Ihre Arbeit darauf stützen.
Die Arbeit, die Einhaltung solcher Sicherheitsstandards zu gewährleisten, wird in Unternehmen grundsätzlich von zwei verschiedenen Abteilungen durchgeführt: den Abteilungen Informationssicherheit und Endpoint-Management. Wenn Sie, der Sie diesen Artikel lesen, Geräte beispielsweise mit Mosyle oder Kandji verwalten, ist die Auswahl, welcher Sicherheitsstandard zugrunde gelegt wird, nicht Ihre Aufgabe. Die Festlegung, welche Sicherheitslage angewendet wird, ist eine Aufgabe der Abteilung Informationssicherheit, während das Team, das sich Gedanken darüber macht, wie sie angewendet wird, die Abteilung Endpoint-Management ist.
Wo passt das macOS Security Compliance Project hinein?
Das macOS Security Compliance Project ist ein Open-Source-Projekt, das verschiedene Tools und Richtlinien enthält und in gemeinschaftlicher Arbeit für Systemadministratoren erstellt wurde, die Macs in Übereinstimmung mit den oben genannten Sicherheitsstandards verwalten möchten. In diesem Rahmen können Sie einen Bericht über den Konformitätsstatus der von Ihnen verwalteten Macs gegenüber Sicherheitsstandards wie NIST oder CIS anzeigen und über den von Ihnen verwendeten MDM-Server Konfigurationsprofile verteilen, um die im Bericht angegebenen Lücken zu schließen.
Sie können diese Adresse einsehen, um mehr über die Organisationen zu erfahren, die zum macOS Security Compliance Project beitragen, und über die Details der unterstützten Baselines. Über die GitHub-Seite des Projekts können Sie auch Tahoe Guidance Revision 2.0 ansehen und herunterladen, die zum Zeitpunkt der Erstellung dieses Artikels aktuellste Version. Sie können sie natürlich zum Überprüfen herunterladen, aber unten werde ich Schritt für Schritt erklären, wie man sie herunterlädt und einen Bericht erstellt. Für den Moment müssen Sie sie also nicht von GitHub herunterladen. Aber Sie sollten wissen, dass auch diese Arbeit nicht statisch ist. Sie wird regelmäßig aktualisiert. Daher lohnt es sich, sie zu Ihren Lesezeichen hinzuzufügen und von Zeit zu Zeit zu überprüfen.
Es gibt grob zwei Schritte, die Sie durchlaufen werden, wenn Sie die Konformität eines Mac mit einer gewählten Sicherheitslage gewährleisten: Audit, also Überprüfung, und Remediation, also Verbesserung. Mit dem macOS Security Compliance Project können Sie Folgendes tun:
- Sie können auf einem Mac einen Audit-Bericht basierend auf dem von Ihnen gewählten Sicherheitsstandard erstellen.
- Nach diesem Bericht können Sie Konfigurationsprofile erstellen, die Sie für die Remediation über Ihren MDM-Server an Ihre Geräte verteilen können.
- Im zu erstellenden Bericht können Sie bestimmte Punkte vom durchzuführenden Audit-Test ausschließen und sie separat berichten lassen.
Schritt für Schritt
1. Installieren wir zuerst Python
Sie können mit einem Mac in Ihrer Organisation beginnen. Auf diesem Mac muss Python installiert sein. Wenn Sie möchten, können Sie es manuell von Python.org herunterladen. Oder Sie können es als Komponente der Xcode Command Line Tools installieren lassen. Dazu können Sie einfach das Terminal öffnen und Folgendes eingeben:
python3 --version
Eigentlich wird dieser Befehl verwendet, um die auf Ihrem System installierte Python-Version zu ermitteln. Aber wenn Python nicht installiert ist, wird er Sie zur Installation der Command Line Tools leiten. Nachdem die Installation der Command Line Tools abgeschlossen ist, wird beim erneuten Ausführen des obigen Befehls die installierte Python-Version angezeigt. Anfangs beginnt die Installationszeit mit etwa 36 Stunden, aber keine Sorge — es wird in weniger als einer Stunde heruntergeladen.

2. Laden Sie das macOS Security Compliance Project herunter
Verwenden Sie dann den folgenden Befehl, um das Projekt auf GitHub auf Ihren Computer herunterzuladen:
git clone https://github.com/usnistgov/macos_security.git /var/tmp/mSCP
Dieser Befehl lädt einen Ordner namens mSCP nach /var/tmp herunter und kopiert die für das macOS Security Compliance Project erforderlichen Dateien an diesen Speicherort. Verwenden Sie dann den folgenden Befehl, um in diesem Ordner zu arbeiten:
cd /var/tmp/mSCP
Nachdem Sie den mSCP-Ordner erreicht haben, greifen Sie auf den Inhalt dieses Ordners zu, entweder über den Befehl Go > Go To Folder im Finder oder wie unten dargestellt:
open .
Im Ordnerinhalt sehen Sie Ordner wie „baselines“, „build“, „scripts“. Lassen Sie dieses Fenster vorerst geöffnet.
3. Installieren Sie zusätzliche Python-Komponenten
Ab diesem Punkt müssen einige zusätzliche Python-Komponenten installiert werden. Sie müssen unterschiedlichen Code ausführen, je nachdem, ob Sie auf einem physischen Mac oder auf einer virtuellen Maschine installieren.
Wenn Sie diese Installation beispielsweise auf einem MacBook Pro versuchen, geben Sie bitte Folgendes ein:
pip3 install -r requirements.txt --user
Wenn Sie versuchen, auf einer virtuellen Maschine (wie UTM oder Virtual Buddy) zu installieren, geben Sie bitte der Reihe nach die folgenden Befehle ein:
python3 -m venv .venv
source .venv/bin/activate
pip3 install -r requirements.txt
4. Erstellen Sie den Baseline-Leitfaden
Im soeben geöffneten mSCP-Ordner befindet sich ein Ordner namens „baselines“. Innerhalb dieses Ordners können Sie verschiedene Sicherheitsstandards mit .yaml-Erweiterungen sehen. Wenn Sie möchten, können Sie den Umfang eines beliebigen davon mit TextEdit anzeigen. Sie sind ohnehin auf der GitHub-Seite des Projekts einzeln und übersichtlich verfügbar. Anstatt hier die Umfänge dieser Sicherheitsstandards zu untersuchen, wäre es richtiger, den von Ihrer Organisation zu befolgenden Standard von Ihrem Informationssicherheitsteam zu erfahren und entsprechend zu handeln.
Um einen Baseline-Leitfaden basierend auf dem im baselines-Ordner befindlichen und Ihnen von der Abteilung Informationssicherheit mitgeteilten Sicherheitsstandard zu erstellen, können Sie den folgenden Code verwenden. Wenn Sie auf den Code achten, wird standardmäßig CIS Level 1 verwendet. Wenn Sie möchten, können Sie dies ändern, indem Sie sich an der Benennung der .yaml-Dateien im Baselines-Ordner orientieren, und entsprechend anwenden.
./scripts/generate_guidance.py baselines/cis_lvl1.yaml
5. Überprüfen Sie Ihren Baseline-Leitfaden
Nachdem der Code seine Arbeit beendet hat, können Sie, wenn Sie zum Ordner namens „build“ in Ihrem mSCP-Ordner gehen und nachsehen, feststellen, dass sich darin ein Ordner befindet, der cis_lvl1 enthält. Dieser Ordner enthält eine allgemeine Roadmap für den von Ihnen gewählten Standard. Sie finden den für Sie erstellten CIS Level 1-Baseline-Leitfaden in den Formaten PDF, HTML und AsciiDoc.

6. Erstellen Sie das Audit-Skript
Wenn Sie den oben verwendeten Code erneut ausführen, indem Sie einfach das Suffix -s am Ende hinzufügen, wird im Ordner mSCP/build/cis_lvl1 auch ein .sh-Skript hinzugefügt, das Sie benötigen, um die CIS Level 1-Konformität zu überprüfen. Der zum Erstellen des Skripts erforderliche Code lautet wie folgt:
./scripts/generate_guidance.py baselines/cis_lvl1.yaml -s
7. Führen Sie Ihr Audit-Skript aus
Wenn Sie diesen Code ausführen, werden Sie sehen, dass im Ordner /var/tmp/mSCP/build/cis_lvl1 eine Skriptdatei namens cis_lvl1_compliance.sh erstellt wird. Ich möchte Sie noch einmal auf diesen Punkt hinweisen: Da ich die Beispiele über CIS Level 1 gebe, wird auch der gesamte Code, den Sie hier sehen, entsprechend erstellt. Hätten Sie beispielsweise den Sicherheitsstandard NIST High gewählt, wäre der Name des zu erstellenden Skripts so etwas wie 800-53r5_high_compliance.sh gewesen.
Um das erstellte Skript auszuführen, müssen Sie zunächst mit dem Befehl cd zu dem Ordner gehen, in dem sich das Skript befindet:
cd /var/tmp/mSCP/build/cis_lvl1
Anschließend können Sie das Skript mit dem folgenden Befehl ausführen:
sudo ./cis_lvl1_compliance.sh
Da der Code natürlich mit sudo beginnt, wird er Sie nach Ihrem Admin-Passwort fragen. Geben Sie Ihr Admin-Passwort ein.
8. Willkommen beim macOS Security Compliance Tool

Wenn Sie diesen Bildschirm sehen, geben Sie die Zahl 2 ein und drücken Sie Enter, um einen neuen Audit-Bericht zu erstellen. Das Tool beginnt zu arbeiten. Wenn es fertig ist, hält es an und erfordert, dass Sie erneut Enter drücken. Wenn Sie ein zweites Mal Enter drücken, kehren Sie zum obigen Bildschirm zurück.
Um den erstellten Bericht anzuzeigen, geben Sie diesmal die Zahl 1 ein und drücken Sie Enter. Es wird Ihnen mitteilen, bei wie vielen Punkten Ihr Computer als Ergebnis der angewendeten Tests bestanden und bei wie vielen Punkten er durchgefallen ist. Wie Sie dem untenstehenden Screenshot entnehmen können, erhielt mein Testcomputer bei 26 Punkten eine bestandene Note und fiel bei 70 Punkten durch. Das bedeutet, dass mein Testcomputer eine Konformitätsrate von 27 % aufwies.

An dieser Stelle möchte ich auf ein kleines Detail eingehen. Diese Sicherheitsstandards, die Gegenstand dieses Artikels sind, zu befolgen und Ihre Arbeit darauf zu stützen, ist wirklich wichtig. Aber gleichzeitig müssen Sie im Bewusstsein handeln, dass Sie möglicherweise nicht in jedem Fall eine 100 % bestandene Note erhalten. Beratungsunternehmen, die unabhängige IT-Audit-Dienstleistungen anbieten, wie Accenture und Deloitte, handeln bei der Bewertung der allgemeinen IT-Infrastruktur einer Organisation im Rahmen von COBIT möglicherweise ebenfalls nicht mit der Erwartung eines 100%igen Konformitätsniveaus. Ohne sich ausschließlich auf den Prozentwert zu konzentrieren, ist es wichtig, die Themenüberschriften in Kategorien wie Must Have (Unbedingt erforderlich) und Nice to Have (Wäre schön) zu unterteilen und sich bewusst zu sein, welche Überschriften zwingend angewendet werden müssen.
9. Erstellen Sie Konfigurationsprofile für die Remediation
Um den Audit-Score zu verbessern und die von uns verwalteten Geräte mit dem von uns verwendeten MDM in Einklang zu bringen, müssen wir nacheinander MDM-Konfigurationsprofile erstellen. Dies innerhalb des von Ihnen verwendeten MDM zu tun, kann viel Ihrer Zeit in Anspruch nehmen. Das macOS Security Compliance Tool hilft uns auch hierbei.
Wenn Sie auf dem Terminal-Bildschirm immer noch die Score-Details aus dem obigen Screenshot sehen, geben Sie 4 ein und drücken Sie Enter, um zu beenden.
Geben Sie zunächst Folgendes ein, um den mSCP-Ordner zu erreichen:
cd /var/tmp/mSCP
Geben Sie dann den folgenden Code ein, um Ihre Konfigurationsprofile basierend auf dem von Ihnen gewählten Sicherheitsstandard automatisch zu erstellen:
./scripts/generate_guidance.py baselines/cis_lvl1.yaml -sp
Nachdem der Befehl seine Arbeit abgeschlossen hat, werden Sie, wenn Sie in den Ordner cis_lvl1 im Ordner mSCP/build schauen, feststellen, dass ein neuer Ordner namens mobileconfigs erstellt wurde. Innerhalb dieses Ordners finden Sie alle mit CIS Level 1 kompatiblen Konfigurationsprofile in den Formaten .plist und unsigniertes .mobileconfig.

Sie können diese auf den von Ihnen verwendeten MDM-Server hochladen und mit der Verteilung an Ihre verwalteten Geräte beginnen. Wenn Sie Ihre Benutzer bisher nicht mit strengen Regeln verwaltet haben, möchte ich Sie warnen. Seien Sie auf einen Sturm von Support-Tickets vorbereitet, die über Jira oder ServiceNow eröffnet werden.
10. Letzter Schritt, die Ausnahmeliste
In dem Screenshot, den ich in Schritt 8 geteilt habe, hatte ich geschrieben, dass mein Testcomputer 26 Punkte bestanden und 70 Punkte nicht bestanden hat. Neben Pass (Bestanden) und Fail (Durchgefallen) gibt es auch Exempt, also eine Ausschlussliste. Da es bei dem oben durchgeführten Test keinen ausgeschlossenen Punkt gab, sehen wir, dass daneben null steht.
Wenn Sie bestimmte Themenüberschriften vom Test ausschließen möchten, können Sie dies durch Bearbeiten einer .plist-Datei tun. Innerhalb Ihres build-Ordners befindet sich ein weiterer Ordner namens preferences, und darin befindet sich eine Datei namens org.cis_lvl1.audit.plist. Sie können diese Datei mit TextEdit öffnen und bearbeiten.
Beispielsweise erfordert der Sicherheitsstandard CIS Level 1, dass Gatekeeper konfiguriert ist. Wenn Sie keine Anpassung in den Gatekeeper-Einstellungen vornehmen, wird er im Abschnitt Failed des Audit-Berichts erscheinen. Aber wenn Sie gleichzeitig die untenstehende Zeile in der Datei org.cis_lvl1.audit.plist finden und die Zeile, in der false steht, in true ändern, haben Sie Gatekeeper zur Ausnahmeliste hinzugefügt. Er wird nun nicht mehr im Abschnitt Failed, sondern im Abschnitt Exempt aufgeführt.
TL;DR
Lassen Sie mich eine kurze allgemeine Zusammenfassung geben.
• In Unternehmensumgebungen gibt es bestimmte Standards, um Computer sicher zu machen.
• Um zu überprüfen, ob Ihr Computer in seinem aktuellen Nutzungszustand einem dieser Standards entspricht, wird ein Open-Source-Projekt namens macOS Security Compliance Project verwendet, das Apple zusammen mit verschiedenen Beteiligten erstellt hat.
• Mit den im Rahmen von mSCP bereitgestellten Tools können Sie die Details der gewünschten Sicherheitsstandards als Leitfäden erhalten.
• Ebenfalls im Rahmen von mSCP können Sie einen Bericht über den Zustand Ihres Computers erhalten.
• Wenn Sie einen MDM-Server verwenden, können Sie im Rahmen von mSCP die erforderlichen Konfigurationen erstellen, damit auch die von Ihnen verwalteten Computer den Sicherheitsstandards entsprechen können, und sie über MDM verteilen.
Falls Sie der Meinung sind, dass die deutsche Übersetzung Fehler enthält, schreiben Sie bitte eine E-Mail an melih.sancar@settings.blog
Photo by Philipp Katzenberger on Unsplash

Kommentar verfassen