
破解軟件如何破解,開(kāi)發(fā)者們對(duì)自己開(kāi)發(fā)的軟件進(jìn)行保護(hù)是很常見(jiàn)的行為,但是應(yīng)該沒(méi)有開(kāi)發(fā)者會(huì)覺(jué)得自己的軟件無(wú)法被破解,欲破解一軟件,首先應(yīng)該先用用想破解的這個(gè)軟件,了解一下功能是否有限制,下面來(lái)看看破解軟件如何破解。
1、破解示例程序介紹
本程序通過(guò)C++編寫,當(dāng)點(diǎn)擊“確定”按鈕時(shí),會(huì)獲取用戶輸入的用戶名及密碼進(jìn)行判斷,當(dāng)未輸入任何內(nèi)容點(diǎn)擊提交時(shí),系統(tǒng)會(huì)顯示“用戶名與密碼不能為空”。當(dāng)輸入用戶名和密碼與判斷數(shù)據(jù)“test”不符時(shí),系統(tǒng)會(huì)提示“用戶名或密碼錯(cuò)誤”,當(dāng)用戶名及密碼都為“test”時(shí),則提示“登錄成功”。詳細(xì)代碼如下圖:
測(cè)試示例源代碼
當(dāng)我們運(yùn)行crackMeText、exe程序時(shí),展現(xiàn)效果如下:
打開(kāi)效果
當(dāng)我們輸入內(nèi)容錯(cuò)誤(用戶名及密碼都不是test)時(shí),系統(tǒng)提示“用戶名或密碼錯(cuò)誤”。
登錄錯(cuò)誤
當(dāng)我們輸入內(nèi)容正確(用戶名及密碼都是test)時(shí),系統(tǒng)提示“登錄成功”。
登錄成功
以上是測(cè)試示例的簡(jiǎn)單介紹。
2、OD程序逆向分析介紹
我們可以打開(kāi)本地的OD程序,將示例系統(tǒng)拖入至OD即可,效果如下圖:
OD主線程模塊
左上為反匯編窗口,右上為寄存器窗口,左下為棧窗口,右下為數(shù)據(jù)窗口。
反匯編窗口:用戶顯示反匯編代碼,調(diào)試分析程序主要是就是在這個(gè)窗口進(jìn)行。
寄存器窗口:用戶顯示各個(gè)寄存器內(nèi)容,包括:通用寄存器、段寄存器、標(biāo)志寄存器等。
棧窗口:用戶顯示棧內(nèi)容,即ESP寄存器指向的地址部分。
數(shù)據(jù)窗口:多種方式顯示內(nèi)存中的`內(nèi)容,可以使用Hex、文本、短型、長(zhǎng)型、反匯編等。
由于內(nèi)容較多,我們可通過(guò)搜索ASCII查看字符串進(jìn)行快速定位,該操作位于插件->中文搜索引擎->搜索ASCII,具體如下圖:
OD搜索ASCLL
搜索完畢會(huì),會(huì)顯示中文搜索引擎內(nèi)容,我們雙擊選擇“登錄成功”,如下圖:
雙擊 “登錄成功”
雙擊后,便快速定位至“登錄成功”反匯編代碼段中,如下圖:
“登錄成功”反匯編
屆時(shí),我們可以查看該區(qū)域的局部匯編代碼。
3、OD程序動(dòng)態(tài)調(diào)試分析介紹
通過(guò)靜態(tài)查看反匯編代碼,使我們對(duì)其內(nèi)容有一定了解后,我們可以通過(guò)設(shè)置斷點(diǎn)進(jìn)行邏輯梳理。
點(diǎn)擊指定行,“右鍵”->斷點(diǎn)->切換,便可對(duì)指定行設(shè)置斷點(diǎn)。如下圖:
斷點(diǎn)設(shè)置
設(shè)置完畢后,我們點(diǎn)擊“運(yùn)行程序”,隨后示例程序便會(huì)啟動(dòng),我們可輸入test/test123,信息進(jìn)行斷點(diǎn)調(diào)試,如下圖:
用戶名及密碼信息錄入
點(diǎn)擊“確定”按鈕后,OD會(huì)鎖定指定斷點(diǎn)設(shè)置行,我們可通過(guò)“F8”進(jìn)行單步調(diào)試,如下圖:
斷點(diǎn)調(diào)試
上圖為JNZ判斷(后期我會(huì)寫一篇關(guān)于逆向的基礎(chǔ)知識(shí)),當(dāng)?shù)扔?時(shí)跳轉(zhuǎn)至012318D6位置。
判斷不滿足后,會(huì)跳入到 012318D6位置,如下圖:
入棧
繼續(xù)按“F8”后,會(huì)進(jìn)入PUSH “用戶名或密碼錯(cuò)誤”行。
告警內(nèi)容入棧
最后執(zhí)行到call代碼后,我們打開(kāi)測(cè)試程序時(shí),發(fā)現(xiàn)彈出了“用戶名或密碼錯(cuò)誤”對(duì)話框。
登錄錯(cuò)誤對(duì)話框
通過(guò)設(shè)置斷點(diǎn)后逐步調(diào)試,我們對(duì)程序執(zhí)行有個(gè)更深入的了解,隨后我們便可以對(duì)匯編內(nèi)容進(jìn)行修改。
4、匯編內(nèi)容修改
我的繞過(guò)思路是,將if語(yǔ)句中最后的密碼判斷直接繞過(guò)(strcmp(password,"test")==0),也就是只需要用戶名輸入正確即可。找到該語(yǔ)句的對(duì)應(yīng)位置后,雙擊指定行(00851897處),如下圖:
00851897原始內(nèi)容
我們將該處內(nèi)容修改為 je 000118CD,即若為1時(shí),跳轉(zhuǎn)至000118CD處(為登錄正確內(nèi)容位置)。當(dāng)我們?cè)俅芜\(yùn)行程序輸入test(用戶名)/123(密碼)時(shí),系統(tǒng)提示“登錄成”。
00851897內(nèi)容修改
通過(guò)以上步驟,我們就可以通過(guò)修改匯編內(nèi)容,繞過(guò)示例程序登錄判斷。該方式只是通過(guò)內(nèi)存形式進(jìn)行修改,并未實(shí)際修改原始示例程序,我們可通過(guò)存盤的形式進(jìn)行修改。選中修改的反匯編代碼行,“右鍵”->復(fù)制到可執(zhí)行文件->選擇,如下圖:
復(fù)制到可執(zhí)行文件
隨后我們會(huì)跳轉(zhuǎn)至文件對(duì)話框中,如下圖:
文件對(duì)話框
在該頁(yè)面我們,“右鍵”->保存文件,便可將已修改的文件另存為exe,如下圖:
程序保存
修改生成后的exe再運(yùn)行時(shí),便可實(shí)現(xiàn)上面我們修改后的效果,只需要輸入正確用戶名test即可(密碼隨便輸入)。
一、了解軟件授權(quán)的類型
在破解軟件授權(quán)之前,我們需要了解軟件授權(quán)的類型。一般來(lái)說(shuō),軟件授權(quán)分為三種類型單機(jī)授權(quán)、網(wǎng)絡(luò)授權(quán)和浮動(dòng)授權(quán)。單機(jī)授權(quán)是指只能在一個(gè)計(jì)算機(jī)上使用,網(wǎng)絡(luò)授權(quán)是指可以在多臺(tái)計(jì)算機(jī)上使用,但是需要連接到服務(wù)器驗(yàn)證授權(quán),浮動(dòng)授權(quán)是指可以在多臺(tái)計(jì)算機(jī)上使用,但是需要授權(quán)人員的手動(dòng)授權(quán)。不同類型的授權(quán)方式需要不同的破解方法。
二、使用破解工具
破解軟件授權(quán)的方法有很多種,其中常用的方法是使用破解工具。破解工具可以通過(guò)修改軟件的'注冊(cè)表、替換授權(quán)文件等方式來(lái)實(shí)現(xiàn)破解。常見(jiàn)的破解工具有“PEiD”、“OllyDbg”、“ID Pro”等。
三、修改授權(quán)文件
修改授權(quán)文件是另一種常用的破解方法。授權(quán)文件通常是一個(gè)以、dat或、lic為后綴的文件,其中包含了軟件的授權(quán)信息。通過(guò)修改授權(quán)文件中的授權(quán)信息,就可以實(shí)現(xiàn)軟件授權(quán)的破解。
四、使用虛擬機(jī)
使用虛擬機(jī)也是一種破解軟件授權(quán)的方法。虛擬機(jī)可以模擬出一個(gè)完整的計(jì)算機(jī)系統(tǒng),包括硬件和操作系統(tǒng)。通過(guò)在虛擬機(jī)中安裝軟件,就可以避免軟件授權(quán)的限制。不過(guò),這種方法需要一定的計(jì)算機(jī)技術(shù)水平和硬件資源支持。
第一種技巧:使用RAR密碼破解軟件
首先,我們可以嘗試使用RAR密碼破解軟件來(lái)破解RAR文件密碼。這些軟件通常具有高效快速的密碼破解功能,可以在很短的時(shí)間內(nèi)完成RAR文件密碼的破解。以下是一些常用的RAR密碼破解軟件:
1、 PassFab for RAR:這是一款功能強(qiáng)大的RAR密碼破解軟件,支持多種RAR文件格式,可以通過(guò)四種不同的攻擊方式(暴力破解、字典攻擊、組合攻擊和掩碼攻擊)破解RAR文件密碼。
2、 WinRAR Password Remover: 這款RAR密碼破解軟件能夠幫助你快速破解RAR文件密碼。它提供了暴力破解、字典攻擊和智能模式三種破解模式,適用于各種密碼難度。
3、 RAR Password Cracker:這是一款功能強(qiáng)大的RAR密碼破解軟件,支持多種RAR文件格式,可以通過(guò)四種不同的攻擊方式(暴力破解、字典攻擊、組合攻擊和掩碼攻擊)破解RAR文件密碼。
第二種技巧:使用命令提示符破解RAR文件密碼
如果你不想使用RAR密碼破解軟件,你還可以嘗試使用命令提示符破解RAR文件密碼。這需要你先打開(kāi)CMD窗口,然后輸入以下命令:
1、 rar c -p[password] test、rar:通過(guò)這個(gè)命令可以創(chuàng)建一個(gè)加密的RAR文件,并且可以設(shè)置密碼。
2、 rar e -p[password] test、rar:通過(guò)這個(gè)命令可以通過(guò)密碼解壓縮已有的`RAR文件。
3、 rar x -p[password] test、rar:通過(guò)這個(gè)命令可以通過(guò)密碼解壓縮已有的RAR文件,并將解壓縮后的文件保存到指定目錄中。
第三種技巧:使用在線RAR密碼破解工具
最后,如果你對(duì)RAR密碼破解軟件感到不放心,或者不想下載任何軟件,那么你還可以嘗試使用在線RAR密碼破解工具。以下是一些常用的在線RAR密碼破解工具:
1、 RAR Password Recovery Online:這是一款免費(fèi)的在線RAR密碼破解工具,可以幫助你快速破解RAR文件密碼。
2、 OnlineHashCrack:這是一款功能強(qiáng)大的在線RAR密碼破解工具,支持多種RAR文件格式,可以通過(guò)暴力破解和字典攻擊兩種攻擊方式破解RAR文件密碼。
文檔為doc格式