Skip to content

binarymaster/MemoryModule

Repository files navigation

MemoryModule

Функции, которые используются для загрузки модулей (LoadLibrary, LoadLibraryEx) не поддерживают загрузку модулей из памяти. Данный модуль реализует данную функцию.

Основа была взята с репозитария: https://github.com/fancycode/MemoryModule

Вносятся правки которые позволяют полноценно запускать EXE из памяти.

История:

15.02.16 - Реализована возможность указания командной строки перед запуском EntryPoint. Поток, исполняющийся внутри MemoryModule маркируется изменением значения ProcessParameters в _PEB. Производится перехват (методом импорта) некоторых важных функций для изоляции от основного процесса. !Модуль не учитывается в списке модулей процесса!

16.02.16 - Некоторые фиксы в TLS.

19.02 - Введена функция TryFreeMem и флаг bForceMemFree для "насильного" освобождения памяти в случае её занятости. !Использовать, только если основной процесс больше не будет использоваться, иначе могут быть ошибки!

Проблемы:

  1. При отсутствии таблицы .reloc и невозможности выделить нужную память по ImageBase запуск модуля становится невозможным.

About

Library to load a DLL from memory.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • C 73.3%
  • C++ 20.1%
  • Makefile 3.4%
  • CMake 2.5%
  • Other 0.7%