哪位大神没事做?研究过坐掉x32dbg/x64dbg中的|
本帖最后由 冥界3大法王 于 2020-2-18 12:13 编辑当我们整行的复制x32dbg/x64dbg的代码时:
我们就会得到下面的代码,里边有个|
每次还得替换掉,再保存到我们的汇编笔记中
实在是太烦人了
能不能汇编掉呢?
00D7D730| 0F85 9B000000 | jne D7D7D1 | 补丁9
00D7D736| FFD3 | call ebx |
00D7D738| 84C0 | test al,al |
00D7D73A| 0F84 91000000 | je D7D7D1 | 补丁8(测试通过的
00D7D740| 33DB | xor ebx,ebx |
00D7D742| 399E E4050000 | cmp dword ptr ds:,ebx |
00D7D748| 0F84 83000000 | je D7D7D1 | 补丁7
00D7D74E| 8D8D 63FDFFFF | lea ecx,dword ptr ss: |
00D7D754| E8 9719F6FF | call <sub_CDF0F0> |
00D7D759| 8D8D 63FDFFFF | lea ecx,dword ptr ss: |
00D7D75F| C645 FC 01 | mov byte ptr ss:,0x1 |
00D7D763| E8 AC84FEFF | call <sub_D65C14> | 补丁5(F7进入后,正是is_vip
00D7D768| 84C0 | test al,al |
00D7D76A| 75 57 | jne D7D7C3 | 补丁6
00D7D76C| 8B8E 1C050000 | mov ecx,dword ptr ds: |
00D7D772| 53 | push ebx |
00D7D773| FF15 70B4EC00 | call dword ptr ds:[<&?SetCheck@CCheck |
00D7D779| 68 08020000 | push 0x208 |
00D7D77E| 8D85 E8FDFFFF | lea eax,dword ptr ss: |
00D7D784| 53 | push ebx |
00D7D785| 50 | push eax |
00D7D786| E8 55391100 | call <sub_E910E0> |
00D7D78B| 83C4 0C | add esp,0xC |
00D7D78E| 68 B85BF400 | push F45BB8 | F45BB8:L"WnUserPage.exe"
00D7D793| E8 1C66FEFF | call <sub_D63DB4> |
00D7D798| 8BC8 | mov ecx,eax |
00D7D79A| E8 BC8FFDFF | call <sub_D5675B> |
00D7D79F| 50 | push eax |
00D7D7A0| 8D85 E8FDFFFF | lea eax,dword ptr ss: |
00D7D7A6| 68 D85BF400 | push F45BD8 | F45BD8:L"\"%s%s\" OpenVipTip"
00D7D7AB| 50 | push eax |
00D7D7AC| E8 3F34F6FF | call <sub_CE0BF0> |
00D7D7B1| 53 | push ebx |
00D7D7B2| 53 | push ebx |
00D7D7B3| 8D85 E8FDFFFF | lea eax,dword ptr ss: |
00D7D7B9| 53 | push ebx |
00D7D7BA| 50 | push eax |
00D7D7BB| E8 20C2FDFF | call <sub_D599E0> |
00D7D7C0| 83C4 20 | add esp,0x20 |
00D7D7C3| 8D8D 63FDFFFF | lea ecx,dword ptr ss: |
00D7D7C9| 885D FC | mov byte ptr ss:,bl |
00D7D7CC| E8 8F11F6FF | call <sub_CDE960> |
00D7D7D1| 8BCE | mov ecx,esi |
00D7D7D3| E8 A7030000 | call <sub_D7DB7F> | 这里也起决定作用
00D7D7D8| 8D8D 64FDFFFF | lea ecx,dword ptr ss: | :L"normal_ck_use_yy"
00D7D7DE| FF15 A8B3EC00 | call dword ptr ds:[<&??1CDuiString@Du |
00D7D7E4| E8 59F70000 | call <sub_D8CF42> |
00D7D7E9| C2 0400 | ret 0x4 |
好的,游戏开始:
我打算使用2号x32dbg调试1号x32dbg{:301_997:}
我们的目标是:干掉剪贴板中复制多出来的 |
https://static.52pojie.cn/static/image/hrline/1.gif
主程序搜索下clip,果然没有
找到后,全F2 下断,等待战机。
到x32dbg中去复制几行代码吧
触发后来到这附近
继续向下,看看都有啥,不要忙着做啥,有了针对才有胜算。
555958F | A1| mov eax,dword ptr ds:[<?qt_clipboard@QGuiAppli |
555958F | 83E | sub esp,0x14 |
555958F | 85C | test eax,eax |
555958F | 75| jne 0x5559594F |
555958F | FF1 | call dword ptr ds:[<&?instance@QCoreApplicatio |
5559590 | 85C | test eax,eax |
5559590 | 75| jne 0x55595928 |
5559590 | 68| push qt5gui.55844778 | 55844778:"QGuiApplication: Must construct a QGuiApplication before accessing a QClipboard"
5559590 | 50| push eax |
5559590 | 50| push eax |
5559590 | 50| push eax |
5559590 | 8D4 | lea ecx,dword ptr ss: |
5559591 | FF1 | call dword ptr ds:[<&??0QMessageLogger@@QAE@PB |
5559591 | 50| push eax |
5559591 | FF1 | call dword ptr ds:[<&?warning@QMessageLogger@@ |
5559591 | 83C | add esp,0x8 |
5559592 | 33C | xor eax,eax |
5559592 | 83C | add esp,0x14 |
5559592 | C3| ret |
5559592 | 6A| push 0x8 |
看到没? 因为x32dbg 是QT的程序,所以出现这些特征字符串在情理之中的。
然后 我们就知道了
555958F | A1| mov eax,dword ptr ds:[<?qt_clipboard@QGuiAppli |这个函数可以作为切入点;
006ADD23 <wnconf | E8 99060000 | call <sub_6AE3C1> | This is my 注释
006ADD28 | E9 8EFEFFFF | jmp 6ADBBB | Hello 52pojie.cn
正常粘出来,上面这样,对吧?
加油,加油 !
看到没? | 这玩意 在寄存器中已经出来了 ~~
54EE164A | 8BC6 | mov eax,esi | 从这上面某处入手 找 |
54EE164C | 5E | pop esi |
54EE164D | C2 0400 | ret 0x4 |
54EE1650 <qt5co | 56 | push esi |
54EE1651 | 8BF1 | mov esi,ecx |
54EE1653 | 8B0E | mov ecx,dword ptr ds: |
54EE1655 | C706 58971255 | mov dword ptr ds:,<?shared_null@QArrayData@@2QBU1@B |
54EE165B | 8B01 | mov eax,dword ptr ds: |
54EE165D | 85C0 | test eax,eax |
54EE165F | 74 13 | je 54EE1674 |
54EE1661 | 83F8 FF | cmp eax,0xFFFFFFFF |
54EE1664 | 74 1B | je 54EE1681 |
继续,继续~~
晕,原来这玩意 ,就是这东西 ~~
这样最后就修补好了。
成功后复制出的代码:
010073B9 75 1F jne 0x10073DA
010073BB 8B48 3C mov ecx,dword ptr ds: ecx:EntryPoint
010073BE 03C8 add ecx,eax ecx:EntryPoint
010073C0 8139 50450000 cmp dword ptr ds:,0x4550 ecx:EntryPoint
010073C6 75 12 jne 0x10073DA
010073C8 0FB741 18 movzx eax,word ptr ds:
010073CC 3D 0B010000 cmp eax,0x10B
010073D1 74 1F je 0x10073F2
010073D3 3D 0B020000 cmp eax,0x20B
010073D8 74 05 je 0x10073DF
010073DA 895D E4 mov dword ptr ss:,ebx
页:
[1]