微信函數(shù)地址和Call分析
ce
Dll基址 52AE0000
WeChatWin.dll + 1131DC8 昵稱地址
WeChatWin.dll + 1131F2C 頭像地址
WeChatWin.dll + 1131C98 手機號碼
WeChatWin.dll + 1132030 機型
WeChatWin.dll + 1131D68 地區(qū)
Ctrl+G 查找
昵稱地址 53C11C64
WxID地址 53C11B90
頭像虛擬地址 030B8150
53C11F2C 030B8150 ASCII "http://wx.qlogo.cn/mmhead/ver_1/ZOwZ1eqxz0unoo4hCkTTyn1Qwj3NCHqdD9wHQtTDEAOMlUMczT0S2WGRBRtTzZU7YjdH"
53C11C64 17311301741
53C12024 phone.
53C11D64 ?...Chengdu.
012FF020 015BD7C0 \MutexName = "_WeChat_App_Instance_Identity_Mutex_Name"
png 文件頭格式解析:https://blog.csdn.net/u013943420/article/details/76855416
00AF10AE 83C4 04 add esp,0x4
00AF1F9D 6A 01 push 0x1
自己hook函數(shù)不能破壞寄存器
二維碼Hook地址
二維碼Hook地址
WeChatWin + 1E4638
10064638 E8 D34D2900 call WeChatWi.102F9410
E8 call
E9 jmp
1.讀取ecx的數(shù)據(jù)然后返回
call 102F9410
需要hook這一行
//10064638 E8 D34D2900 call WeChatWi.102F9410
回調(diào)的地址
//1006463D 8B4D F4 mov ecx,dword ptr ss:[ebp-0xC] ; user32.762F8010
jmp 1006463D
//獲取偏移量
10064638 E8 D34D2900 call WeChatWi.102F9410
10064638 E8 D34D2900 call WeChatWi.102F9410
消息接收
//1
0FED3EF1 E8 7A714200 call WeChatWi.102FB070 ; 可能
//2
0FED28CB E8 008B4200 call WeChatWi.102FB3D0
1008A976 8D4F 3C lea ecx,dword ptr ds:[edi+0x3C] ; 可能是
斷點后查看ecx發(fā)現(xiàn)沒什么數(shù)據(jù),所以排除
//like
1008A99F E8 6C180000 call WeChatWi.1008C210 ; 可能是
1015A2DC
0FED3EF1 E8 7A714200 call WeChatWi.102FB070
010FD840 03C6AEA0 UNICODE "caoni mamamamamamamamamacaoni mamamamamamamamamaca"
//計算函數(shù)便宜連
1015A2D7 E8 F49BD7FF call WeChatWi.0FED3ED0 ; 沒錯就是你了
//DLL 中的地址
0FE80000
//真是函數(shù)的偏移量: 2DA2D7
地址= WeChatWin.dll+0x2DA2D7
wxid_4czwjeqfe1ax22
05EAE5B8 0E142708 UNICODE "wxid_0gvgqgyqf4ug21"
0FE80000
//最后的
0FF44408 E8 E35C2100 call WeChatWi.1015A0F0 ; 這個就是發(fā)送函數(shù)
MDFUCK[耶]
MDFUCK[耶]
11767D24 11317048 UNICODE "eee" 文本內(nèi)容
11767D28 00000003 長度
11767D2C 00000004 填寫長度的2倍
11767D30 00000000
0EA748A4 0EA74884 UNICODE "MDFUCK[耶]"
斷點call位置,發(fā)送的地方
在一片空白區(qū)域創(chuàng)建自己的字符串
11767D24 11317048 UNICODE "eee" 文本內(nèi)容
11767D28 00000003 長度
11767D2C 00000004 填寫長度的2倍
3.修改堆棧地址和修改ebx的地址,發(fā)送
0FF443F8 8B55 CC mov edx,dword ptr ss:[ebp-0x34] ; 用戶的ID
0FF443FB 8D43 14 lea eax,dword ptr ds:[ebx+0x14]
0FF443FE 6A 01 push 0x1 ; 0x1
0FF44400 50 push eax ; 0x0
0FF44401 53 push ebx ; 文本內(nèi)容
0FF44402 8D8D E4F7FFFF lea ecx,dword ptr ss:[ebp-0x81C]
0FF44408 E8 E35C2100 call WeChatWi.1015A0F0 ; 這個就是發(fā)送函數(shù)
0FF4440D 83C4 0C add esp,0xC
//
0FE80000
100CD340 55 push ebp
0FE80000
接受消息
hook函數(shù)地址:WeChatWin.dll+0x305758
[[esp]]+0x40 這個地址就是wxid的地址 群消息和個人都是這個
[[esp]]+0x68 這個地址就是消息的地址
[[esp]]+0x114 這個地址就是消息的地址
[[esp]]+0x128 未知遺傳嗎
[[esp]]+0x44 這個值是長度
[[esp]]+0x48 這個值是2被長度