
LoadLibrary pour des opérations offensives
LoadLibrary pour des opérations offensives.
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
);
Cela peut être n'importe quel chemin que CreateFileW peut ouvrir.
Ce paramètre n'est nécessaire que lorsque LOAD_MEMORY est défini. Dans ce cas, ce paramètre doit être le buffer contenant la DLL.
Ce paramètre n'est nécessaire que lorsque LOAD_MEMORY est défini. Dans ce cas, ce paramètre doit être la taille du buffer contenant la DLL.
Ce paramètre n'est nécessaire que lorsque LOAD_MEMORY est défini. Dans ce cas, ce paramètre doit être le nom sous lequel la DLL doit être définie dans le PEB.
Le chargeur Windows est très complexe et peut gérer tous les cas particuliers et les subtilités du chargement de DLL. Il y aura des cas particuliers que je n'ai pas eu le temps de découvrir, de rétro-ingénierer et d'implémenter. Il y aura donc des DLL avec lesquelles ce chargeur ne fonctionnera tout simplement pas.
Cela dit, je prévois de rendre ce chargeur aussi complet que possible, donc veuillez ouvrir des issues pour les DLL qui ne sont pas correctement chargées.