Root-Schwachstelle in High Sierra: Wie kann überprüft werden, ob sich jemand aus der Ferne angemeldet hat?

Wo finde ich in macOS High Sierra die IP-Adressen, die sich über die Bildschirmfreigabe oder ssh bei meinem Mac angemeldet haben?

Das wäre angesichts der kürzlich entdeckten Root-Login-Schwachstelle nützlich.

Antworten (3)

Wie @Melvin betont, wurde gerade ein Patch veröffentlicht. Aber auf die vorliegende Frage ist die einfache Antwort nein , sie waren auf Ihrem Computer root. Es ist kompromittiert, Punkt, per Definition können Sie nichts darauf vertrauen, wenn Sie vermuten, dass es kompromittiert wurde.

Um weiter darauf einzugehen, wenn jemand aus der Ferne Root-Zugriff auf Ihren Computer erhalten würde, könnten Sie niemals die Spuren davon sehen, wenn er weiß, was er tut, und seine Spuren löschen kann.

Das war nicht "jemand hat den Schlüssel zum Büro des Chefs bekommen und ein bisschen herumgespielt", das ist "jemand hat den Hauptschlüssel, unbegrenzte Mittel und eine unbegrenzte Baumannschaft mit unbegrenzter Zeit zur Verfügung". Wenn Sie vermuten, dass Sie kompromittiert wurden, formatieren und neu installieren.

Um die Frage laienhaft zu beantworten (dh wie würde jemand ohne die erforderlichen Fähigkeiten zum Reinigen von Spuren wahrscheinlich Spuren hinterlassen).

Beginnen wir mit ssh, für eine vollständige Diskussion siehe diese Frage . Kurz nach ssh oder sshd (dem „Server“-Teil von ssh) in „Console.app“ oder per Terminal suchen:

cat /var/log/system.log | grep sshd

Das Problem mit sshd ist, dass normalerweise nichts wirklich protokolliert wird (Sicherheitsbedenken AFAIK).

Das gleiche Problem besteht bei VNC / Screen Sharing und Apple Remote Desktop / Remote Management, siehe zum Beispiel this , this und this , dass normal akzeptierte Verbindungen nicht protokolliert werden. Nur abgelehnt. Abgelehnte würden wahrscheinlich von "screensharingd" kommen, suchen Sie also in der "Console.app" oder im Terminal danach

cat /var/log/system.log | grep screensharingd

Abgesehen davon, welche anderen Tracks könnten leicht gefunden werden? Ich würde Benutzer durchsuchen und sicherstellen, dass es sich nur um gültige Benutzer handelt und dass sich keine Berechtigungsstufen geändert haben usw.

Sharing-Panel osx

Ich würde auch prüfen, ob Remote-Dienste aktiviert sind. Siehe Bild unten. Interessant sind „Screen Sharing“, „Remote Login“ und „Remote Management“. cmd + Leerzeichen -> "Teilen" ist der einfachste Weg dorthin.

Hübsch! Sehr hilfreich!! Ich habe meine vorherigen Kommentare zurückgezogen, nachdem Sie die Frage, wie Sie die Protokolle überprüfen können, tatsächlich beantwortet haben. +1

Ich war nicht in der Lage, diese Schwachstelle aus der Ferne auszunutzen, aber ich war in der Lage, während ich angemeldet war und versuchte, meine Berechtigungen in den Systemeinstellungen mit „root“ ohne Passwort zu eskalieren.

Um dies zu erkennen, scannen Sie die Protokolle der gewünschten Maschine mit dem folgenden Befehl im Terminal.

sudo log show --style syslog | fgrep "authenticated as user root (UID 0) for right"

Die Ausgabe dieses Befehls zeigt Ihnen die UID des Benutzers, der angemeldet war, als diese Schwachstelle ausgenutzt wurde, sowie die Uhrzeit. Nehmen Sie sich die Zeit und suchen Sie in diesem Zeitraum nach ssh- oder Remote-Verbindungen.

Update, um über das Root-Konto nach Logins zu suchen, verwenden Sie den folgenden Befehl im Terminal.

sudo log show --style syslog | fgrep 'loginwindow' | fgrep 'root'
Dies erfasst nicht den „remote in as root“-Fall, der passierte, wenn Sie die Bildschirmfreigabe aktiviert hatten, sondern den lokalen „escalate to root“-Fall. Ich sage nicht, dass Sie das nicht gesagt haben, sondern um es für die Leser klarzustellen.
Ja danke für die Klarstellung. Mein Update bot eine Möglichkeit zu erkennen, ob jemand den Exploit ausgeführt hat, um sich lokal anzumelden. Da ich den Exploit nicht remote ausführen konnte, weiß ich nicht, wie der Log-Eintrag aussehen würde. Danke.

Es gibt keinen einfachen und vertrauenswürdigen Weg, die IP-Adresse Ihres Angreifers zu erhalten, es sei denn, er hat sehr dumme Operationen durchgeführt (wie z. B. ftpvon seinem echten Angriffscomputer ein anderes Tool).

Stolperdraht

Die einzige ernsthafte Möglichkeit, einen solchen Angriff oder jeden zukünftigen Angriff durch eine andere Schwachstelle von MacOS X zu erkennen, besteht darin, tripwire zu installieren und zu verwenden . tripwireist eine Änderungsprotokollierungssoftware aus dem Unix- und Sicherheitsbereich. (Sie können es mit installieren Macports).

Wenn Sie zuvor installiert haben, tripwirekönnen Sie einen solchen erfolgreichen Angriff je nach Geschicklichkeitsstufe des Angreifers auf drei Arten erkennen.

Angriff auf hohem Niveau

Ihr Angreifer weiß tripwireund weiß, dass er seine Datenbank nicht manipulieren kann. Er entfernt alle Ihre Zugriffe oder löscht Ihr Dateisystem vollständig, um eine Rückverfolgung zu vermeiden.

Angriff auf mittlerem Niveau

Ihre tripwireInstallation wurde entfernt und Ihr Zugriff beibehalten. Sie erkennen diesen Angriff an der Entfernung von tripwire.

Angriff auf niedrigem Niveau

Ihr Angreifer weiß es nicht tripwireund alle seine Änderungen, sogar die entfernten Protokollspuren, werden registriert.