VB黑客程式的暴破(修改)一例 (9千字)
VB黑客程式的暴破(修改)一例
好久沒有製造垃圾了,昨晚和網友拼火,無意中找到個有趣的東東名曰:獨裁者
Autocrat DDos client 版本:v1.26.59。為了讓它更有趣,就產生了這篇破破文。。。
軟體名稱:獨裁者 Autocrat
DDos client
軟體版本:v1.26.59
執行平臺:windows98/2000/xp
軟體作用:差點忘了說,看名字就知道了,這是在網路上進行DDos攻擊用的,真的很有趣。。。呵呵。。。
破解目的:軟體的主機列表框中,最多隻允許新增十臺主機(威力不夠),老大大一個文字框,多浪費,所以目的是解除最多隻能新增十臺主機的限制。
宣告:本文的目的只是想說明正確設斷對暴破VB程式的重要性,如果哪裡說錯了,請各位指出。
下載地址:ftp://eyy.vicp.net/bluearc/Client.rar
哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪BEGIN哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪
1、用peid 0.8開啟程式檔案:Client.exe
顯視:VB6.0 說明沒加殼。。。暗喜。。。
2、用w32dasmgold
反彙編。
3、在w32dasmgold 的介面使用串式參考檢視,唉,真失望。果然是亂七八糟的一片。。。亂碼迷人眼。。。面對茫茫碼海,字串參考又看不出什麼名堂。。。到哪找我要的東東呀。。。殭屍。。。哦不,是僵局。
4、經過了一番思索,初步列出了破解思路:在程式中新增主機時,如果超過十臺,則程式會彈出“已經超過主機上限,禁止新增!”的訊息框。所以應該道先從彈出訊息框的地方著手。。。想到這裡。。。我立即用CTRL+D撥出等候多時的Softice。。。。
5、設斷:bpx messageboxa .....開啟主程式--新增主機---直到彈出訊息框。。。可是卻什麼也攔不到。。。隨後我又試了有關攔截訊息框和對話方塊的幾個常用斷點,包括messageboxexa、messageboxindirecta、dialogbox等。。。都是一無所獲。。。正在納悶時,我突然想起:這不是VB程式嗎?VB程式不是有幾個專用斷點的嘛。。。想到這裡,我立即撥出Softice,設斷:bpx
msvbvm60!rtcmsgbox按下“新增”,沒有攔住,但是當我再次按下“新增”時。。。程式被擋,bc* ...當我企圖按F12回到程式的領空時,“當!”。。。“已經超過主機上限,禁止新增!”。。。。不過別急,此時你按下對話方塊上的確定鍵後又自動回到了Softice的控制之中。。。按CTRL+向上箭頭。。。回到了下面的地方:
。。。。。。。
0167:004109E9 LEA EAX,[EBP-4C]
0167:004109EC PUSH
EDX
0167:004109ED PUSH
EAX
0167:004109EE LEA ECX,[EBP-3C]
0167:004109F1
PUSH 30
0167:004109F3 PUSH
ECX
0167:004109F4 CALL
[MSVBVM60!rtcMsgBox]
注意這裡! “已經超過主機上限,
0167:004109FA LEA
EDX,[EBP-6C]
禁止新增!”
0167:004109FD LEA EAX,[EBP-5C]
0167:00410A00 PUSH
EDX
。。。。。。。
呵呵,真是天助。這裡正是我想找的地方。。。 0167:004109F4 CALL
[MSVBVM60!rtcMsgBox] 這裡就是彈出限制提示的地方,現在要做的就是找到呼叫這段子程式的地方,然後。。。呵呵。。。
6、用w32dasmgold開啟程式檔案,使用轉到程式碼位置功能,來到004109F4的地方。
。。。。。。。。。。。。
* Referenced by a (U)nconditional or (C)onditional Jump
at Address:
|:00410470(C)
<------------------看看是誰呼叫了我???
|
* Reference To: MSVBVM60.__vbaVarDup, Ord:0000h
|
:00410988 8B3558114000
mov esi, dword ptr [00401158]
:0041098E B904000280
mov ecx, 80020004
:00410993 894D9C
mov dword ptr [ebp-64], ecx
:00410996 B80A000000 mov eax,
0000000A
:0041099B 894DAC
mov dword ptr [ebp-54], ecx
:0041099E 8D9544FFFFFF
lea edx, dword ptr [ebp+FFFFFF44]
:004109A4 8D4DB4
lea ecx, dword ptr [ebp-4C]
:004109A7 894594
mov dword ptr [ebp-6C], eax
:004109AA 8945A4
mov dword ptr [ebp-5C], eax
。。。。。。。。。。。。
* Reference To: MSVBVM60.rtcMsgBox, Ord:0253h
|
:004109F4 FF1574104000
Call dword ptr [00401074]-------------------就這裡了,nop掉不會彈出。
:004109FA 8D5594
lea edx, dword ptr [ebp-6C]
但解決不了問題。
:004109FD 8D45A4
lea eax, dword ptr [ebp-5C]
:00410A00 52
push edx
:00410A01 8D4DB4
lea ecx, dword ptr [ebp-4C]
:00410A04 50
push eax
:00410A05 8D55C4
lea edx, dword ptr [ebp-3C]
:00410A08 51
push ecx
:00410A09 52
push edx
:00410A0A 6A04
push 00000004
。。。。。。。。。。。。。。
跳到004109F4後,再使用查詢文字功能,向上查詢00410470,就來到了呼叫這段子程式的地方:
。。。。。。。。
* Reference
To: MSVBVM60.__vbaFreeObj, Ord:0000h
|
:00410467 FF1594114000 Call dword
ptr [00401194]
:0041046D 663BF3
cmp si, bx <-----------------程式文字框內資訊的行數是否等於10
:00410470 0F8412050000 je 00410988
<-----------------等於則彈出限制提示。
看來這裡就是關鍵之處了,馬上用hiew開啟程式檔案,改00410470 0F8412050000
je 00410988
為00410470 0F8012050000 j0 00410988 (為什麼要將上面的00410470
0F8412050000改為00410470 0F8012050000而不是00410470 0F8512050000或是nop掉呢?這裡有幾個小問題,1、如果改為00410470
0F8512050000,即文字行數不等於10則跳轉到彈出限制的地方,那麼如果程式文字框的IPf地址的行數只要小於或不等於10行都要報錯。2、如果改為nop,那麼要好多90,並且這樣改的話肯定出錯,為什麼出錯我也不知道,請高手指點。3、改為00410470
0F8012050000呢?即溢位轉移。也許朋友們會問了,這不是風馬牛不相關嗎?是啊,笨人想笨辦法嘛。。。這裡就是要讓它不相關,讓它永遠都不可能轉到004109F4
FF1574104000 Call dword ptr [00401074]的地方去),按F9存檔。開啟程式試執行,按下新增主機按鈕,已經不會彈出“已經超過主機上限,禁止新增!”的提示了,不過先別高興的太早,當你往彈出的輸入框裡隨便輸入IP地址按確定時,你會發現,雖然程式沒有報錯,但文字框中的IP地址行數還是10行,仍然不能新增。此程式的破解工作一度陷入殭屍,哦不,僵局。
7、又經過了一番思索,想到了一此東西:程式檢驗行數是否已經達到十行,如果到了你還要新增的話則先彈出錯誤提示框,然後不進行操作。想到這裡,立即對可能的情況作了一些模擬,其中最有可能的情況VB簡單模擬應該是:
Dim b
b=文字框中使用者實際新增的文字行數
Private Sub 新增按鈕_Click()
if b=10 then ' 判斷是否達到上限10
msgbox" 已經超過主機上限,禁止新增!"
exit
sub '什麼也不做
else
b=b+1'這裡是代替一下,意思是允許向文字框繼續寫入IP地址,具體實現與本案無關
end if
End Sub
分析:假如真是這樣的話,那麼在程式作出判斷時是一定會產生記憶體拷貝動作的。。。
8、開啟主程式,點選新增按鈕,輸入任意IP,然後按CTRL+D撥出Softice,下萬能斷點 bpx
hmemcpy-----F5-------單擊確定。程式馬上被攔,我不知耐心地按了多少次F12後來到了下面的地方(即程式領空):
。。。。。。。。。。。。。。。
0167:00410507 PUSH EDX
0167:00410508
LEA ECX,[EBP-3C]
0167:0041050B PUSH EAX
0167:0041050C PUSH ECX
0167:0041050D
CALL [MSVBVM60!rtcInputBox]
0167:00410513 MOV ESI,[MSVBVM60!__vbaStrMove]
0167:00410519 MOV EDX,EAX
0167:0041051B
LEA ECX,[EBP-18]
0167:0041051E CALL ESI
。。。。。。。。。。。。。。
9、一路F10一路看。。。不知不覺走了下來,突然我眼前一亮,不就是這裡嗎?
。。。。。。。。。。。。。
0167:004105BD LEA ECX,[EBP-28]
^
0167:004105C0
MOV [EBP-011C],AX
^
0167:004105C7 CALL [MSVBVM60!__vbaFreeObj]
0167:004105CD CMP WORD PTR
[EBP-011C],00
0167:004105D5 JE
004108B0
<----------注意這裡,和我剛才的模擬剛好一樣。
0167:004105DB LEA EDX,[EBP-00AC]
0167:004105E1 LEA
ECX,[EBP-3C]
0167:004105E4 MOV DWORD PTR [EBP-00A4],00407FC4
0167:004105EE MOV DWORD PTR [EBP-00AC],00000008
v
0167:004105F8 CALL EBX
。。。。。。。。。。。。。。
不用多說了吧。。。馬上用hiew開啟程式檔案,改 0167:004105D5
JO 004108B0 這裡也是和前面一樣,只能將等於轉移改為溢位轉移即將0F84D5020000 改為0F80D5020000
。
看來這個推斷來八九不離十。。。呵呵。。。
10、整個世界清靜了。。。不信你試試。
11、總結:經過此次破解經過,得出了以下結論:只要解得其法,VB程式就一點也不可怕
:)
12、謝謝觀看
哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪THE
END哪哪哪哪哪哪哪哪哪哪哪哪哪哪哪
~~~~~~~~~~~~~~~~~~~~~~~~~~轉載請保持完整性~~~~~~~~~~~~~~~~~~~~~~
作者:飛龍狗狗 email:bluearc_arc@hotmail.com
QQ:40116000
主頁:http://www.bleuarc.net
相關文章
- 關於破解以p-code方式編譯的VB程式一例 (2千字)2002-04-01編譯
- 利用VB的函式快速破解VB程式! (2千字)2001-11-03函式
- 修改指標法破解VB程式 騰圖影視'97 (14千字)2001-07-25指標
- winrar2.71的破解和對暴破的一點想法 (4千字)2001-04-16
- 暴破-AQUA 3D Screen Saver v1.5-水族館屏保程式
(15千字)2002-05-053D
- 談談VB程式的破解 (5千字)2002-10-28
- 修改指標法破解VB程式-Fast PC Linker-III (8千字)2001-06-29指標AST
- 破traceboy2.0 高手勿看! (9千字)2001-01-29
- 班門弄斧之暴破檔案整容專家 3.0 (6千字)2001-10-09
- 班門弄斧之暴破網頁特效小精靈 (6千字)2001-10-10網頁特效
- VB程式設計師眼中的C# 9 (轉)2007-12-07程式設計師C#
- EasyBoot5.03脫殼+暴破2004-11-17boot
- *輔助工具 1.0 Encrypt by Stkman
完美暴破(應該只能用暴力了) (11千字)2002-04-03
- 無名小兵V1.45
VB5 PCODE的破文一篇 (16千字)2002-07-06
- 用Ollydbg破解全功能數字時鐘(想學用Ollydbg破VB的必看!) (1千字)2001-11-03
- flashget
1.40 的粗略分析和探討.[修改版] (9千字)2003-01-12
- 給電腦裝個監視器--VB程式設計一例 (轉)2008-07-07程式設計
- 掀開高階遊戲黑客的面紗,教你打造遊戲修改器 (10千字)2015-11-15遊戲黑客
- 我的PE程式加密核心程式碼(MASM 6.0) (9千字)2015-11-15加密ASM
- 大數計算器的VB程式碼,其實肯去發掘,VB能幹很多東西。 (15千字)2015-11-15
- 貼一篇不完整的――從SemCAD1.4的暴破談FlexLM 7.2保護的破解
(10千字)2002-06-06Flex
- mysql 引數修改 一例2011-09-20MySql
- MIDI軟體COMPOSER2.0暴破2002-01-14
- 來一篇VB的破解教程,看看作者的斷點下到了什麼地方,得好好消化消化了,嘿嘿,喜歡VB的和痛恨VB的都來看看...
(9千字)2001-12-30斷點
- STEP7KNOW_HOW_PROTECT
version1.0 (Borland C++編寫) 暴破手記 (14千字)2002-10-26C++
- 做不來序號產生器,只好暴破Windows優化大師V4.3 (4千字)2001-11-02Windows優化
- 看一段VB6程式檢查時間的典型程式碼 (2千字)2000-12-28
- 基於python的多執行緒暴破指令碼2017-02-23Python執行緒指令碼
- 破解RamDisk9xMe的安裝程式 (3千字)2001-10-07
- XDos v1.1~Dos的外殼程式 (9千字)2015-11-15
- 用DeDe v2.5破Dephi程式Fast Browser (7千字)2001-10-30AST
- 衝擊波1.02源程式 (9千字)2001-11-15
- 黑客與畫家:一場來自矽谷的頭腦風暴2011-12-21黑客
- 《奧數2000》註冊碼的計算(VB5程式)
(6千字)2015-11-15
- VB輸入限制的記憶體破解 (2千字)2003-04-28記憶體
- 如何對登入介面加密欄位進行暴破?2022-08-25加密
- 這是我今天破出來的第一個軟體,呵呵,平安夜的早晨很冷的 (9千字)2001-12-24
- 高收益的笨辦法:暴破在Windows提權中的應用2018-06-06Windows