飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 3655|回复: 2

[原创] 学习笔记之手动patch

[复制链接]
  • TA的每日心情

    2019-3-20 17:55
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2009-7-21 10:47:33 | 显示全部楼层 |阅读模式
    【文章标题】: 学习笔记之手动patch
    【软件名称】: crackme_aspacked
    【软件大小】: 10.0 KB
    【下载地址】: 见附件
    【加壳方式】: ASPack 2.12 -> Alexey Solodovnikov
    【编写语言】: MASM32 / TASM32
    【软件介绍】: 一个简单的crakeme
    【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
    --------------------------------------------------------------------------------
    【详细过程】
      今天学习到天草初级班的第十课patch,看完教程,跟着操作一遍后,就想自己搞定它,于是就有了下面的文章!
      
      首先手动patch:
      00405001 >  60              PUSHAD
      00405002    E8 03000000     CALL crackme_.0040500A
      00405007  - E9 EB045D45     JMP 459D54F7
      
      F8到00405002,然后用硬件断点法:Esp寄存器——数据窗口跟随——在数据窗口,右击,断点,硬件访问断点-word,F9运行:
      004053B0   /75 08           JNZ SHORT crackme_.004053BA
      004053B2   |B8 01000000     MOV EAX,1
      004053B7   |C2 0C00         RETN 0C
      004053BA   \68 00104000     PUSH crackme_.00401000
      004053BF    C3              RETN
      这时在od中往下拉,找到一个空白地址,这里选在004055B7
      将004053B0   /75 08           JNZ SHORT crackme_.004053BA改为
      004053B0   /0F85 01020000   JNZ crackme_.004055B7
      然后在004055B7处写下如下代码:
      004055B7    C605 03124000 0>MOV BYTE PTR DS:[401203],3
      004055BE  ^ E9 F7FDFFFF     JMP crackme_.004053BA
      或:
      004055B7    C605 03124000 0>MOV BYTE PTR DS:[00401204],0EB
      004055BE  ^ E9 F7FDFFFF     JMP crackme_.004053BA
      然后保存文件就可以了。
      
      当然也可以脱壳后爆破:
      004011F7  /$  55            PUSH EBP
      004011F8  |.  8BEC          MOV EBP,ESP
      004011FA  |.  6A 00         PUSH 0                                   ; /RootPathName = NULL
      004011FC  |.  E8 99000000   CALL crackme_.0040129A                   ; \GetDriveTypeA
      00401201  |.  83F8 05       CMP EAX,5
      00401204  |.  74 17         JE SHORT crackme_.0040121D
      00401206  |.  6A 30         PUSH 30                                  ; /Style = MB_OK|MB_ICONEXCLAMATION|MB_APPLMODAL
      00401208  |.  68 14304000   PUSH crackme_.00403014                   ; |Title = "FaNt0m's CrackMe #3 -- CD Check"
      0040120D  |.  68 40304000   PUSH crackme_.00403040                   ; |Text = "Error finding CDROM"
      00401212  |.  6A 00         PUSH 0                                   ; |hOwner = NULL
      00401214  |.  E8 51000000   CALL crackme_.0040126A                   ; \MessageBoxA
      00401219  |.  C9            LEAVE
      0040121A  |.  C2 0400       RETN 4
      0040121D  |>  6A 00         PUSH 0                                   ; /Style = MB_OK|MB_APPLMODAL
      0040121F  |.  68 14304000   PUSH crackme_.00403014                   ; |Title = "FaNt0m's CrackMe #3 -- CD Check"
      00401224  |.  68 54304000   PUSH crackme_.00403054                   ; |Text = "Found a CDROM! Good job!"
      00401229  |.  6A 00         PUSH 0                                   ; |hOwner = NULL
      0040122B  |.  E8 3A000000   CALL crackme_.0040126A                   ; \MessageBoxA
      00401230  |.  C9            LEAVE
      00401231  \.  C2 0400       RETN 4
      **********************************************************************
      将00401201  |.  83F8 05       CMP EAX,5改为00401201     CMP EAX,3
      或者将00401204 JE SHORT crackme_.0040121D改为: JMP SHORT crackme_.0040121D
      
    --------------------------------------------------------------------------------
                                                           2009年07月21日 10:39:28

    crackme_aspacked.rar

    4.96 KB, 下载次数: 4, 下载积分: 飘云币 -2 枚

    评分

    参与人数 1飘云币 +40 收起 理由
    Luckly + 40 您的贴子很精彩,希望能再次分享!

    查看全部评分

    PYG19周年生日快乐!
  • TA的每日心情
    郁闷
    2021-10-2 23:26
  • 签到天数: 46 天

    [LV.5]常住居民I

    发表于 2009-7-21 23:24:19 | 显示全部楼层
    学习一下啊!/:good /:good /:good
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2009-8-1 22:13:28 | 显示全部楼层
    支持一下~!
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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