找回密码
 注册
搜索
热搜: 回贴

dos就下的log用法(7千字),log,其他平台

2010-1-30 18:32| 发布者: admin| 查看: 185| 评论: 0|原作者: 飞燕


dos就下的log用法(7千字),log,其他平台
2008年06月23日 星期一 下午 11:30
原作者:不明

翻译者:PeterChen

破解对像:Ghost Demo (3.1d)

神兵利器:TR[Dos版]

软件介绍:系统硬件初始化,现在就是用来Back[备份]系统!

---------------------

1. 第一步脱壳:



TR ghost.exe ;TR加载ghost.exe

getknl ;到达kernel

;等待一会儿

mkexe ghost.exe ;生成mem.exe文件



你可以测试一下,脱壳文件Mem.exe。

---------------------

2. 第二步破解15秒限制:

TR mem.exe ;再一次加载mem.exe

g ;退出TR界面





当“等待15分钟”之后,压Ctrl D。然后再出现TR的界面,

再压去看什么样循环。[也就是找出循环内容加以分析]

很容易就找到延迟Proc_199f:

汇编: 偏移:代码:

PUSHF ;3304:199F 9C

CLI ;3304:19A0 FA

MOV AL,00 ;3304:19A1 B000

OUT 43,AL ;3304:19A3 E643 <---

CALL 199E ;3304:19A5 E8F6FF

IN AL,40 ;3304:19A8 E440

MOV BL,AL ;3304:19AA 8AD8

CALL 199E ;3304:19AC E8EFFF

IN AL,40 ;3304:19AF E440

MOV BH,AL ;3304:19B1 8AF8

NOT BX ;3304:19B3 F7D3

POPF ;3304:19B5 9D

MOV AX,BX ;3304:19B6 8BC3

RET ;3304:19B8 C3





修改:



a 199f ;汇编内容

MOV AX,SI ;3304:199F 8BC6

DEC AX ;3304:19A1 48

RET ;3304:19A2 C3



用十六进制工具修改Mem.exe:



搜索 : 9c fa b0 00 46<-- 43

修改 : 8b c6 48 c3

本文有误:e6原作者写成了46!

---------------------

3. 破解评估限制:





TR MEM.exe

G ;退出



当"Connection type"(可能是当退出TR,不久快快)界面出来之时,



和按 ,又返回TR领域。



Logpro 1 ;log it [log是写日志]

g





当Ghost执行完,就会生成'logpro.dat'文件



Lopro ;在Dos会提示





它会读取'logpro.dat'而且生成'logpro.txt'。



Ren logpro.txt log1.txt ;重名保存

date

10-22-98 ;产生最近时间

TR mem.exe

g

当"Connection type"(可能是当退出TR,不久快快)界面出来之时,



和按 ,又返回TR领域。

Logpro 1 ;log it[log是写日志]

g

logpro

ren logpro.txt log2.txt





如今天有两个日志. log1.txt是执行时间,log2.txt过期时间。

比较结果:



log1.txt

......

CALL 0fdb ;40f5:04dd e8fb0a

CALL FAR 32c4:0638 ;40f5:0ff5 9a3806c432

RETF ;32c4:064a cb

CALL FAR 32c4:401d ;40f5:10ac 9a1d40c432



log2.txt

......

CALL 0fdb ;40f5:04dd e8fb0a

CALL FAR 32c4:0638 ;40f5:0ff5 9a3806c432

RETF ;32c4:064a cb

CALL FAR 32c4:27e7 ;40f5:1054 9ae727c432



我首先发现不同之处proc_fdb. 我们推理:



CALL 0fdb ;call check_if_timeout [测试过期时间]

CALL FAR 32c4:0638 ;call get_time [当前时间]

RETF

... ;compare [进行比较]

j?? @@

CALL FAR 32c4:27e7 ;call error [错误提示]

@@:





让我们严密一些:



TR mem.exe

g fdb ;direct go to proc_fdb [直接跳到proc_fdb]

.... ; some [压enter]

TR界面:

U $,105d>tem.txt [反汇编内容另存为Tem.txt]

'tem.txt'内容:



ENTER 001C,00 ;40F5:0FDB C81C0000

