
Proof-of-Concept-Exploit für CVE-2019-6440, der SYSTEM-Privilegieneskalation auf Zemana Antimalware über Man-in-the-Middle-Update-Abfangen und digitale Signaturklonung erreicht.
Getestete Produkte:
Zemana antimalware v.2.74.2.150 & Zemana antilogger v.2.74.204.150.
Behoben seit v.2.74.2.664
Über die Schwachstelle:
Diese Sicherheitslücke erlaubte es Angreifern, SYSTEM-Berechtigungen auf Zielrechnern ohne Benutzerinteraktion zu erlangen.
Anforderungen:
1. Der Angreifer muss in der Lage sein, den Inhalt der POST-Anfrage an die URL "POST /api/client/settings/" abzufangen und zu ändern.
2. Kein physischer Zugriff auf den Ziel-PC ist erforderlich.
Details:
Getestete Produkte verwenden einfaches HTTP, um Updates zu empfangen, sodass ein Angreifer leicht die Version und die entsprechende URL auf beliebige Werte ändern kann.
Ändern wir die Update-URL auf unsere einfache Shell (Abb.0 & Anhang 1).
Abb.0.
Das Antivirenprogramm sagt, dass die digitale Signatur des Updates nicht verifiziert werden kann. Aber es erlaubt dem Benutzer, es TROTZDEM auszuführen (Abb.1). Wenn der Benutzer Benutzerrechte hat, kann er SYSTEM-Rechte erlangen (Abb.2).
Abb.1. Möchten Sie eine unbekannte Datei mit SYSTEM-Rechten ausführen?
Abb.2. Systemrechte.
Aber diese Warnung kann umgangen werden. Dazu benötigen wir eine Kopie der digitalen Signatur von ZAM.exe. Klonen wir sie (Sicherheitsverzeichnis). Jetzt haben wir unsere Shell mit einem Klon der digitalen Signatur von Zemana, und sie kann nicht vom Betriebssystem überprüft werden. (Abb. 3).
Abb.3. Falsche Signatur.
Betrachten wir nun die Funktion "ZmnAppUpdater". Wir sehen, dass das Ergebnis des SignatureChecker IGNORIERT wird. (Abb.4)
Abb.4. Verlorene Prüfung.
EAX = 0x80096010 (TRUST_E_BAD_DIGEST).
Abb.5. Demo-GIF.