[English]In Symantec Endpoint Protection gab es gleich zwei Local Privilege Escalation-Schwachstellen (LPE), CVE-2019–12757 und CVE-2019-12758, die das Unternehmen in der Version 14.2 RU2 geschlossen hat.
Symantec Endpoint Protection ist eineSammlung von Sicherheitslösungen, die Intrusion Prevention, Firewall, Data Loss Prevention und Anti-Malware-Funktionen für Desktop- und Server-Computer umfasst.
Local Privilege Escalation-Schwachstelle CVE-2019-12758
Entdeckt hat die Schwachstelle, die die CVE-Kennung CVE-2019-12758 erhalten hat, der Sicherheitsforscher Peleg Hadar von SafeBreach Labs. Hadar beschreibt das Ganze in diesem Blog-Beitrag.
Mehrere Komponenten der Software laufen als Windows-Dienst, der als „NT AUTHORITY\SYSTEM“ ausgeführt wird und entsprechende Berechtigungen besitzt. Bei einer Analyse stieß das Sicherheitsteam einen Dienst (SepMasterService), der zu Symantec Endpoint Protection gehört und als signierter Prozess und als NT AUTHORITY\SYSTEM läuft. Die Sicherheitsforscher haben festgestellt, dass dieser Dienst versucht, die nachfolgend genannte, nicht existierende, DLL zu laden:
c:\Windows\SysWOW64\wbem\DSPARSE.dll
Das ist ein möglicher Angriffspunkt, den die Sicherheitsforscher für einen Angriff nutzten. Sie erstellten eine eigene Datei DSPARSE.dll und legten diese im Ordner ab. Dazu sind zwar Administrator-Berechtigungen erforderlich. Aber wenn es klappt, die eigene Datei DSPARSE.dll aus dem oben genannten Ordner durch den Dienst SepMasterService laden zu lassen, wäre der Angriff geglückt.
Damit ließe sich der Selbstverteidigungsmechanismus der Antivirensoftware umgehen. Das gilt vor allem, weil die Ordner der Symantec Endpoint Protection-Software durch einen Mini-Filter-Dateisystemtreiber geschützt sind, der Schreibvorgänge sogar durch einen Administrator einschränkt. Normalerweise sollte daher auch einem Administrator verweigert werden, eine nicht existierende DLL in den oben genannten Ordner zu speichern, um diese in die Prozesse von Symantec zu laden.
Genau diese Angriffsmethode hatten die Sicherheitsforscher um Hadar bereits erfolgreich bei McAfee Total Protection (MTP), McAfee Anti-Virus Plus (AVP) und McAfee Internet Security (MIS) genutzt. Ich hatte das kürzlich im Beitrag McAfee patcht Schwachstelle in Antivirus-Produkten berichtet.
Auch bei dieses Angriff schrieben die Sicherheitsforscher eine 32-Bit-Proxy-DLL, die bestimmte Parameter beim Aufruf in einen Textdatei schreibt und das Ganze protokolliert.
Wie erwartet ließ sich eine beliebige Proxy-DLL laden (die eine weitere beliebige DLL laden konnte) in den oben angegebenen Ordner speichern. Und die Proxy-DLL sowie Folge-DLLs wurden geladen, der Code der DLLs wurde anschließend innerhalb des Prozesses des Symantec-Dienstes als NT AUTHORITY\SYSTEM ausgeführt. Der Schutzmechanismus des Symantec-Programms wurde also umgangen.
Betroffene Symantec EP-Versionen, Auswirkungen
Der Sicherheitsforscher Peleg Hadar beschreibt in diesem Artikel im Blog von SafeBreach Labs die Details und geht auf weitere Analysen ein. So werden die potentiellen Auswirkungen der Schwachstelle skizziert. Diese gibt Angreifern die Möglichkeit, bösartige Nutzlasten im Rahmen des von Symantec signierten Prozesses zu laden und auszuführen.
Diese Fähigkeit kann von einem Angreifer für verschiedene Zwecke wie z.B. Whitelisting-Bypass für Anwendungen missbraucht werden. Zudem ermöglicht die Schwachstelle es Angreifern mit Administratorrechten eine Schadroutine automatisch beim Start von Windows über die Symantec-Dienste laden zu lassen. Von der Schwachstelle sind alle Symantec Endpoint Protection-Versionen vor 14.2 RU2 betroffen.
Symantec hat die Schwachstelle gefixt
Sicherheitsforscher Peleg Hadar hat die Schwachstelle am 5. August 2019 an Symantec gemeldet und am 6. August 2019 die Bestätigung erhalten. Am 31. Oktober wurde eine CVE-Kennung vergeben. Die Schwachstelle CVE-2019-12758 ist in Symantec Endpoint Protection 14.2 Version RU2 beseitigt. Diese Version wurde am 22. Oktober 2019 freigegeben, wie Bleeping Computer hier schreibt. Das letzte Update der Seite erfolgte allerdings am 12. November 2019.
Bleeping Computer schreibt hier, dass Peleg Hadar ähnliche Schwachstellen nicht nur bei Trend Micro, sondern auch bei Checkpoint Bitdefender Antivirus, Avira Antivirus 2019, Avast Antivirus und weiteren Anbietern aufgedeckt hat.
Weitere Schwachstelle CVE-2019-12757
Gestern bin ich auf den nachfolgenden Tweet von Matt Nelsen gestoßen, der eine weitere Local Privilege Escalation-Schwachstelle CVE-2019–12757 in Symantec Endpoint Protection aufgedeckt hat.
[Blog] CVE-2019–12757: Local Privilege Escalation in Symantec Endpoint Protection https://t.co/NB74Qkid8s
— Matt Nelson (@enigma0x3) November 15, 2019
Die Schwachstelle betrifft Symantec Endpoint Protection Version: 14.2 RU1 Build 3335 (14.2.3335.1000) und darunter. Getestet wurde mit Windows 10 1803. Diese Schwachstelle wurde in Zusammenarbeit mit Marcus Sailler, Rick Romo und Gary Muller vom Security Testing Team der Capital Group gefunden.
Matt Nelsen schreibt hier, dass zur zuverlässigen Ausnutzung dieser Schwachstelle die Funktion „Tamper Protection“ von Symantec Endpoint Protection deaktiviert werden muss. Laut seiner Aussage ist dieser Manipulationsschutz aber in vielen Unternehme deaktiviert. Nelson ist der Ansicht, dass dies eine Schwachstelle ist, unabhängig davon, ob der Manipulationsschutz aktiviert ist oder nicht.
Wenn dieser Manipulationsschutz deaktiviert ist (er hat verschiedene Umgebungen mit dieser deaktivierten oder abgeschalteten Funktion gesehen), ist die Ausnutzbarkeit der Schwachstelle hoch. Wenn der Manipulationsschutz aktiviert ist, existiert die Schwachstelle weiterhin, aber die Ausnutzbarkeit ist viel, viel geringer.
Die Details des Angriffs (die den Task-Scheduler nutzt) bzw. der Schwachstelle sind hier beschrieben. Entdeckt wurde das Ganze bereits am 27. Juni 2019 und an Symantec gemeldet. Diese Schwachstelle wurde in Symantec Endpoint Protection (SEP) 14.2 RU2 und Symantec Endpoint Protection Small Business Edition (SEP SBE) 12.1 RU6 MP10d zum 14. November 2019 behoben.