飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 10513|回复: 39

[原创] 打狗棒------一只土狗 简单脱壳分析

  [复制链接]
  • TA的每日心情
    开心
    2016-6-16 14:07
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    发表于 2007-8-12 00:07:07 | 显示全部楼层 |阅读模式
    【破文标题】一只土狗 简单脱壳分析
    【破文作者】飘云[PYG]
    【作者邮箱】piaoyun04@163.com
    【作者主页】www.chinapyg.com
    破解工具】Peid0.94,OllyDbg,LordPE,Import REC
    【破解平台】Win9x/NT/2000/XP
    【软件名称】CrackMe
    【软件大小】328kb
    【原版下载】https://www.chinapyg.com/viewthread.php?tid=16246
    【保护方式】狗狗
    【软件简介】应该是一个工程上分离出来的吧?不管了,反正就是脱狗狗~~
    【破解声明】我是一只菜菜鸟,偶得一点心得,愿与大家分享 !^_^
    ------------------------------------------------------------------------
    【破解过程】OD载入程序:
    1. 00407049 >  55              push    ebp
    2. 0040704A    8BEC            mov     ebp, esp
    3. 0040704C    83EC 7C         sub     esp, 7C
    4. 0040704F    53              push    ebx
    5. 00407050    56              push    esi
    6. 00407051    57              push    edi
    7. 00407052    C745 C8 A5A5000>mov     dword ptr [ebp-38], 0A5A5
    8. 00407059    66:C745 C0 0A00 mov     word ptr [ebp-40], 0A
    9. 0040705F    E9 550D0000     jmp     00407DB9             //留意这里,不要搞太快了~~
    10. 00407064    E9 4C070000     jmp     004077B5
    11. 00407069    EB 01           jmp     short 0040706C




    12. 00407CE1    8B45 E0         mov     eax, dword ptr [ebp-20]
    13. 00407CE4    5F              pop     edi
    14. 00407CE5    5E              pop     esi
    15. 00407CE6    5B              pop     ebx
    16. 00407CE7    8BE5            mov     esp, ebp
    17. 00407CE9    5D              pop     ebp
    18. 00407CEA    FF20            jmp     dword ptr [eax]       //★这里F2下断,重新载入~~  
    19. 00407CEC    E9 CD000000     jmp     00407DBE
    20. 00407CF1  ^ E9 E6FFFFFF     jmp     00407CDC
    21. 00407CF6  ^ E9 E1FFFFFF     jmp     00407CDC
    22. 00407CFB  ^ E9 9EF3FFFF     jmp     0040709E
    23. 00407D00  ^ E9 D7FFFFFF     jmp     00407CDC
    24. 00407D05  ^ E9 A5FFFFFF     jmp     00407CAF
    25. 00407D0A  ^ E9 14FEFFFF     jmp     00407B23
    26. 00407D0F  ^ E9 0FFEFFFF     jmp     00407B23
    27. 00407D14  ^ E9 C3FFFFFF     jmp     00407CDC
    28. 00407D19  ^ E9 05FEFFFF     jmp     00407B23
    29. 00407D1E  ^ E9 B9FFFFFF     jmp     00407CDC
    30. 00407D23  ^ E9 FBFDFFFF     jmp     00407B23
    31. 00407D28  ^ E9 F6FDFFFF     jmp     00407B23
    32. 00407D2D  ^ E9 F1FDFFFF     jmp     00407B23
    33. 00407D32  ^ E9 DAFCFFFF     jmp     00407A11
    34. 00407D37  ^ E9 D8FDFFFF     jmp     00407B14
    35. 00407D3C  ^ E9 C4FDFFFF     jmp     00407B05
    36. 00407D41  ^ E9 DDFDFFFF     jmp     00407B23
    37. 00407D46  ^ E9 E7FCFFFF     jmp     00407A32
    38. 00407D4B  ^ E9 4EF3FFFF     jmp     0040709E
    39. 00407D50  ^ E9 CEFDFFFF     jmp     00407B23
    40. 00407D55  ^ E9 C9FDFFFF     jmp     00407B23
    41. 00407D5A  ^ E9 3FF3FFFF     jmp     0040709E
    42. 00407D5F  ^ E9 97FDFFFF     jmp     00407AFB
    43. 00407D64  ^ E9 29FAFFFF     jmp     00407792
    44. 00407D69  ^ E9 23FFFFFF     jmp     00407C91
    45. 00407D6E  ^ E9 79FDFFFF     jmp     00407AEC
    46. 00407D73  ^ E9 46FFFFFF     jmp     00407CBE
    47. 00407D78  ^ E9 88FBFFFF     jmp     00407905
    48. 00407D7D  ^ E9 1EFFFFFF     jmp     00407CA0
    49. 00407D82  ^ E9 55FFFFFF     jmp     00407CDC
    50. 00407D87  ^ E9 42F6FFFF     jmp     004073CE
    51. 00407D8C  ^ E9 88FBFFFF     jmp     00407919
    52. 00407D91  ^ E9 8DFDFFFF     jmp     00407B23
    53. 00407D96  ^ E9 41FFFFFF     jmp     00407CDC
    54. 00407D9B  ^ E9 3CFFFFFF     jmp     00407CDC
    55. 00407DA0  ^ E9 26F4FFFF     jmp     004071CB
    56. 00407DA5  ^ E9 32FFFFFF     jmp     00407CDC
    57. 00407DAA  ^ E9 2DFFFFFF     jmp     00407CDC
    58. 00407DAF  ^ E9 EAF2FFFF     jmp     0040709E
    59. 00407DB4  ^ E9 6AFDFFFF     jmp     00407B23
    60. 00407DB9  ^ E9 F7F9FFFF     jmp     004077B5         //★跳到这里了,,哈哈,上面很多的Jmp 很可爱哦~~  找到最上面一个~~ Go~~
    61. 00407DBE    5F              pop     edi
    62. 00407DBF    5E              pop     esi
    63. 00407DC0    5B              pop     ebx
    64. 00407DC1    C9              leave
    65. 00407DC2    C3              retn


    66. 重新载入后中断在 00407CEA

    67. OD提示信息~~~

    68. ds:[0040E0E0]=00405634 (DOG.00405634)

    69. 00407CEA    FF20            jmp     dword ptr [eax] //这个跳转地址是动态的,,由[eax]决定,现在是调向00405634:


    70. 00405634    55              push    ebp
    71. 00405635    8BEC            mov     ebp, esp
    72. 00405637    53              push    ebx
    73. 00405638    56              push    esi
    74. 00405639    57              push    edi
    75. 0040563A    6A 40           push    40
    76. 0040563C    B8 D8E04000     mov     eax, 0040E0D8
    77. 00405641    05 54010000     add     eax, 154
    78. 00405646    50              push    eax
    79. 00405647    B8 D8E04000     mov     eax, 0040E0D8
    80. 0040564C    05 92010000     add     eax, 192
    81. 00405651    50              push    eax
    82. 00405652    6A 00           push    0
    83. 00405654    FF15 0CD14100   call    dword ptr [<&USER32.MessageBoxA>]  ; USER32.MessageBoxA
    84. 0040565A    E9 00000000     jmp     0040565F
    85. 0040565F    5F              pop     edi
    86. 00405660    5E              pop     esi
    87. 00405661    5B              pop     ebx
    88. 00405662    C9              leave
    89. 00405663    C3              retn


    90. //这里出来之后,很明显就判断没有狗了~~~ ,那么我们猜测一下~~:
    91. 00407CEA    FF20            jmp     dword ptr [eax]    正常情况应该是调向OEP的~~ 而看了  glts 版主提供的图片,知道程序为 VFP 编写,故想到了~ 00401760(VFP特有入口点) Ctrl+G过去看看,果然是的~~ 当然还可以用PEID插件求证~ 结果当然是一样啦~

    92. 现在我们在OD数据窗口 Ctrl+G 输入“0040E0E0”(或者 在 命令行输入 D 0040E0E0)   然后下硬件写入断点~-byte


    93. Ctrl+F2  重新来过~~

    94. F9几次之后断在:
    95. 00407A7A    E8 9D030000     call    00407E1C
    96. 00407A7F    3B05 04E14000   cmp     eax, dword ptr [40E104]
    97. 00407A85    0F84 0A000000   je      00407A95
    98. 00407A8B    C705 E0E04000 3>mov     dword ptr [40E0E0], 00405634 //★~~ MessageBox 入口点~~~

    99. 我们现在要向上找能跳过此段代码的地方,,注意:存在花指令,所以我们用小键盘 的 “上箭头”进行翻阅~

    100. 马上看到这里:
    101. 00407A4C    833D F0E04000 0>cmp     dword ptr [40E0F0], 0
    102. 00407A53    0F85 66000000   jnz     00407ABF            //★,这里有一个大跳~ F2下断
    103. 00407A59    76 03           jbe     short 00407A5E
    104. 00407A5B    77 01           ja      short 00407A5E

    105. 取消之前的硬件断点,程序运行程序,F9  断在了 刚刚下断的地方~

    106. 00407A53    0F85 66000000   jnz     00407ABF  //★改为jmp之后,F9

    107. 来到:
    108. 00407CEA  - FF20            jmp     dword ptr [eax]                    ; DOG.00401760


    109. 此时 OD提示信息为:
    110. ds:[0040E0E0]=00401760 (DOG.00401760)

    111. Ok! 马上要到光明之巅了!

    112. F8一次~

    113. LordPE dump出来~

    114. Import REC  修复:

    115. 0EP:00001760

    116. 其他自动获取~

    117. Get Imports  有部分无效~~  使用Trace Level1(Disasm) 修复即可~
    复制代码

    ------------------------------------------------------------------------
    【破解总结】没什么总结的,OD生锈了,拿出来磨磨~~
    各位看官慢慢研究吧~~
    ------------------------------------------------------------------------
    【版权声明】本文纯属技术交流,转载请注明作者信息并保持文章的完整,谢谢!

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?加入我们

    x
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-8-12 00:53:00 | 显示全部楼层
    老大就是不同,分析得透彻,学习了
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-8-13 14:10:17 | 显示全部楼层
    跟了一下还是很有意思的,学习
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-8-13 16:21:13 | 显示全部楼层
    不知道这是什么狗/:001
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2016-4-28 06:28
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2007-8-15 10:21:24 | 显示全部楼层
    对狗狗很陌生/:011
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-8-17 17:44:56 | 显示全部楼层
    打狗的文章要看下
    打好基础先 。。。
    PYG19周年生日快乐!
  • TA的每日心情
    慵懒
    2018-6-6 15:51
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2007-8-17 18:09:51 | 显示全部楼层
    原帖由 tigerisme 于 2007-8-13 16:21 发表
    不知道这是什么狗/:001



    都说了是土 狗
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2017-10-10 17:24
  • 签到天数: 15 天

    [LV.4]偶尔看看III

    发表于 2007-8-17 18:17:32 | 显示全部楼层
    向 飘云哥哥 学习,下载来练练手/:018
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-2-27 15:18
  • 签到天数: 205 天

    [LV.7]常住居民III

    发表于 2007-8-19 21:21:15 | 显示全部楼层
    原帖由 fing 于 2007-8-15 10:21 发表
    对狗狗很陌生/:011



    同意,我也是

    我对狗一向不敢动,怕怕~!
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2007-8-28 13:24:14 | 显示全部楼层
    分析的很好,学习了~~
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表