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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/nettitude/runpe
Генерация полезной нагрузкиИнструменты для выдачи себя за другое лицоШелл-кодПост-эксплуатацияТестирование на ПроникновениеRed TeamingГенерация ШеллкодаРазработка Полезной НагрузкиСостязательная АтакаТоп в Разработка Полезной Нагрузки №18
44465323 лет назадПроверено Kitploit
Топ в Генерация полезной нагрузки №18
Топ в Шелл-код №16
Топ в Генерация Шеллкода №18
GitHubnettitude/runpe

RunPE

C# рефлексивный загрузчик для неуправляемых бинарных файлов.

Репозиторий

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться

RunPE

C# рефлексивный загрузчик для неуправляемых бинарных файлов.

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

Usage: RunPE.exe <file-to-run> <args-to-file-to-run>
        e.g. RunPE.exe C:\Windows\System32\net.exe localgroup administrators

Alternative usage: RunPE.exe ---f <file-to-pretend-to-be> ---b <base64 blob of file bytes> ---a <base64 blob of args>
        e.g: RunPE.exe ---f C:\Windows\System32\svchost.exe ---b <net.exe, base64 encoded> ---a <localgroup administrators, base64 encoded>

Параметры конфигурации сборки

Измените символы компиляции, чтобы быстро настроить поток выполнения программы: (Правый клик по проекту в Visual Studio -> Properties -> Build -> Conditional Compilation Symbols)

  • DEBUG (добавляется автоматически в конфигурации Debug) -> Очень подробное журналирование
  • BREAK_TO_ATTACH -> Выводит «Press Enter to continue...» и ожидает ввода, чтобы можно было подключить отладчик

Ограничения компиляции PE

Исполняемые файлы, запускаемые через RunPE, должны быть статически слинкованы, чтобы перенаправление StdOut и StdErr работало корректно. Чтобы изменить этот параметр в Visual Studio:

  • Откройте свойства проекта
  • Перейдите в Configuration Properties -> C/C++ -> Code Generation
  • Измените значение Runtime Library на Multi-threaded (/MT) или Multi-threaded Debug (/MTd)
  • Перекомпилируйте проект

Ограничения аргументов

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

Например, следующий код будет работать при самостоятельном запуске программы, но не сработает при передаче через RunPE, поскольку "foo" смещается в argv[2]:

if (argv[1] == "foo") {
    bar();
}

Пример рефакторинга argv на CommandLineArgvW:

#include <stdio.h>
#include <Windows.h>

int main(int argc, char* argv[]) {
	int nArgs;
	LPWSTR *szArglist;
	
	szArglist = CommandLineToArgvW(GetCommandLineW(), &nArgs);

	for (int i = 0; i < nArgs; i++) {
		printf("argv[%d]: %ws\n", i, szArglist[i]);
	}

	return 0;
}
Скачать инструмент