MemoryModulePP icon indicating copy to clipboard operation
MemoryModulePP copied to clipboard

MemoryModule which compatible with Win32 API and support exception handling

Results 32 MemoryModulePP issues
Sort by recently updated
recently updated
newest added

Service process crash with system permissions. X86 process running on win11 [10.0.22621.2361] 100% probability of crashing during startup RtlInitUnicodeString(&us, buffer); InitializeObjectAttributes(&oa, &us, 0, nullptr, nullptr); li.QuadPart = 0x1000; ServiceMessageBox("MmpAllocateGlobalData", "MmpAllocateGlobalData...

Hi, thank you for your great job. I compile MemoryModulePP to MemoryModulePP.dll I have host.exe that is dynamically linked with MemoryModulePP.dll Host.exe loads plugin.dll from byte[] using MemoryModulePP App crash...

`if (MmpGlobalDataPtr->MmpTls->MmpTlsList.Flink != &MmpGlobalDataPtr->MmpTls->MmpTlsList) { assert(NtCurrentTeb()->ThreadLocalStoragePointer == nullptr); }` file: MmpTls , line:378 不知道啥原因

test.exe a normal exe with not use mmpp i comment this line:// const NTSTATUS Initializer = Initialize(); a.dll build with mmpp static libirary,export loaddll func void loaddll() { Initialize(); mmload("b.dll");...

想问下,如何使用这个来实现注入dll到指定进程

两层内存加载情况下,Win7下多线程程序不能运行,创建线程就会崩溃,单线程程序正常;多线程程序在Win10下正常 加载顺序:MemoryModule(https://github.com/fancycode/MemoryModule) -> MemoryModulePP binary -> APP binary 跟踪代码发现MmpTLS.cpp->MmpUserThreadStart中的auto size = CONTAINING_RECORED(record->TlspLdrBlock, TLS_VERCTOR, ModuleTlsData)->Length;获取到的size不正常,值为大数,但Win10中其是正常的 MemoryModulePP的API使用的LoadLibraryMemory 同时我注释掉了以下代码,以下代码会直接崩溃 auto tls = CONTAINING_RECORD(NtCurrentTeb()->ThreadLocalStoragePointer, TLS_VECTOR, TLS_VECTOR::ModuleTlsData); if (tls && tls->Length > MMP_START_TLS_INDEX) { RtlRaiseStatus(STATUS_NOT_SUPPORTED);...

OS:Win11 22H2 64为 编译环境:VS2022

无论我加载任何dll,一旦执行这个VirtualAccessCheck就会报错 STATUS_ACCESS_VIOLATION ![image](https://github.com/bb107/MemoryModulePP/assets/69395668/8d96391f-c3b4-4c7d-a137-1dc651baa4a3) 于是我尝试注释掉,无论如何返回True ![image](https://github.com/bb107/MemoryModulePP/assets/69395668/47cca8a7-5707-44d5-a66a-531d3fd8c240) 这样做了之后一切工作正常 我不太清楚这个问题发生的原因 希望能修复吧

现象描述: 我先用loadlibrary加载一个dll,然后再用LdrLoadDllMemoryExW加载同样的dll,LdrLoadDllMemoryExW没有办法识别已经加载过的loadlibrary,无法对dll引用进行自增,而是重复执行dll加载代码。 无法识别的代码段: 函数位置LdrLoadDllMemoryExW->MapMemoryModuleHandle 具体代码:pModule->Signature != MEMORY_MODULE_SIGNATURE和pModule->codeBase != (LPBYTE)hModule都为true,导致返回结果为nullptr