static ULONG_PTR get_mod_base(char *name)
{
int i;
RTL_PROCESS_MODULES *m;
DWORD got = 0;
NTSTATUS ret = NtQuerySystemInformation(
SystemModuleInformation, NULL, 0, &got);
if (ret != STATUS_INFO_LENGTH_MISMATCH)
return 0;
m = malloc(got);
if (!NT_SUCCESS(NtQuerySystemInformation(SystemModuleInformation, m, got, &got))) {
free(m);
return 0;
}
for (i = 0; i < m->NumberOfModules; i++) {
RTL_PROCESS_MODULE_INFORMATION *p = m->Modules + i;
if (!stricmp(name, (char*)p->FullPathName + p->OffsetToFileName)) {
ULONG_PTR ret = (ULONG_PTR)p->ImageBase;
free(m);
return ret;
}
}
free(m);
return 0;
}
3环获取0环模块加载基址
最新推荐文章于 2024-09-30 13:31:42 发布