首页
社区
课程
招聘
[anti-debug]关机相关
发表于: 2008-12-20 18:47 4312

[anti-debug]关机相关

2008-12-20 18:47
4312
我正在看《加密与解密》,调试一个程序。但是,每次我一动态调试,按下F9,电脑就被关了。

有个规律,只要该程序运行,我一打开OllyICE和W32dsm,电脑马上关机。但是我打开C32Asm却没有问题。

我静态汇编,已经让程序出现“注册成功”字样,但程序关闭后再次打开,还是显示未注册。

希望好心人给我点提示!

怎么避免关机(我用了OllyIce的HIdeon插件还是不行),或者怎么才能真正注册成功!

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 419
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
bp ExitWindowEx
2008-12-20 19:36
0
雪    币: 2368
活跃值: (81)
能力值: (RANK:300 )
在线值:
发帖
回帖
粉丝
3
很显然。软件的反调试做的不错....f9不能用,f8单步调试,争取过了它的反调试。
反调试的方法挺多的,可以上网搜搜具体的反调试方法...
为了避免总是关机的烦恼,用虚拟机调试它好了...
2008-12-20 19:47
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
谢谢fixfix,刚才给下了你给的断点函数,还是不行。

谢谢北极狐狸,你说的方法我今天一直在用。我电脑都重启N回了。等下用虚拟机试试。

是这样,现在我单步执行到f1(),关机。
然后重启电脑,下次F7进入f1()函数里面,单步到f2(),关机。
再重启电脑,F7进入f2()里面,到f3(),关机。
貌似这样的指令没有尽头啊,我的方法是不是错了?
f1()
{
...
   f2()
  {
   ...
   f3()
     {
      ...
        f3()
          {
            ...
             关机函数?
          }
     }
   }
}
2008-12-20 21:24
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
我是个新手,谢谢各位解答。我说一下想法,大家不要笑话我啊。

我反汇编之后,看到很多INT 3, 看资料说,OD单步的实现也是用的INT 3,这对我的调试应该有影响吧?

还有,关机函数不可能是一条汇编指令实现的吧?我单步到什么时候,就可以认为跟踪到了关机函数呢?

谢谢!
2008-12-20 21:38
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
各位给我点提示吧,不搞定这个,这几天都会睡不安稳。
2008-12-21 00:09
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
7
常规情况关机是通过调用ExitWindowsEx函数的。

如果在此下断点不起作用,可以试试这几个函数,在好像在advapi32中,自己搜索一下吧,我不太确定

InitiateShutdown
InitiateSystemShutdown
InitiateSystemShutdownEx

还有一个原生API:

NtShutdownSystem

我能想到的关机就这几个途径了。
2008-12-21 12:24
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
谢谢书呆彭,现在搞定了。
2008-12-29 12:13
0
雪    币: 324
活跃值: (197)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
楼上的可否共享一下经验呀,到底是哪里搞的鬼啊?
2008-12-29 13:52
0
游客
登录 | 注册 方可回帖
返回
//