|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
|
主題工具 | 顯示模式 |
2006-02-13, 12:52 PM | #1 |
榮譽會員
|
破解eBookStudio
破解eBookStudio
【破文標題】破解eBookStudio 【破文作者】yijun 【作者郵信箱】yijun8354@sina.com 【破解工具】ollyice,peid0.94 【破解平台】XP 【軟體名稱】eBookStudio 【軟體大小】2.5M 【原版下載】http://www.thespringsoft.com/products/ebookmaker/release/1.1/ebs11.exe 【保護方式】Armadillo 1.xx - 2.xx -> Silicon Realms Toolworks [Overlay] 【軟體簡介】一款電子書製作工具,還有加密功能!!! ------------------------------------------------------------------------ 設定Ollydbg忽略所有異常。 OD載入程序eBookStudio.exe: 005A80B9 >/$ 55 push ebp 005A80BA |. 8BEC mov ebp, esp 005A80BC |. 6A FF push -1 005A80BE |. 68 68025C00 push 005C0268 005A80C3 |. 68 007B5A00 push 005A7B00 ; SE 處理程序安裝 下BP OpenMutexA斷點F9: 7C80EC1B > 8BFF mov edi, edi 7C80EC1D 55 push ebp 7C80EC1E 8BEC mov ebp, esp 7C80EC20 51 push ecx 7C80EC21 51 push ecx 7C80EC22 837D 10 00 cmp dword ptr [ebp+10], 0 7C80EC26 56 push esi 此時堆疊為: 0012F5B8 005A190C /CALL 到 OpenMutexA 來自 eBookStu.005A1906 0012F5BC 001F0001 |Access = 1F0001 0012F5C0 00000000 |Inheritable = FALSE 0012F5C4 0012FBF8 \MutexName = "D3C:AA19B8698" //記下0012FBF8這個值! Ctrl+G:401000 輸入: 00401000 60 pushad 00401001 9C pushfd 00401002 68 F8FB1200 push 12FBF8 //剛才記下的值 00401007 33C0 xor eax,eax 00401009 50 push eax 0040100A 50 push eax 0040100B E8 B5A6A577 call kernel32.CreateMutexA 00401010 9D popfd 00401011 61 popad 00401012 - E9 7A13A677 jmp kernel32.OpenMutexA (註:二進制程式碼為:60 9C 68 F8 FB 12 00 33 C0 50 50 E8 2F DB 40 7C 9D 61 E9 04 DC 40 7C) 將401000設為新EIP,F9斷在OpenMutexA處,取消該斷點,然後來到401000處撤消剛才的輸入程式碼。 下BP GetModuleHandleA斷點並執行,斷在以下地方: 7C80B529 > 8BFF mov edi, edi 7C80B52B 55 push ebp 7C80B52C 8BEC mov ebp, esp 7C80B52E 837D 08 00 cmp dword ptr [ebp+8], 0 7C80B532 74 18 je short 7C80B54C 7C80B534 FF75 08 push dword ptr [ebp+8] 7C80B537 E8 682D0000 call 7C80E2A4 7C80B53C 85C0 test eax, eax 7C80B53E 74 08 je short 7C80B548 F9 十次,將會在堆疊看到: 0012DEF8 003D4B82 /CALL 到 GetModuleHandleA 來自 003D4B7C 0012DEFC 00000000 \pModule = NULL 清除斷點ALT+F9: 003D4B82 8B4D 08 mov ecx, [ebp+8] ; //返回到這裡 003D4B85 3BC8 cmp ecx, eax 003D4B87 75 07 jnz short 003D4B90 003D4B89 B8 18D33E00 mov eax, 3ED318 003D4B8E EB 30 jmp short 003D4BC0 003D4B90 393D D8D73E00 cmp [3ED7D8], edi 003D4B96 B8 D8D73E00 mov eax, 3ED7D8 003D4B9B 74 0C je short 003D4BA9 //JE改為JMP 003D4B9D 3B48 08 cmp ecx, [eax+8] 003D4BA0 74 1B je short 003D4BBD 003D4BA2 83C0 0C add eax, 0C 003D4BA5 3938 cmp [eax], edi ALT+M在401000位址上下記憶體訪問斷點後F9: 005753A0 55 push ebp //此時可以看見此處程式碼是紅色,移除記憶體斷點後在此直接用OD插件脫殼(選重建輸入表)!!! 005753A1 8BEC mov ebp, esp 005753A3 83C4 F0 add esp, -10 005753A6 B8 E04C5700 mov eax, 00574CE0 005753AB E8 C015E9FF call 00406970 005753B0 A1 70AC5700 mov eax, [57AC70] 005753B5 8B00 mov eax, [eax] 005753B7 E8 ECB1EFFF call 004705A8 005753BC 8B0D 70AC5700 mov ecx, [57AC70] ; eBookStu.0057BB7C 005753C2 8B09 mov ecx, [ecx] 005753C4 B2 01 mov dl, 1 005753C6 A1 44874A00 mov eax, [4A8744] 005753CB E8 FC2AEFFF call 00467ECC 005753D0 8B15 38AD5700 mov edx, [57AD38] ; eBookStu.0057C8E8 005753D6 8902 mov [edx], eax 005753D8 A1 38AD5700 mov eax, [57AD38] 005753DD 8B00 mov eax, [eax] 005753DF E8 A876EFFF call 0046CA8C 005753E4 A1 38AD5700 mov eax, [57AD38] 005753E9 8B00 mov eax, [eax] 005753EB 8B10 mov edx, [eax] 脫殼後該程序可以直接執行並且已經是註冊版了^_^ ------------------------------------------------------------------------ 我本來參考csjwaman大俠的「聯眾台球聖手v4.7試用版-ARM3.60雙工作非標準殼」一文,原文位址:http://bbs.pediy.com/showthread.php?...到Armadillo 1.xx - 2.xx -> Silicon Realms Toolworks [Overlay]實際應為ARM3.60雙工作非標準殼。我參考了很久都沒搞明白,結果還是照著原來脫Armadillo 1.xx - 2.xx -> Silicon Realms Toolworks的思法去搞才解決,期待高人指點^_^ 題外話:以前也脫過Armadillo 1.xx - 2.xx的殼不過不很成功,雖然可以用PEID查出軟體是何種語言編寫但是不能執行,更倒霉的是還被作者告了黑狀,哎~~~~~~~~~~~~~不過今天終於把這個殼搞定了!!! |
__________________ |
|
送花文章: 3,
|