飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 2672|回复: 2

[求助] SMC补丁制作问题

[复制链接]

该用户从未签到

发表于 2008-6-9 05:10:48 | 显示全部楼层 |阅读模式
在运用smc进行,带壳破解时,要写入smc代码,如:
第一处:(跳到SMC补丁数据地址)

                                
005543B0    75 08                    jnz short translat.005543BA               ; ★补丁地址★
005543B2    B8 01000000              mov eax,1
005543B7    C2 0C00                  retn 0C
005543BA    68 00000000              push 0                                    ; 返回程序OEP值
005543BF    C3                       retn                                      ; 飞向光明之颠 ~_~

修改为:

005543B0   /E9 B9350000              jmp translat.0055796E                     ; 强制跳到补丁数据0055796E处
005543B5   |90                       nop
005543B6   |90                       nop
005543B7   |C2 0C00                  retn 0C
005543BA   |68 50254F00              push translat.004F2550
005543BF   |C3                       retn
请问 将jnz short translat.005543BA 改为jmp translat.0055796E  ,
005543BA    68 00000000  push 0  改为005543BA   |68 50254F00    push translat.004F2550
的理由是什么?jmp translat.0055796E  和push translat.004F2550这个代码从哪里得出来的?

[ 本帖最后由 杨家将 于 2008-6-9 05:13 编辑 ]
PYG19周年生日快乐!

该用户从未签到

发表于 2008-6-9 17:21:55 | 显示全部楼层
请问 将jnz short translat.005543BA 改为jmp translat.0055796E  ,
005543BA    68 00000000  push 0  改为005543BA   |68 50254F00    push translat.004F2550
的理由是什么?jmp translat.0055796E  和push translat.004F2550这个代码从哪里得出来的?


jnz short translat.005543BA 改为jmp translat.0055796E

是利用壳自身解压原理,填充补丁数据
简单来说就是在壳解压完毕后准备返回程序OEP的那一瞬间将补丁数据写入.

那补丁数据从哪写入?写入指令在哪呢。

那就要在加壳程序中找块空地加入将补丁数据写入的指令。

所以上面那个jmp translat.0055796E就是跳向写入补丁数据的地方。
(0055796E就是空地的地址,地址是任意的)

push translat.004F2550

而这代码从何而来,4F255O就是OEP地址咯。你拿着程序手脱一下就知道了。

/:013 /:013 /:013
上面所说的都是个人理解,如果有不对的地方还望包涵。。。
PYG19周年生日快乐!
  • TA的每日心情

    昨天 18:48
  • 签到天数: 466 天

    [LV.9]以坛为家II

    发表于 2008-6-13 10:29:29 | 显示全部楼层
    jnz short translat.005543BA 改为jmp translat.0055796E  是跳到补丁代码处,这个地址不固定的
    0055796E xxxxxxxxx   xxxxxx   修改的代码
    0055797A(比如是这个地址) jmp 005543BA    ////好像这样也可以吧,没必要直接跳到oep
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

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