吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 8295|回复: 6
收起左侧

[分享] 基于SEH的反调试Crackme,对学SEH的很有帮助

[复制链接]
hkfans007 发表于 2009-1-12 12:53
CrackMe.rar (6.38 KB, 下载次数: 25) 修改前的CrackMe.rar (5.01 KB, 下载次数: 17) 原CrackMe的破解文章的链接地址:

引言:
我看了半天,也没看明白是怎么回事,他说在0x492290下断,我下了,但是按了好几次shift+f9都没有到那个指令地址,而ollydebug又没有提供相应的功能自动跳到那个指令,所以按了半天放弃(因为有循环),后来认真按了几十次,终于到了那个比较的指令地址,但是我还是不知道注册码的生成算法,所以我觉得写破解文章的那个作者完全是在忽悠的。认真思考了一番,我知道SEH主要就是故意在有实际功能的代码中加入些异常,然后跳到异常,使得跟踪者很容易跟丢,或者放弃,既然这样,我们解除SEH的反跟踪的大体思路就是直接将注册码算法的代码串接起来,将引起一场全部去掉。分析过程如下。

大体过程:

1. 获取上次0xCC(中断指令) 的地址 (如00401914)
2. 读取该中断地址的下个BYTE的数据 (如 [00401915] = 0x8c)
3. 该字节数据 (0x8c) 经过算法后,产生另外一个数,再该数和上次中断的EIP相加,定位到新的EIP地址.



重定位EIP算法:  (0x8c ===>  )   (该算法在未处理异常程序中,地址0x4012f0, 未处理异常加入很多jmp,不用管!~~~)

mov edx, 40164b  ;从该指令开始
inc edx                 ;取下个字节的数据

move cl, byte ptr [edx]        

mov cl, 0x8c         ; 0x8c是举例
mov al, cl        
shl al, 6
shr cl, 2
add al, cl
xor al, 0D
mov cl, al
shr cl, 5
shl al, 3
add cl, al
add cl, 11   ; HEX数据
mov al, cl
shl al, 5
shr cl, 3
add al, cl
xor al, 51
mov cl, al
shl cl, 7
shr al, 1
add cl, al
sub cl, 6F
and ecx, 0FF
and ecx, 80000007

add edx, ecx          ; edx 保存异常地址的下个字节的地址 ( 如00401915)
inc edx           ; 此时,edx 保存 异常处理后恢复的指令地址 (00401917)  === 00401915(00401914+1) + ecx + 1;


处理方法:

直接跳到有实际作用的EIP(是0xCC的全部跳过), 写个程序自动修改跳转指令 (从第一个INT3开始修改为 jmp)

需要一步判断将要跳转的地址的数据是否为0xCC,如果是继续往下查找,直道找到一个不是0xCC的,然后跳到这里来


相关信息:
1.  第一条INT3 指令地址 0x40164b   --- > 从这里开始跳转,跳到下个有实际作用的EIP地址


附:
附加一个修改程序的源代码和修改后的cm


ps:  在比较注册码的指令后,如果比较错误,而我们在olldebug又单步调试的话,会当机,因为程序没有写处理单步异常的代码, 不过这已经不重要了

[ 本帖最后由 wgz001 于 2009-1-13 08:42 编辑 ]

免费评分

参与人数 1威望 +1 收起 理由
Hmily + 1 我很赞同

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| hkfans007 发表于 2009-1-12 12:57
原CrackMe的破解文章的链接地址: http://bbs.pediy.com/showthread.php?t=12449

原CM的下在地址:
http://bbs.pediy.com/showthread.php?t=12449
 楼主| hkfans007 发表于 2009-1-14 09:30
哈哈,终于有人认可了,这个对学习SEH反调试真的很有帮助~~
zzage 发表于 2009-1-14 09:39
SEH...很好,不过在异常处理里面能找到他的回调函数
bensonhb 发表于 2009-1-14 09:44
学习一下,不知道能不能搞惦呢!!!!!
头像被屏蔽
zhujian198 发表于 2009-2-3 19:59
提示: 作者被禁止或删除 内容自动屏蔽
xiong5230 发表于 2009-2-11 11:42
看起来算法好复杂。怎么找得到的?
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 01:31

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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