
LoadLibrary для наступательных операций
LoadLibrary для наступательных операций.
https://www.mdsec.co.uk/2021/06/bypassing-image-load-kernel-callbacks/
DARKMODULE DarkModule = DarkLoadLibrary(
LOAD_LOCAL_FILE, // control flags
L"TestDLL.dll", // local dll path, if loading from disk
NULL, // dll buffer to load from if loading from memory
0, // dll size if loading from memory
NULL // dll name if loaded from memory
);
Это может быть любой путь, который откроет CreateFileW.
Этот аргумент нужен только когда установлен LOAD_MEMORY. В этом случае аргумент должен содержать буфер с DLL.
Этот аргумент нужен только когда установлен LOAD_MEMORY. В этом случае аргумент должен содержать размер буфера с DLL.
Этот аргумент нужен только когда установлен LOAD_MEMORY. В этом случае аргумент должен содержать имя, под которым DLL будет установлена в PEB.
Загрузчик Windows очень сложен и может обрабатывать все граничные случаи и тонкости загрузки DLL. Будут граничные случаи, которые у меня не было времени обнаружить, реверс-инжинирить и реализовать. Поэтому будут DLL, с которыми этот загрузчик просто не будет работать.
Тем не менее, я планирую сделать этот загрузчик максимально полным, поэтому, пожалуйста, открывайте issue для DLL, которые загружаются неправильно.