Как инжектить длл, записанную в виде hex из exe? Условие такое: есть файл exe, он должен заинжектить длл в другой процесс, при чём длл не в виде файла, а в виде последовательности { 0x54, 0xf6, 0x4a, ..., которую записывают в исходный код в хедер или ресурс.

12 Мая 2020 в 19:46
324 +1
0
Ответы
1

Для инжектирования DLL, записанной в виде hex в исполняемый файл (exe) и последующей инъекции в другой процесс, необходимо выполнить следующие шаги:

Создать проект на языке программирования (например, С++), в котором будет содержаться последовательность байт DLL в виде hex.

Вставить данную последовательность в код программы как массив байтов. Например:

unsigned char dllBytes[] = { 0x54, 0xf6, 0x4a, ... };

Необходимо создать новый процесс и выделить в нем память для загрузки DLL. Для этого можно использовать функцию VirtualAllocEx.

Скопировать последовательность байт DLL в выделенную память в другом процессе. Для этого можно использовать функцию WriteProcessMemory.

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

Загрузить библиотеку в процесс с помощью функции LoadLibrary и передать ей адрес, в который была записана DLL.

Завершить процесс инжекции.

Эти шаги позволят инжектировать DLL, записанную в виде hex в другой процесс. Также стоит учитывать, что для успешной инъекции необходимо обладать правами доступа для работы с процессами.

18 Апр 2024 в 12:19
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир