蜀門Online加密分析

來源:互聯網
上載者:User
 分析僅僅是為了娛樂而已,遊戲也不難。有錯誤就不好意思了。

       這個遊戲加了個TMD的殼,會關閉調試連接埠,在核心裡面打個補丁就好了。        首先找到收報和發包明文的地址。如果遊戲更新地址不對,請用特徵碼重新找:          收報HOOK地址:     009A6C60 /$ 56            push    esi 009A6C61 |. 8BF1          mov     esi, ecx 009A6C63 |. 8B46 10       mov     eax, dword ptr [esi+10] 009A6C66 |. 8B80 DC000000 mov     eax, dword ptr [eax+C4] 009A6C6C |. 57            push    edi 009A6C6D |. 50            push    eax                              ; 解秘資料buffer 009A6C6E |. E8 5DF2FFFF   call    009A5ED0                         ; ----hook recv這裡 009A6C73 |. 84C0          test    al, al 009A6C75 |. 74 47         je      short 009A6CBE 009A6C77 |. 8B7C24 0C     mov     edi, dword ptr [esp+C] 009A6C7B |. EB 03         jmp     short 009A6C80 009A6C7D |   8D49 00       lea     ecx, dword ptr [ecx] 009A6C80 |> 8B4E 10       /mov     ecx, dword ptr [esi+10] 009A6C83 |. 8B89 DC000000 |mov     ecx, dword ptr [ecx+DC] 009A6C89 |. 57            |push    edi 009A6C8A |. E8 C1DFFFFF   |call    009A4C50 009A6C8F |. 8B56 10       |mov     edx, dword ptr [esi+10] 009A6C92 |. 8B8A DC000000 |mov     ecx, dword ptr [edx+DC] 009A6C98 |. E8 C3DEFFFF   |call    009A4B60                        ; lwgucky 009A6C9D |. 84C0          |test    al, al 009A6C9F |. 74 24         |je      short 009A6CC5 009A6CA1 |. 57            |push    edi 009A6CA2 |. 8BCE          |mov     ecx, esi 009A6CA4 |. E8 27FAFFFF   |call    009A66D0 009A6CA9 |. 8B46 10       |mov     eax, dword ptr [esi+10] 009A6CAC |. 8B80 DC000000 |mov     eax, dword ptr [eax+DC] 009A6CB2 |. 50            |push    eax 009A6CB3 |. 8BCE          |mov     ecx, esi 009A6CB5 |. E8 16F2FFFF   |call    009A5ED0 009A6CBA |. 84C0          |test    al, al 009A6CBC |.^ 75 C2         jnz     short 009A6C80 009A6CBE |> 5F            pop     edi 009A6CBF |. 32C0          xor     al, al 009A6CC1 |. 5E            pop     esi 009A6CC2 |. C2 0400       retn    4   發包HOOK的地方:       009A65E0 /$ 56            push    esi 009A65E1 |. 8BF1          mov     esi, ecx 009A65E3 |. 83BE F0000000>cmp     dword ptr [esi+F0], 3 009A65EA |. 74 06         je      short 009A65F2 009A65EC |. 32C0          xor     al, al 009A65EE |. 5E            pop     esi 009A65EF |. C2 0C00       retn    0C 009A65F2 |> 8B4424 08     mov     eax, dword ptr [esp+8] 009A65F6 |. 8B4E 10       mov     ecx, dword ptr [esi+10] 009A65F9 |. 8B89 D8000000 mov     ecx, dword ptr [ecx+D8] 009A65FF |. 57            push    edi 009A6600 |. 50            push    eax                                    ; [eax+010]=資料長度;d [eax+0c]=資料; 009A6601 |. E8 AAE5FFFF   call    009A4BB0 009A6606 |. 807C24 14 00 cmp     byte ptr [esp+14], 0 009A660B |. 8B56 10       mov     edx, dword ptr [esi+10] 009A660E |. 8B82 D8000000 mov     eax, dword ptr [edx+D8] 009A6614 |. 8B88 14FB0000 mov     ecx, dword ptr [eax+FB14] 009A661A |. 66:8B96 56010>mov     dx, word ptr [esi+156]                 ; 包序號 009A6621 |. 66:8911       mov     word ptr [ecx], dx 009A6624 |. 8B46 10       mov    eax, dword ptr [esi+10] 009A6627 |. 8B88 D8000000 mov     ecx, dword ptr [eax+D8] 009A662D |. 8BB9 0CFB0000 mov     edi, dword ptr [ecx+FB0C] 009A6633 |. 74 07         je      short 009A663C 009A6635 |. E8 16E5FFFF   call    009A4B50 009A663A |. EB 30         jmp     short 009A666C 009A663C |> 807E 0D 00    cmp     byte ptr [esi+D], 0 009A6640 |. 74 05         je      short 009A6647 009A6642 |. E8 19E4FFFF   call    009A4A60 009A6647 |> 80BE 54010000>cmp     byte ptr [esi+154], 0 009A664E |. 74 1C         je      short 009A666C 009A6650 |. 8B8E 4C010000 mov     ecx, dword ptr [esi+14C] 009A6656 |. 8B46 10       mov     eax, dword ptr [esi+10] 009A6659 |. 51            push    ecx                                    ; 加密長度 009A665A |. 8B88 D8000000 mov     ecx, dword ptr [eax+D8]                ; 加密資料 009A6660 |. 8D96 2C010000 lea     edx, dword ptr [esi+12C]               ; d [[0FC2CC0]+040]+012c;[[[0FC2CC0]+040]+064+4]=sockethandle 009A6666 |. 52            push    edx                                    ; 加密種子 009A6667 |. E8 44E3FFFF   call    009A49B0                               ; 加密 -----hook send這裡 00A6F21C    8B4E 10         mov     ecx, dword ptr [esi+10] 00A6F21F    8B81 C0000000   mov     eax, dword ptr [ecx+C0] 00A6F225    8B88 0CFB0000   mov     ecx, dword ptr [eax+FB0C] 009A667B |. 51            push    ecx                                    ; len 009A667C |. 83C0 04       add     eax, 4 009A667F |. 50            push    eax                                    ; buffer 009A6680 |. 8BCE          mov     ecx, esi 009A6682 |. E8 19FDFFFF   call    009A63A0                               ; 發送加密 009A6687 |. 84C0          test    al, al 009A6689 |. 75 05         jnz     short 009A6690 009A668B |. 5F            pop     edi 009A668C |. 5E            pop     esi        通過 hook 這個兩個函數,通過分析協議,已經能夠做一個基於封包的內掛了。需要多說一嘴的是,如果你直接分析包,可能會發現找包的類型標示不容易,包標示是通過包的第二個WORD位元組標示的,具體演算法大概是就是第二個WORD % 8了。。(忘記了。)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.