马英凡 發表於 2008-10-8 19:02:16

Jdpack的脱壳及破解

这是一个加壳软件,软件加壳后可以检测trw及sice,它的1.00版检测到trw或sice时只是提示,到了1.01版,检测到就会出现非法操作.

  未注册版好像没有时间限制,但是给软件加壳后每次运行就会提示"Unregistered JDPack.This file PACKED by Unregistered JDPack1.0* from http://www.tlzj18.com"

  使用工具:TRW kWDSM

  下载地址(1.00 and 1.01): http://person.longcity.net/home0/flyfancy/jd.rar

  脱壳:

  我最初追踪的是1.00版,当时软件还只是提示,我就很轻易的找到了关键

  bpx getversionexa

  g

  断下后

  先bc(因为以后有几个getversionexa的调用,但是与脱壳无关)

  下面会有2个Jz,但是不能让它跳,否则就提示检测到调试器(因为我用的是TRW)

  输入 r fl z

  之后就是一个jmp

  F8继续,后面就很简单了,我只记得快到的时候会有

  popa

  jmp eax

  然后makepe即可

  1.01的脱壳方法也是

  bpx getversionexa

  g

  就到了这里

  0187:0040E250 CALL NEAR //停在这里,先bc

  0187:0040E256 LEA EBX,

  0187:0040E25C CMP DWORD ,BYTE01

  0187:0040E260 JZ 0040E276 (JUMP)//下 r fl z,跳的话就完了.

  0187:0040E262 CMP DWORD ,BYTE02

  0187:0040E266 JZ 0040E26A

  0187:0040E268 JMP SHORT 0040E284 //F8进去

  0187:0040E284 MOV EDX, //到了这里

  0187:0040E28A MOV ESI,

  0187:0040E290 ADD ESI,EDX

  0187:0040E292 MOV EAX,

  0187:0040E295 OR EAX,EAX

  0187:0040E297 JZ NEAR 0040E3EA (NO JUMP) //看到这里吗,就g 40E3EA吧

  0187:0040E29D ADD EAX,EDX

  0187:0040E29F MOV ,EAX

  0187:0040E2A5 MOV EBX,EAX

  0187:0040E3EA MOV EDX,

  0187:0040E3F0 MOV EAX,

  0187:0040E3F6 ADD EAX,EDX

  0187:0040E3F8 MOV ,EAX

  0187:0040E3FC POPA

  0187:0040E3FD PUSH EAX

  0187:0040E3FE RET // 到了这里,按F8就返回程序的OEP处了,直接makepe即可



<br />










                                                <div class="cupage">上一页<strong>1</strong>2 3 下一页 阅读全文</div>
頁: [1]
查看完整版本: Jdpack的脱壳及破解