首页
社区
课程
招聘
[水帖]迅雷去广告条(高手勿进)
发表于: 2007-4-4 23:26 11240

[水帖]迅雷去广告条(高手勿进)

2007-4-4 23:26
11240

老长时间没发文了,今天又弄了下迅雷,注:以前的版本弄过,但没有记录,今天有时间,就记录了一下.纯属灌水,高手请飘过。

内容如下(由于是笔记,所有格式很乱,请不要拍砖 ):

分析版本:V5.5.6.274

准备工作:
调试Thunder5时需要加上命令行参数:"/7559ec68"
(开始没注意原来这个参数是会变的,可以先调试Thunder.exe来找到当前的参数。也可以直接调试

Thunder5.exe,然后下断bp GetCommandLineA)

建议采用
直接调试Thunder5.exe,然后下断bp GetCommandLineA的方法
这样中断后返回到:

0040D227  |.  FF15 30A14800      call dword ptr ds:[<&KERNEL32.GetC>; [GetCommandLineA
0040D22D  |.  50                 push eax                              《-中断后会返回到这里
0040D22E  |.  8D4D A4            lea ecx, dword ptr ss:[ebp-5C]
0040D231  |.  E8 F0AC0600        call Thunder5.00477F26
0040D236  |.  8365 FC 00         and dword ptr ss:[ebp-4], 0
0040D23A  |.  8D45 E8            lea eax, dword ptr ss:[ebp-18]
0040D23D  |.  6A 00              push 0
0040D23F  |.  50                 push eax
0040D240  |.  E8 98290000        call Thunder5.0040FBDD
0040D245  |.  59                 pop ecx
0040D246  |.  59                 pop ecx
0040D247  |.  68 A4B84A00        push Thunder5.004AB8A4             ;  ASCII "download_interface.dll"
0040D24C  |.  50                 push eax
0040D24D  |.  8D45 EC            lea eax, dword ptr ss:[ebp-14]
0040D250  |.  C645 FC 01         mov byte ptr ss:[ebp-4], 1
0040D254  |.  50                 push eax
0040D255  |.  E8 04FE0600        call <jmp.&MFC42.#924>
0040D25A  |.  FF30               push dword ptr ds:[eax]
0040D25C  |.  8D45 F0            lea eax, dword ptr ss:[ebp-10]
0040D25F  |.  C645 FC 02         mov byte ptr ss:[ebp-4], 2
0040D263  |.  50                 push eax
0040D264  |.  E8 AA920600        call Thunder5.00476513
0040D269  |.  59                 pop ecx
0040D26A  |.  59                 pop ecx
0040D26B  |.  8D4D EC            lea ecx, dword ptr ss:[ebp-14]
0040D26E  |.  C645 FC 05         mov byte ptr ss:[ebp-4], 5
0040D272  |.  E8 2BFC0600        call <jmp.&MFC42.#800>
0040D277  |.  8D4D E8            lea ecx, dword ptr ss:[ebp-18]
0040D27A  |.  C645 FC 04         mov byte ptr ss:[ebp-4], 4
0040D27E  |.  E8 1FFC0600        call <jmp.&MFC42.#800>
0040D283  |.  FF75 F0            push dword ptr ss:[ebp-10]         ; /Arg1
0040D286  |.  8D4D A4            lea ecx, dword ptr ss:[ebp-5C]     ; |
0040D289  |.  E8 CBAF0600        call Thunder5.00478259             ; \Thunder5.00478259
0040D28E  |.  85C0               test eax, eax
0040D290  |.  7E 05              jle short Thunder5.0040D297              《——只要把这里改成NOP就OK了

这样做就可以直接调试了,很方便
=====================================================================

(可以通过BP LoadLibraryA下断,然后注意堆栈内容,看什么时候调用的"TargetAD.dll",然后就可以定位到下面)
第一步,将jnz 0044FCE3 改成jmp
0044FA91   $  B8 B4584800        mov eax, Thunder5.004858B4
0044FA96   .  E8 55E10200        call Thunder5.0047DBF0
0044FA9B   .  51                 push ecx
0044FA9C   .  51                 push ecx
0044FA9D   .  53                 push ebx
0044FA9E   .  56                 push esi
0044FA9F   .  8BF1               mov esi, ecx
0044FAA1   .  33DB               xor ebx, ebx
0044FAA3   .  399E 24010000      cmp dword ptr ds:[esi+124], ebx
0044FAA9      0F85 34020000      jnz Thunder5.0044FCE3                       **************  ->jmp0044FCE3
0044FAAF   .  8D45 EC            lea eax, dword ptr ss:[ebp-14]
0044FAB2   .  50                 push eax
0044FAB3   .  E8 254B0200        call Thunder5.004745DD
0044FAB8   .  C70424 C4CF4A00    mov dword ptr ss:[esp], Thunder5.0>;  ASCII "iTargetAD.dll"
0044FABF   .  50                 push eax
0044FAC0   .  8D45 F0            lea eax, dword ptr ss:[ebp-10]
0044FAC3   .  895D FC            mov dword ptr ss:[ebp-4], ebx
0044FAC6   .  50                 push eax
0044FAC7   .  E8 92D50200        call <jmp.&MFC42.#924>
0044FACC   .  FF30               push dword ptr ds:[eax]
0044FACE   .  C645 FC 01         mov byte ptr ss:[ebp-4], 1
0044FAD2   .  E8 01DA0200        call <jmp.&MFC42.#1193>
0044FAD7   .  8D4D F0            lea ecx, dword ptr ss:[ebp-10]
0044FADA   .  8986 24010000      mov dword ptr ds:[esi+124], eax
0044FAE0   .  885D FC            mov byte ptr ss:[ebp-4], bl
0044FAE3   .  E8 BAD30200        call <jmp.&MFC42.#800>
0044FAE8   .  834D FC FF         or dword ptr ss:[ebp-4], FFFFFFFF
0044FAEC   .  8D4D EC            lea ecx, dword ptr ss:[ebp-14]
0044FAEF   .  E8 AED30200        call <jmp.&MFC42.#800>
0044FAF4   .  8B86 24010000      mov eax, dword ptr ds:[esi+124]
0044FAFA   .  3BC3               cmp eax, ebx
0044FAFC   .  0F84 D1010000      je Thunder5.0044FCD3

(现在就已经不会再自动下广告了,但窗口上还有个大白框,下面想办法去掉)
===========================================

第二步,重新载入程序,在0044FAA9设断,F9运行,中断后bp ShowWindow,F9运行
中断在:
77D1D8A4 >  B8 2B120000          mov eax, 122B
77D1D8A9    BA 0003FE7F          mov edx, 7FFE0300
77D1D8AE    FF12                 call dword ptr ds:[edx]
77D1D8B0    C2 0800              retn 8

此时堆栈内容为:
0012EE44   5D1844ED  /CALL to ShowWindow from COMCTL32.5D1844EB
0012EE48   001103E0  |hWnd = 001103E0 (class='Afx:400000:b:10011:6:0',parent=00130304)
0012EE4C   00000005  \ShowState = SW_SHOW

将这里的SW_SHOW参数改成SW_HIDE即可,即0012EE4C   00000005 -》0012EE4C   00000000
(具体为什么就是这个呢?我也是试出来的,我估计这个shwowinow应该和LoadLibrary "iTargetAD.dll"不远,所以一下子就找到了)
====================================================================
第三步,重新载入程序,在0044FAA9设断,F9运行

中断后bp ShowWindow,F8单步运行当执行到:
00420824  |. /0F84 80000000      je Thunder5.004208AA     《——从这里直接跳到00420842即可,跳过这段调用
0042082A  |. |68 01010000        push 101
0042082F  |. |53                 push ebx
00420830  |. |6A 01              push 1
00420832  |. |6A 0F              push 0F
00420834  |. |50                 push eax
00420835  |. |8D8E 542D0000      lea ecx, dword ptr ds:[esi+2D54]
0042083B  |. |E8 50CF0500        call <jmp.&MFC42.#6564>           《——这里会调用第二步中的ShowWindow语句,所以搞这里
00420840  |. |85C0               test eax, eax
00420842  |. |74 66              je short Thunder5.004208AA
=========================================================================
第四步,现在启动后就已经看不到广告了(当然,后台也已经停止下载了),现在的任务就是用资源编辑工具,去编辑一下新建窗口就好了,因

国那里虽然不显示窗口了,但还有个大框框在那里。


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 7
支持
分享
最新回复 (11)
雪    币: 2943
活跃值: (1788)
能力值: ( LV9,RANK:850 )
在线值:
发帖
回帖
粉丝
2
看看,顶一下。
2007-4-4 23:53
0
雪    币: 108
活跃值: (42)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
搜索 mov edx,3F  
3F改成00

然后删除目录里的iTargetAD.dll就可以了
2007-4-5 11:14
0
雪    币: 716
活跃值: (162)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
4
愿闻其详~~~
2007-4-5 17:43
0
雪    币: 2943
活跃值: (1788)
能力值: ( LV9,RANK:850 )
在线值:
发帖
回帖
粉丝
5
试试,搜索不到这条命令。
版本不同?
2007-4-5 20:03
0
雪    币: 296
活跃值: (250)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
6
[QUOTE='wofan[OCN];294663']试试,搜索不到这条命令。
版本不同?[/QUOTE]
现在迅雷好像也有那么点保护意识了
2007-4-15 21:56
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
我都去试试
看看那个更合理
2007-4-22 21:29
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
用楼主的方法试了下,没有相应断点啊
2007-4-24 04:24
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
因国那里虽然不显示窗口了

错别字一个。。

因为
2007-4-24 04:34
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
慢慢尝试 会发现有很多改进的地方.
2007-4-25 10:09
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
顶!!!!!感谢分享!!!
2007-4-26 16:10
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
奇怪,载入不同。怎么回事?
2007-6-8 08:20
0
游客
登录 | 注册 方可回帖
返回
//