发新话题
打印

[原创]OD调试“传奇客星”

[原创]OD调试“传奇客星”

文章作者:混世魔王
信息来源:邪恶八进制信息安全团队(www.eviloctal.com

适合读者:破解爱好者
前置知识:OD使用基础  图片没有传,不好意思.作成DOC附件上传了。
                  OD调试 传奇客星
                                文/图 混世魔王
前段日子做传奇SF被攻击,于是瞎找防火墙,用到了传奇私服伴侣测试,里面自带了一个攻客的传奇客星终结版作为压力软件,由于传奇客星是一个比较有争议的软件,想当年那个口水,飞龙,驽马,小狗。
但是,软件有一点不爽的地方就是每次运行都会打开攻客的网站,这点就比较烦人了,反正一直在玩反汇编,所以我就决定搞定它。先查壳,Upack 2.4 - 2.9 beta -> Dwing,如图1所示。
图1
网上没有找到Upack 的内容,郁闷。还是用OD载入,用脱其他壳的方法一顿乱脱,居然还给我脱下来了。庆幸之余,发到看雪去交流心得,才知道Upack的壳年代久远,为我等后出小辈不知。更为惭愧的是Upack的脱壳机早都有了。
我用的是Quick.Unpack.1.0.打开目标软件,程序会先进行一次查壳。
00:41:12 - Opened 传奇客星终结版.exe
Quick self analyze.... unknown
PESniffer EP Scan: Upack v0.24 - v0.27 beta / v0.28 alpha
选择OEP finders 中的 Upack,如图2所示。

图2
接着点UNPACK NOW ,现在脱壳就OK了。再去查壳,Microsoft Visual C++ 6.0。修复都不用了,程序直接运行。如图3所示。

图3
下面就来去他的NAG,下断点,BPX ShellExecuteA  F9运行一下看看效果。
00403630  > \A1 D8764000  MOV EAX,DWORD PTR DS:[4076D8]
00403635  .  8B0D DC764000 MOV ECX,DWORD PTR DS:[4076DC];
0040363B  .  8B15 D4764000 MOV EDX,DWORD PTR DS:[4076D4];
00403641  .  6A 01      PUSH 1    ; /IsShown = 1
00403643  .  50        PUSH EAX   ; |DefDir => ""
00403644  .  51        PUSH ECX   ; |Parameters => ""
00403645  .  52        PUSH EDX   ; |FileName => "http://www.hackeroo.com"
00403646  .  68 EC754000  PUSH 传奇客星.004075EC      ; |Operation = "open"
0040364B  .  6A 00      PUSH 0              ; |hWnd = NULL
0040364D  .  FF15 A8524000 CALL DWORD PTR DS:[<&shell32.ShellExecut>; \ShellExecuteA
不懂的可以查查API的资料表,直接把00403646 和 00403645 这两个地址NOP 就可以解决弹出网站的问题。
0040363B  .  8B15 D4764000 MOV EDX,DWORD PTR DS:[4076D4];
把4076D4 的数据传送到EDX寄存器,如果你跟到004076D4 看的话,就会发现这个地址的数据就是攻客的网站,所以,如果你想把弹出来网站修改成自己站点的话……你想?那我小小BS你一下。
下Messagebox 断没有断到,后来才发现都是用SendmessageA的。
00402CF0  .  A3 10774000  MOV DWORD PTR DS:[407710],EAX
00402CF5  .  A1 14774000  MOV EAX,DWORD PTR DS:[407714]
00402CFA  .  83F8 01     CMP EAX,1          //和一比较
00402CFD  .  7D 13      JGE SHORT 传奇客星.00402D12 //若大于或者等于就跳
00402CFF  .  6A 00      PUSH 0
00402D01  .  6A 00      PUSH 0
00402D03  .  68 F8744000  PUSH 传奇客星.004074F8
00402D08  .  E8 530C0000  CALL <JMP.&mfc42.#1200_?AfxMessageBox@@Y>
00402D0D  .  E9 D2000000  JMP 传奇客星.00402DE4
00402D12  >  A1 10774000  MOV EAX,DWORD PTR DS:[407710]//经过第一个判断跳到这
00402D17  .  83F8 01     CMP EAX,1      //继续和一比较
00402D1A  .  6A 00      PUSH 0
00402D1C  .  7D 11      JGE SHORT 传奇客星.00402D2F //若大于或者等于就跳
00402D1E  .  6A 00      PUSH 0
00402D20  .  68 DC744000  PUSH 传奇客星.004074DC
判断攻击目标和代理数,若大于等于则跳出警告,如果不大于1,就是不写,会提示“攻击太少”或者“代理太少”的警告。不过你有没有发现,攻客禁止别人使用这个软件攻击自己的网站,如图4所示。

图4
怎么?就允许你攻击别人?继续看代码。
00401AC4  .  6A 01      PUSH 1
00401AC6  .  E8 8F1E0000  CALL <JMP.&mfc42.#6334_?UpdateData@CWnd@>
00401ACB  .  8DB7 EC000000 LEA ESI,DWORD PTR DS:[EDI+EC]
00401AD1  .  6A 00      PUSH 0
00401AD3  .  68 7C724000  PUSH 传奇客星.0040727C                ;  ASCII "hackeroo.com"
00401AD8  .  8BCE       MOV ECX,ESI
00401ADA  .  E8 871E0000  CALL <JMP.&mfc42.#6663_?Find@CString@@QB>
00401ADF  .  85C0       TEST EAX,EAX
00401AE1  .  6A 00      PUSH 0
00401AE3  .  7E 0F      JLE SHORT 传奇客星.00401AF4
00401AE5  .  6A 00      PUSH 0
00401AE7  .  68 58724000  PUSH 传奇客星.00407258
00401AEC  .  E8 6F1E0000  CALL <JMP.&mfc42.#1200_?AfxMessageBox@@Y>
00401AF1  .  5F        POP EDI
00401AF2  .  5E        POP ESI
00401AF3  .  C3        RETN
00401AF4  >  68 48724000  PUSH 传奇客星.00407248                ;  ASCII "219.153.11.195"
00401AF9  .  8BCE       MOV ECX,ESI
00401AFB  .  E8 661E0000  CALL <JMP.&mfc42.#6663_?Find@CString@@QB>
00401B00  .  85C0       TEST EAX,EAX
00401B02  .  6A 00      PUSH 0
00401B04  .  7E 0F      JLE SHORT 传奇客星.00401B15
00401B06  .  6A 00      PUSH 0
00401B08  .  68 24724000  PUSH 传奇客星.00407224
00401B0D  .  E8 4E1E0000  CALL <JMP.&mfc42.#1200_?AfxMessageBox@@Y>
00401B12  .  5F        POP EDI
00401B13  .  5E        POP ESI
00401B14  .  C3        RETN
从代码00401AC4一直到00401BFB这一段可都是攻客保护的IP,估计是保护的SF的IP吧。输入这些IP 任意一个到攻击列表中,都会有提示的,如图5所示。

图5
找到地方要改就随便你了。我们看这几句。
00401AD3  .  68 7C724000  PUSH 传奇客星.0040727C  ;  ASCII "hackeroo.com"
00401AD8  .  8BCE       MOV ECX,ESI
00401ADA  .  E8 871E0000  CALL <JMP.&mfc42.#6663_?Find@CString@@QB>
00401ADF  .  85C0       TEST EAX,EAX       //比较
00401AE1  .  6A 00      PUSH 0
00401AE3  .  7E 0F      JLE SHORT 传奇客星.00401AF4  //若攻击目标没有自己的站跳下去继续判断
用UE打开,搜索ASCII “hackeroo.com”,如图6所示。

图6
现在就随便你改了,如图7所示。

图7
再看看效果,怎么样,hackeroo.com的站点加入到我们的攻击列表中去了。
                                         (完)

附件

OD调试传奇客星.rar (57 KB)

2006-8-16 18:07, 下载次数: 167

OD调试传奇客星.DOC 带图

取保候审中........

TOP

非常老的壳.
调试过程中会出现一次硬件断点.不用修复.
支持一下.适合我等菜鸟学习.

TOP

发新话题