lijun520 发表于 2015-10-3 09:43:14

一些软件的加密狗破解复制解密全程

这是很久以前的软件了,正本破解的时分写下了点东西,今日看到了就顺便把它发上来,由于正本只是做的简略的笔记,今日稍微补偿了点,由于找不到原程序,所以也不是很无缺,期望咱们谅解!

下面就直接贴代码了:

0028:CE5AA88588442405          MOV    ,AL      ; 这儿.
0028:CE5AA88966C746680100      MOV    WORD PTR ,0001
0028:CE5AA88F8A442405          MOV    AL,
0028:CE5AA893884615            MOV    ,AL
0028:CE5AA896884614            MOV    ,AL

咱们是在 chat_to_dongle routine. 而且假定咱们看下面的data有些,咱们看到:SENTINELXXX...
这是啥啊?! 你应当知道有啥公司供应这种加狗的效能如: Hasp, Sentinel, DesKEY,
Activator/Unikey 还有许多其它的.

因此,咱们能够揣度碰到的是一个 SENTINEL 狗加密!咱们如今在 SENTINEL.VXD 文件... 回到文章
中来,咱们停在这儿:

0028:CE5AA88588442405            MOV    ,AL;这儿..
0028:CE5AA88966C746680100      MOV    WORD PTR ,0001
0028:CE5AA88F8A442405            MOV    AL,
0028:CE5AA893884615            MOV    ,AL
0028:CE5AA896884614            MOV    ,AL

咱们要看是对于可实施文件的CALL,所以咱们要按三四次F12,咱们会在这儿:

0028:CE5B35D650            PUSH    EAX
0028:CE5B35D755            PUSH    EBP
0028:CE5B35D857            PUSH    EDI
0028:CE5B35D9E8D2FEFFFF    CALL    CE5B34B0    ; 咱们的 call :)
0028:CE5B35DEC06C241F01    SHR    BYTE PTR ,01;回到这儿.


在 CALL 中:

0028:CE5B35D650                  PUSH    EAX
0028:CE5B35D755                  PUSH    EBP
0028:CE5B35D857                  PUSH    EDI
0028:CE5B35D9E8D2FEFFFF          CALL    CE5B34B0
0028:CE5B35DEC06C241F01          SHR    BYTE PTR ,01

Ok,看看下面的代码并不能帮助咱们啥 :( 我看过几篇对于狗加密的教程.咱们做
的这几步,应当是现已完成了.我想,在CALL后边,会有一个对于狗的 CMP ,假定值是
和狗一样,那么就经过,不然就会加上一个过失的旗标...... 可是,咱们是不走运的,
这儿不是那么简略!的.经过和代码游戏(盯梢call,寻找一些对比的代码),我按许多
次 F12 ,可是找不到一点好东西!

BTW,我无从这该死的Sentinel的VXD中出来!按住 F12,可是啥都没有变!VDX使我
陷入困境了......我期望回到 Acad.exe 文件中!我不期望破解狗硬件,大多数的时分,
狗保护的缺陷一般都是在方针自身!

我试了 BPIO -h 378 R
让咱们在 I/O-port 上试试其它的断点 :

378现已试过了
3BC这个 ;)
278这个也是 ;o)

OK,作业软件,可是却没有阻挠 ;( 我的天啊!

由于它是一个 VDX ,所以我也试了 bpx CreateFileA ,可是走不了多久......
那么,为啥不反汇编它呢?命运好说不定能找到一些在字符串中找到一些对于犯错
的信息(不要做梦了,那是不可能有的!!:p)如今你能用东西中的啤酒了 ;) 由于咱们
要花很长时刻去反汇编!!!! 那就是我为啥不必IDA的缘由了! BTW, 咱们的方针可
实施文件大概是 7.24 mb!好了,如今你知道为啥要花这么多时刻了吧..

喝过酒后,一觉醒来.

经过这么长的时刻,总算反汇编好了! 首要,保存效果!咱们不期望再等那么多时刻,不是
吗?假定你的电脑死机或许其它缘由,你只需再等那么多时刻了!再喝一次酒,呵呵!
完了吗? Ok!

