Durch vermehrte Angriffe auf Softwaresysteme gehen Hersteller dahin über, laufende Anwendungen so abzuschotten dass im Schadenfall nur ein begrenzter Speicherbereich betroffen ist. Angreifer können zwar immer noch Apps verwenden, um Zugriff auf das System zu erlangen, jedoch nur in einem fest gesteckten Bereich. Einfache Fehler jedoch machten es in der Vergangenheit möglich, auch aus diesem Sandkasten auszubrechen.
Wie Feng Shui funktioniert
Findige Entwickler haben eine Schwachstelle im Mach-Kernel des Mac gefunden. Durch ein geschicktes Ausnutzen einer Speicherüberfüllung kann so Code in den Speicher gelangen, der dort eigentlich nicht stehen dürfte. Wird dieser zudem noch an die richtige Stelle geschoben, kann der Angreifer direkt auf den Kernel zugreifen.
Die Sicherheitslücke wird XNU port feng shui genannt, und bekommt ihren Namen durch das geschickte Platzieren von Code im Speicherraum (Feng Shui steht für das Platzieren von Objekten im Wohnraum, um einen besseren Energiefluss zu erlangen). Die Entwickler nutzten eine Schwachstelle im Code, die einen sogenannten Adresszeiger verwendet, der keine Speicherlimitierung hat. Somit kann dieser Programmcode in den Speicher des Mac schieben, wo er eigentlich nicht stehen darf.
Dort nämlich, wo nur Kernel Code steht, können Entwickler gezielt geschriebene Programmanweisungen ausführen lassen, um Zugriff auf die tiefsten Innereien von macOS zu bekommen. Von dort lässt sich viel Unheil anrichten, da der Schadcode anschließend volle Root-Rechte hat.
Wie gefährlich ist die Lücke?
Es ist bislang nicht bekannt, ob diese Schwachstelle in Massen ausgenutzt wurde. Allerdings kommt ein so ähnliches Verfahren bereits beim iOS-Jailbreaking zum Tragen und ist ein beliebter Mechanismus in der Sicherheitswelt. Alleine deswegen ist es fraglich, warum Apple solche Fehler unterlaufen.
Apple selbst hat die Lücke mit der Aktualisierung auf macOS 10.12.3 behoben , deshalb raten wir allen Nutzern zum sofortigen Update. Der Programmcode, um den es geht, hat Apple mit macOS Sierra (10.12) eingeführt, er betrifft daher keine Macs mit älteren Betriebssystem-Versionen.
Selbst wenn es sich hier um eine gängige Sicherheitslücke handelt, trivial ist dessen Ausführung nicht. Der Wissenschaftler hat seine Ergebnisse auf einer Webseite veröffentlicht , und erklärt dort (mit Bildern und Codeausschnitten) wie er vorgegangen ist. Wer also Interesse daran hat wie so ein Angriff funktioniert, dem sei der Artikel sehr an’s Herz zu legen.
Jailbreak Code gibt Einblicke
Da Betriebssysteme wie iOS und macOS extrem komplex geworden sind, bauen Erkenntnisse aufeinander auf. So auch in diesem Fall. Die gefundene Schwachstelle war von der Jailbreak-Gemeinschaft inspiriert, die ihren Code auf GitHub veröffentlichen . Diese iOS-Codebeispiele ließen sich anschließend auch in macOS wieder finden.
Organisatorisches Problem?
Spannend ist diese Schwachstelle auch im Hinblick auf Apples Entscheidung, aus macOS- und iOS-Teams eine große Mannschaft zu bilden. Die gleichen Entwickler die iOS Code schreiben werden dies in Zukunft auch für die Mac Sparte machen. Denn tritt ein Fehler unter iOS auf, ist dieser mit größerer Wahrscheinlichkeit auch in macOS zu finden.
Fazit
Wir weisen noch einmal darauf hin, jedes macOS-Sierra-System auf die letzte Version zu aktualisieren, um diese nun publik gemachte Sicherheitslücke nicht im eigenen System zu haben. Amateure oder andere Angreifer können den Schadcode nun studieren, und gezielt einsetzten. Der einzige Schutz bleibt also das System via dem Mac App Store zu aktualisieren (auf Version 10.12.3).