解決SoftIce和Skype的問題(albertyi原創)

昨天爲了試驗破解軟件,裝了SoftIce,結果今天早上想和我的親親貝貝用skype聊天的時候,發現出了問題,skype一啓動就報錯"Skype is not compatible with system debuggers like SoftICE",然後就退出,我這個急啊。。。。

決定用OllyDbg搞定這個skype,應爲skype報錯的時候是彈出messagebox,所以要再messagebox之類的函數處設置端點。

首先用OllyDbg載入skype,首先用Alt-E調出"Executable modules"窗口,選中user32,
Ctrl-N調出"Names in user32"窗口,分別選中MessageBoxA、MessageBoxExA、
MessageBoxExW並按F2設置斷點。按F9運行,攔截住MessageBoxA。Alt-K查看調用棧
回溯,"Called from"欄顯示Skype.00E78062,查看該地址附近代碼:

00E7804B   . E8 181A74FF    CALL 復件_Sky.005B9A68
00E78050   . 84C0           TEST AL,AL
00E78052   . 74 1A          JE SHORT 復件_Sky.00E7806E
00E78054   . 6A 00          PUSH 0                                   ; /Style = MB_OK|MB_APPLMODAL
00E78056   . 68 1C8CE700    PUSH 復件_Sky.00E78C1C                     ; |Title = "Skype"
00E7805B   . 68 248CE700    PUSH 復件_Sky.00E78C24                     ; |Text = "Skype is not compatible with system debuggers like SoftICE."
00E78060   . 6A 00          PUSH 0                                   ; |hOwner = NULL
00E78062   . E8 7D0A59FF    CALL <JMP.&user32.MessageBoxA>           ; /MessageBoxA

懷疑只需修改那個je指令即可。在0x00E7E8D8處按F2設置斷點,按Ctrl-F2重新加載
Skype.exe。剛設置的這個斷點在Skype.exe中,不在動態鏈接庫中,重新加載後斷點
仍在。按F9運行,斷點命中,此時AL爲0x01,在OllyDbg中動態修改AL爲0,按F9繼續
運行,發現Skype已經啓動起來了。

應爲程序load到ollydbg中,是從0040c000開始,而靜態的是從00000000開始
所以要算出偏移地址:用00E7E8DA- 00400c00 = A7DCDA
用ultraEdit打開skype文件,找到A7DCDA修改74 1A 爲 EB 1A即可。

另外我的skype版本信息爲

build time:6.07.2005 16:46:56

company name:Skype Technologies S.A.

version: 1.3

不同版本,地址可能會有不同。

本人破解緊緊爲了救急,請不要效仿,謝謝。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章