咱们愚笨的主见是去找字符串,命运不佳,没有,其实是意料之中 :p 那么让咱们想想!
咱们如何侵犯它呢? 咱们看看 Import 表吧!看看狗究竟调用了啥函数 :) 咱们能够找
到一个 "l33t0" API 函数!哈哈,我想会有一些好东西了, 咱们来看看内核......

太太太好了 :) 我找到一些诙谐的东西了:

DeviceIoControl

从没有看过,可是称谓,听起来非常好,不是吗?
呵呵!去掉一切的断点只在softice中输入: 'bc *' 和: 'BPX DeviceIocontrol'

如今作业咱们的软件! 哈哈,它阻挠下来了 :) 按F12,咱们跳出了dll文件来到了ACAD.exe
:) 让咱们和代码游玩吧.......

先看代码, 我按F12几回直到在一个好方位.下面是来自我的winice.log 的一有些:

:bl
00) BPX KERNEL32!DeviceIoControl// Damn good :)

Break due to BPX KERNEL32!DeviceIoControl
Break due to BPX KERNEL32!DeviceIoControl

// 你在这能够看到我在找到好地方之前被阻挠下来多少次
// 你用这个 bpx 的时分,你按 F5 3 次,一会有阻挠下来,
// 你再按两次后停在了这儿 :

025F:0098B1AF668B442402      MOV    AX, ; EAX = 一些值
025F:0098B1B483C404          ADD    ESP,04
025F:0098B1B7C20800          RET    0008


// 经过 RET 后,咱们落在这儿:

025F:006ABE9A0FBFC0            MOVSXEAX,AX; 呵呵 :)
025F:006ABE9D83F8FF            CMP    EAX,-01; EAX = FFFF ?!
025F:006ABEA07405                JZ      006ABEA7 ; 跳转到 6abea7
025F:006ABEA225FFFF0000          AND    EAX,0000FFFF
025F:006ABEA75F               &nbs, p;POP    EDI
025F:006ABEA8C3                  RET    ; 回来 ....

// 这是最首要的有些 :

025F:006ABD9483C404            ADD    ESP,04
025F:006ABD9785C0                TEST    EAX,EAX
025F:006ABD997C36                JL      006ABDD1
025F:006ABD9B8D44240C            LEA    EAX,
025F:006ABD9F50                  PUSH    EAX
025F:006ABDA0E8DB000000          CALL    006ABE80
025F:006ABDA583C404            ADD    ESP,04


--------------------------- 8< ---------------------- 截取 :p

Ok,我首要想到的是改动:

025F:006ABDCA3DFDDC0000    CMP    EAX,0000DCFD ; 是 eax= DCFD ?
025F:006ABDCF7408          JZ      006ABDD9; 好的! 狗锁住了

变成:

025F:006ABDCA3DFDDC0000    CMPEAX,0000DCFD   
025F:006ABDCFEB08          JMP006ABDD9 ;不论 EAX 了,我跳 :p

可是,EAX 的值很首要,不然是会溃散的:( 咱们也看到了许多处都调用了 EAX 寄存器
,查看了好几回哦!那么,咱们只需暴力使 EAX 的值等于 DCFD 了!

你还不铲除吗,菜鸟?EAX的值为啥要等于 DCFD?你没看到:CMP EAX,0000DCFD
吗?先在咱们都了解了吧!

咱们到哪去修正方针呢?想想啥时分对 AX 赋值的?我收拾一下内存,收拾出下面这段
代码:

025F:0098B1AF668B442402      MOV    AX, ; EAX = 一些值.
025F:0098B1B483C404          ADD    ESP,04
025F:0098B1B7C20800          RET    0008
025F:0098B1BA8D9B00000000    LEA    EBX,
025F:0098B1C033C0            XOR    EAX,EAX


很老的软件了,我想如今网上应当是找不到了,我也没搜到,所以这篇文章有点怪姿态吧,收拾出来也就这姿态了……

gujin162 发表于 2015-10-3 09:53:33

你快要被banid了
页: [1]
查看完整版本: 一些软件的加密狗破解复制解密全程