首页
社区
课程
招聘
6
[原创]分析一个基于异常的花指令的CM
发表于: 2012-11-29 20:59 7702

[原创]分析一个基于异常的花指令的CM

2012-11-29 20:59
7702
收藏
免费 6
支持
分享
赞赏记录
参与人
雪币
留言
时间
伟叔叔
为你点赞~
2024-5-31 06:32
心游尘世外
为你点赞~
2024-5-31 03:24
QinBeast
为你点赞~
2024-5-31 03:15
飘零丶
为你点赞~
2024-4-1 03:26
shinratensei
为你点赞~
2024-2-2 05:55
PLEBFE
为你点赞~
2023-3-7 00:38
最新回复 (6)
雪    币: 293
活跃值: (40)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
2
不错,lz很热心哦~
2012-11-29 22:02
0
雪    币: 107
活跃值: (77)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
感谢楼主,我发了个贴子求这个CM的分析http://bbs.pediy.com/showthread.php?t=159234

结果楼主就分析的这么全面

十分感谢哦

我来仔细看看你的分析
2012-11-29 22:26
0
雪    币: 107
活跃值: (77)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
有两个问题想请教楼主

004012F0  COND: eip_start = 0040164B
00401439  COND: eip_end   = 00401654
004012F0  COND: eip_start = 00401654
00401439  COND: eip_end   = 00401658
004012F0  COND: eip_start = 00401658
00401439  COND: eip_end   = 0040165E
004012F0  COND: eip_start = 0040165E
00401439  COND: eip_end   = 00401667
004012F0  COND: eip_start = 00401667
00401439  COND: eip_end   = 0040166E
004012F0  COND: eip_start = 0040166E
00401439  COND: eip_end   = 00401674
004012F0  COND: eip_start = 00401674
00401439  COND: eip_end   = 0040167B
004012F0  COND: eip_start = 0040167B
00401439  COND: eip_end   = 0040167D

这是自动生成了?OD有这个功能吗?

还有我不喜欢用IDA,

"其实直接用IDA载入
找SEH_xxxxxxxx 和TopLevelExceptionFilter即可
"

这是你说的,不用IDA也很好调的吧,觉得IDA不习惯不好

还有,如果我要实现这个CM一样的功能,是不是如下代码

procedure TForm1.FormCreate(Sender: TObject);
begin
try
asm
//执行我的代码然后异常
int 3
end;
except
try
asm
//执行我的代码然后异常
int 3
end;
except
//执行我的代码然后异常
try
asm
//执行我的代码然后异常
int 3
end;
except
//执行我的代码然后异常
try
asm
//执行我的代码然后异常
int 3
end;
except
//执行我的代码然后异常
try
asm
//执行我的代码然后异常
int 3
end;
except
//执行我的代码然后异常
try
asm
//执行我的代码然后异常
int 3
end;
except
//执行我的代码然后异常
try
asm
//执行我的代码然后异常
int 3
end;
except
//执行我的代码然后异常
try
asm
//执行我的代码然后异常
int 3
end;
except
//执行我的代码然后异常
end;
end;
end;
end;
end;
end;
end;
end;
end;
2012-11-29 22:43
0
雪    币: 3408
活跃值: (3284)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
5




不是嵌套,也不是try。

是SetUnhandledExceptionFilter
上传的附件:
2012-11-29 23:08
0
雪    币: 107
活跃值: (77)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
[QUOTE=HOWMP;1121895]



不是嵌套,也不是try。

是SetUnhandledExceptionFilter[/QUOTE]

try也能达到这种效果吧?因为try也是SHE异常处理,我等下试试

感谢楼主说的这么详细,我还忘了OD有日志功能
2012-11-30 09:44
0
雪    币: 209
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
用最新的Ollydbg2.01,里面有个TraceAPI插件,可以跟踪到"SetUnhandledExceptionFilter"函数,下断点,返回到用户代码,就到了
1
2
00401531  |.  68 F0124000   push 004012F0    ; /Filter = CrackMe.4012F0
00401536  |.  FF15 00304000 call dword ptr ds:[<&KERNEL32.SetUnhandledExceptionFilt ; \KERNEL32.SetUnhandledExceptionFilter
2012-12-1 13:05
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册