飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 3535|回复: 2

[原创] Mocha W32 TN5250 9.3 内存补丁[附菜鸟破文]

[复制链接]

该用户从未签到

发表于 2007-7-5 14:51:22 | 显示全部楼层 |阅读模式
【文章标题】: 菜鸟教学
【文章作者】: PPwangS
【作者邮箱】: PPwangS#GmaiL.com
【作者主页】: HTTP://WwW.PPwangS.CoM.Cn
【作者QQ号】: 39923929
【软件名称】: Mocha W32 TN5250 9.3
【下载地址】: http://www.onlinedown.net/soft/18076.htm
【保护方式】: 注册码
【使用工具】: OD
【作者声明】: 偶是菜鸟,十分菜的菜鸟,啥都不懂的菜鸟,希望大侠们多多见谅,多多教导!
--------------------------------------------------------------------------------
【详细过程】
  通过TCP/IP和TN5250协议连接IBM主机远程登录软件,可以模拟IBM5250 终端。
  
  ——————————————————————————————————
  Peid查壳,没有,挺高兴。
  运行,【Help】——>【about Mocha TN5250】,点注册,
  输入试炼码: PPwangS,111111111111
  弹出:wrong type of license key,记下来。
  OD载入,超级字符串查找。
  哇塞,竟然没有找到,怎么办。
  不着急,慢慢来。
  先F9运行,打开注册对话框,回到 OD,命令处输入:bp MessageBoxA,回车。
  回到软件,点击注册。OD断下。Alt+F9返回,点击确定。
  来到这里:
  
  0047A98A  |. /EB 27         JMP SHORT mtn5250.0047A9B3
  0047A98C  |> |895D FC       MOV DWORD PTR SS:[EBP-4],EBX
  0047A98F  |. |FF75 14       PUSH DWORD PTR SS:[EBP+14]               ; /Style
  0047A992  |. |FF75 10       PUSH DWORD PTR SS:[EBP+10]               ; |Title
  0047A995  |. |FF75 0C       PUSH DWORD PTR SS:[EBP+C]                ; |Text
  0047A998  |. |FF75 08       PUSH DWORD PTR SS:[EBP+8]                ; |hOwner
  0047A99B  |. |FF15 04774C00 CALL DWORD PTR DS:[<&USER32.MessageBoxA>>; \MessageBoxA
  0047A9A1  |. |8945 E4       MOV DWORD PTR SS:[EBP-1C],EAX
  0047A9A4  |. |C745 FC FEFFF>MOV DWORD PTR SS:[EBP-4],-2
  0047A9AB  |. |E8 0B000000   CALL mtn5250.0047A9BB
  0047A9B0  |. |8B45 E4       MOV EAX,DWORD PTR SS:[EBP-1C]
  0047A9B3  |> \E8 65DC0200   CALL mtn5250.004A861D
  0047A9B8  \.  C3            RETN
  
  往上找,没有发现可疑的地方,汇编不熟,怎么办捏。。
  嗯,下万能断点试试吧。
  点击插件,ApiBreak,万能断点。
  回到软件,点击注册,一下子停下来啦。
  
  77D3352D    F3:A5           REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS>
  77D3352F    8BC8            MOV ECX,EAX
  77D33531    83E1 03         AND ECX,3
  77D33534    F3:A4           REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[>
  77D33536    E8 E3FBFFFF     CALL USER32.77D3311E
  77D3353B    5F              POP EDI
  77D3353C    5E              POP ESI
  77D3353D    8BC3            MOV EAX,EBX
  77D3353F    5B              POP EBX
  77D33540    5D              POP EBP
  77D33541    C2 1000         RETN 10
  
  看下右边寄存器,有自己的注册名,呵呵,看来这里就是了,继续继续。
  F9,注意观察右边寄存器,15次之后,看见下面堆栈出现“wrong type of license key”字样了。
  嗯,刚才确实是关键地方。
  
  再试一次(偶是菜鸟,只能用笨方法),F9第14次的时候,停下来,Ctrl+F8我们让它自己过。
  这时候你要紧紧的盯着右边寄存器,看看有啥熟悉的东西没。呵呵。
  我看到我输入的注册码啦,F12赶紧停下来。
  00424CAE   .  B9 4CFC5100   MOV ECX,mtn5250.0051FC4C //这是我F12断下的地方,你们呢?
  00424CB3   .  C68424 9C0000>MOV BYTE PTR SS:[ESP+9C],4
  00424CBB   .  E8 E0D4FDFF   CALL mtn5250.004021A0
  00424CC0   .  8D46 F0       LEA EAX,DWORD PTR DS:[ESI-10]
  00424CC3   .  889C24 980000>MOV BYTE PTR SS:[ESP+98],BL
  00424CCA   .  8D50 0C       LEA EDX,DWORD PTR DS:[EAX+C]
  00424CCD   .  83C9 FF       OR ECX,FFFFFFFF
  00424CD0   .  F0:0FC10A     LOCK XADD DWORD PTR DS:[EDX],ECX         ;  锁定前缀
  
  我们在那里下断吧。然后删掉所有万能断点,不然太烦啦!
  再注册一次,已下载就段下来啦!
  好了,往下跟吧,有希望哦!
  找啊找,找到“wrong type of license key”出现了,哈哈。怎么办呢?当然入CALL了。
  00424CAE   .  B9 4CFC5100   MOV ECX,mtn5250.0051FC4C
  00424CB3   .  C68424 9C0000>MOV BYTE PTR SS:[ESP+9C],4
  00424CBB   .  E8 E0D4FDFF   CALL mtn5250.004021A0
  00424CC0   .  8D46 F0       LEA EAX,DWORD PTR DS:[ESI-10]
  00424CC3   .  889C24 980000>MOV BYTE PTR SS:[ESP+98],BL
  00424CCA   .  8D50 0C       LEA EDX,DWORD PTR DS:[EAX+C]
  00424CCD   .  83C9 FF       OR ECX,FFFFFFFF
  00424CD0   .  F0:0FC10A     LOCK XADD DWORD PTR DS:[EDX],ECX         ;  锁定前缀
  00424CD4   .  49            DEC ECX
  00424CD5   .  85C9          TEST ECX,ECX
  00424CD7   .  7F 0A         JG SHORT mtn5250.00424CE3
  00424CD9   .  8B08          MOV ECX,DWORD PTR DS:[EAX]
  00424CDB   .  8B11          MOV EDX,DWORD PTR DS:[ECX]
  00424CDD   .  50            PUSH EAX
  00424CDE   .  8B42 04       MOV EAX,DWORD PTR DS:[EDX+4]
  00424CE1   .  FFD0          CALL EAX
  00424CE3   >  8BCF          MOV ECX,EDI
  00424CE5   .  E8 D6FAFFFF   CALL mtn5250.004247C0  //F2先在这里下断,方便记忆,然后F7进入这里,应该就是算法啦!
  00424CEA   .  85C0          TEST EAX,EAX
  00424CEC   .  53            PUSH EBX                                 ; /Arg3
  00424CED   .  75 19         JNZ SHORT mtn5250.00424D08               ; |
  00424CEF   .  8B0D A8F85100 MOV ECX,DWORD PTR DS:[51F8A8]            ; |
  00424CF5   .  53            PUSH EBX                                 ; |Arg2
  00424CF6   .  51            PUSH ECX                                 ; |Arg1 => 00B9FB38 ASCII "Wrong type of license Key."
  00424CF7   .  E8 58C60500   CALL mtn5250.00481354                    ; \mtn5250.00481354
  
  F7进入这里,这里就是算法啦,有想学算法的把这里弄懂就OK啦!
  004247C0   $  6A FF         PUSH -1
  004247C2   .  68 58E84B00   PUSH mtn5250.004BE858
  004247C7   .  64:A1 0000000>MOV EAX,DWORD PTR FS:[0]
  004247CD   .  50            PUSH EAX
  ……
  ……
  00424A3D   .  8B4C24 5C     MOV ECX,DWORD PTR SS:[ESP+5C]
  00424A41   .  33CC          XOR ECX,ESP
  00424A43   .  E8 1DEF0700   CALL mtn5250.004A3965
  00424A48   .  83C4 6C       ADD ESP,6C
  
  偶是菜鸟,就跳过,看看是不是明码比较。
  往下F8,慢慢来,不着急,胜利或者失败都在远方啊!
  
  00424B0A   .  8D70 01       LEA ESI,DWORD PTR DS:[EAX+1] //右边寄存器有一串数字很可疑,是不是注册码?
  00424B0D   .  8D49 00       LEA ECX,DWORD PTR DS:[ECX]
  00424B10   >  8A08          MOV CL,BYTE PTR DS:[EAX]
  00424B12   .  83C0 01       ADD EAX,1
  00424B15   .  84C9          TEST CL,CL
  
  这里有些可疑哦。
  EAX 0012F8DC ASCII "156976"
  ECX 0101FAA0 ASCII "PPwangS"
  EDX 0101F978 ASCII "111111111111"
  
  试试吧,先,不管了。
  打开软件填入
  156976,确定,唉?怎么没反映?
  看看 about 里。
  哈哈,授权啦已经。
  但是为什么是DEMO,疑惑中。
--------------------------------------------------------------------------------
【经验总结】
  用KEYMAKER做内存注册机吧,呵呵。
  中断地址:00424B0A
  中断次数:1
  第一字节:8D
  指令长度:3
  看懂没?希望大侠可以出招,带带小的们,用更简单的方法来做做~~
  
--------------------------------------------------------------------------------
【版权声明】: 转载注明作者就可以啦!

                                                       2007年07月04日 18:18:44


mtn5250-patch.rar

14.38 KB, 下载次数: 0, 下载积分: 飘云币 -2 枚

评分

参与人数 1威望 +12 收起 理由
tigerisme + 12 鼓励

查看全部评分

PYG19周年生日快乐!
  • TA的每日心情
    开心
    2024-5-4 22:08
  • 签到天数: 114 天

    [LV.6]常住居民II

    发表于 2007-7-5 15:46:58 | 显示全部楼层
    支持一个,下载学习
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2017-12-8 13:11
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2007-12-2 10:05:42 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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