CMP [WORD 00B2],00 ;40F5:0FDF 833EB20000

JNE 0FF0 ;40F5:0FE4 750A

CMP [WORD 00AC],00 ;40F5:0FE6 833EAC0000

JNE 0FF0 ;40F5:0FEB 7503

JMP 10D8 ;40F5:0FED E9E800

PUSH SS ;40F5:0FF0 16

LEA AX,[BP-04] ;40F5:0FF1 8D46FC

PUSH AX ;40F5:0FF4 50

CALL FAR 32C4:0638 ;40F5:0FF5 9A3806C432

ADD SP,04 ;40F5:0FFA 83C404

MOVSX EAX,[WORD BP-04] ;40F5:0FFD 660FBF46FC

MOV [BP-10],EAX ;40F5:1002 668946F0

MOVZX EAX,[BYTE BP-01] ;40F5:1006 660FB646FF

MOV [BP-14],EAX ;40F5:100B 668946EC

MOVZX EAX,[BYTE BP-02] ;40F5:100F 660FB646FE

MOV [BP-18],EAX ;40F5:1014 668946E8

MOV EAX,[BP-10] ;40F5:1018 668B46F0

ADD EAX,FFFFF894 ;40F5:101C 660594F8FFFF

IMUL EAX,EAX,00002710 ;40F5:1022 6669C010270000

MOV EDX,[BP-14] ;40F5:1029 668B56EC

IMUL EDX,EDX,64 ;40F5:102D 666BD264

ADD EAX,EDX ;40F5:1031 6603C2

ADD EAX,[BP-18] ;40F5:1034 660346E8

MOV [BP-0C],EAX ;40F5:1038 668946F4

MOV AX,7A18 ;40F5:103C B8187A

MOV ES,AX ;40F5:103F 8EC0

MOV EAX,[ES:0A18] ;40F5:1041 6626A1180A

CMP EAX,[BP-0C] ;40F5:1046 663B46F4

<<<-----

JGE 105C ;40F5:104A 7D10

PUSH 01 ;40F5:104C 6A01

PUSH 7A18 ;40F5:104E 68187A

PUSH 0FFA ;40F5:1051 68FA0F

CALL FAR 32C4:27E7 ;40F5:1054 9AE727C432

ADD SP,06 ;40F5:1059 83C406

MOV AX,7A18 ;40F5:105C B8187A



到此我们要如何做了?

a 1046

jmp 105c ;eb 14

G





它能运行!我们开始用十六进制工具修改Mem.exe:



搜索 : 66 3b 46 f4 7d 10

修改 : eb 14





至此,脱壳,破解,都完成了!



---------------------

4. 把Mem.exe拷贝到Ghost.exe的同目录下运行。



I think we can make the MEM.EXE run without ghost.exe:

我想应该制造一个脱离ghost.exe的Mem:



a. make MEM.EXE as follow:

制造Mem.exe过程:

mkexe ;不开参数

b. If MEM.exe large than ghost.exe's main part,

compress it.

如果Mem.exe比ghost.exe主要部分时可以压缩:

pklite mem.exe

copy /b mem.exe dummy ;制造合适长度

c. 覆盖ghost.exe

d. 追加mem.exe

copy /b mem.exe overlay



If you have done it, Please put it to

ftp://ftp.nease.net/incoming/tr

and tell me.



Thank You!



--------------------------------------------------------------

一个朋友告诉我:





这里,我想告诉你关我破解Ghost31d的方法。因为你的方法有一些不全

'Load Disk/Partition to Image'.[这个是ghost的功能,是加载或保存映象文件]

After MKEXE Ghost.exe

之后Mkexe ghost.exe



重名mem.exe为GGGGG.exe





TR GGGGG.exe -#e=g.env

bp ip=5497

g

a cs:ip

cs:5497 jmp 550E

bp ip=1386

g

a cs:ip

cs:1386 jmp 13A1

g

q



运行GGGGG.exe时已经是注册版了!



PeterChen:

不是别人不全而是别人方法比反锁而已,破解就好像数学一样条条大路通罗马!


最新评论

QQ|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )

GMT+8, 2024-9-29 11:22 , Processed in 0.294184 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

返回顶部