天天看點

企業微信HOOK逆向(PC端)

通過HOOK PC端的企業微信提取出各個功能的接口讓外界調用。

目前已經完成以下功能:

擷取登入二維碼/登入資訊/登出資訊;

擷取自己資訊/好友資訊/内部聯系人/外部聯系人/标簽清單/群清單;

搜尋添加微信好友/設定聯系人備注、手機号、描述、标簽;

建立群聊/群拉人、踢人/發群公告/改群名/加群好友/進群、退群通知;

收發各種類型的消息;

生成個人/群二維碼;

具體功能可以檢視連結:

企業微信接口文檔

部分代碼示例:

void VXWorkElf_xxxx8::GetLoginQrcode()
{
#ifdef VMP_VERIFY
	VMProtectBeginMutation("");
#endif

	DWORD dwLoadParamCall = m_moduleBaseAddr + 0xxxxxxD0;
	DWORD dwGetLoginQrcodeCall = m_moduleBaseAddr + 0xxxxx20;

	static VXGetLoginQrcodeParam param{ 0 };
	param.objectClassPtr = m_moduleBaseAddr + 0xxxxxDC;
	param.refCount = 0xx;
	param.refCountExt = 0xx;
	__asm {
		pushad
			lea edi, param
			mov ecx, edi
			add ecx, 0x10
			call dwLoadParamCall
		popad
	}
	param.func = m_moduleBaseAddr + 0xxxxBC;
	param.forwardThis = (DWORD)&param;
	param.fowardFunc = (DWORD)&param.func;

	DWORD start = DPUInt(m_moduleBaseAddr, 0xxxxx64, 0xxx4, 0x0);
	*(param.pSubParam) = start;

	this->LoadNetCallBackParam(param.callbackParam);

	CHAR buff[0x100] = { 0 };
	__asm {
		pushad
			lea eax, buff
			push eax
			lea ecx, param
			add ecx, 0x10
			call dwGetLoginQrcodeCall
		popad
	}

#ifdef VMP_VERIFY
	VMProtectEnd();
#endif
}
           

需要的可以聯系本人:

char qq[] = "601728235";

char verifyText[] = "wxwork";

繼續閱讀