macOS Ventura und Malware-Schutz: So laufen die App-Überprüfungen ab
Gatekeeper und XProtect sind zwei wichtige Komponenten des Sicherheitssystems, welches Apple in macOS integriert hat. Das kalifornische Unternehmen will damit die Nutzer der hauseigenen Notebooks und Desktops vor Malware schützen. Zu den wesentlichen Aufgaben der beiden Tools gehört die Überprüfung von Apps auf korrekte und gültige Entwicklersignaturen. Zudem checken sie, ob eine Anwendung von Apple notarisiert, also beglaubigt wurde. Programme werden hierfür seit macOS Ventura nicht nur beim ersten Start nach dem Herunterladen etwa von einer Webseite einem entsprechenden Sicherheits-Check unterzogen, sondern bei jedem Aufruf. Die Intensität der Überprüfung kann dabei allerdings variieren.
Apps werden bei jedem Aufruf überprüftEinen vollständigen Check führt macOS immer dann aus, wenn das Quarantäne-Flag noch gesetzt ist. Hat eine App diesen Test bestanden, wird sie freigegeben und das entsprechende Attribut geändert. Das heißt aber nicht, dass die Anwendung künftig stets ohne jegliche Überprüfung gestartet wird, Gatekeeper und andere Sicherheitstools werden auch anschließend noch aktiv und analysieren das Programm bei jedem Aufruf erneut. Dabei laufen nacheinander verschiedene Prozesse ab. Welche das sind und wie sich die Checks in den Protokollen von macOS Ventura darstellen, hat jetzt
Howard Oakley im Detail untersucht. Hierzu führte er die von ihm entwickelte und von Apple notarisierte App Cormorant in einer frisch aufgesetzten virtuellen Maschine aus.
Gatekeeper und XProtect führen Code-Scans durchBeim ersten Aufruf der beglaubigten Anwendung werden zunächst die LaunchServices von macOS aktiv und bereiten die App auf den Start vor. Anschließend schaltet sich Apple Mobile File Integrity (AMFI) ein und leitet erforderlichenfalls die Sicherheitsüberprüfung durch den Aufruf von Gatekeeper ein. Der Torwächter von macOS führt sodann einen Code-Scan des App-Bundles durch und ermittelt dabei unter anderem, ob ein Entwickler-Zertifikat vorhanden ist. Zusätzlich wird XProtect aufgerufen, welches die App auf bekannte Signaturen von Schadsoftware untersucht. Dieser Schritt erfolgt in macOS Ventura bei jedem Start einer Anwendung, Apples Betriebssystem verfügt folglich über einen permanent aktiven Malware-Scanner.
Online-Check von Notarisierung und Entwickler-ZertifikatIm nächsten Schritt überprüft macOS das von Apple ausgestellte „Notarization Ticket“. Bestandteil dieses Prozesses ist ein Check der kryptografischen Hashes, welche im Erfolgsfall zugleich die Integrität des App-Bundles bescheinigen. Für diesen Vorgang ist eine Internetverbindung vonnöten, da CloudKit zum Einsatz kommt. Gleiches gilt für den letzten Prozess im Rahmen der Sicherheitsüberprüfung: Mithilfe von OCSP (Online Certificate Status Protocol) wird das Zertifikat überprüft, mit dem der Code der App signiert ist. Allerdings hält macOS einmal durchgeführte Validierungen in einem speziellen Cache vor, sodass die entsprechenden Server nicht bei jedem Aufruf einer App kontaktiert werden müssen.
Sicherheitsüberprüfung dauert eine halbe SekundeOakley zufolge nimmt die gesamte Überprüfung beim ersten Start der App rund eine halbe Sekunde in Anspruch. Bei weiteren Aufrufen kann sich die Zeit verringern, da der erfolgreiche Check in die Sicherheitsdatenbank von macOS eingetragen wird. Das Betriebssystem überspringt in diesem Fall einige der beschriebenen Prozesse, ohne dass der Malware-Schutz von macOS darunter leidet.