【PC微信探祕】C++寫的一個被注入到程序中的DLL文件

BOOL APIENTRY DllMain(HMODULE hModule, DWORD  ul_reason_for_call, LPVOID lpReserved)
{
	switch (ul_reason_for_call)
	{
	case DLL_PROCESS_ATTACH:
		MessageBox(NULL, TEXT("Hooked"), TEXT("OK"), MB_OK);
		break;
	case DLL_THREAD_ATTACH:
	case DLL_THREAD_DETACH:
	case DLL_PROCESS_DETACH:
		break;
	}
	return TRUE;
}

解析:
DllMain,是這個DLL文件的入口函數,DLL被應用程序加載之後,這個函數就會被調用。
剛被加載,將進入DLL_PROCESS_ATTACH分支。示例的分支中僅僅彈出一個信息框。
其他幾個比較少用,如果想了解詳細情況,請參考MSDN。

該DLL可以在應用程序啓動的時候加載,也可以使用注入器注入。如果要在應用程序啓動的時候加載,則在應用程序中添加引用,將該DLL直接或者間接地添加到應用程序的IAT表中。

示例來源:
網易雲課堂《2019 PC 微信探祕》

交流QQ羣:

456197310 PC微信HOOK逆向分析

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章