能力值:
( LV3,RANK:20 )
|
-
-
2 楼
新进程的exe入口点改int3保存,将OD设为默认调试器,OD里面不能设置传递int3。
启动软件,新进程会出错,问你要不要调试,点调试OD就附加进去了,这时再把入口的int3改回来。如果F9还是不能正常运行,可以先F7或F8一次将这次的int3异常过掉。
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
谢谢指点,我先试试!
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
刚才试了,没成功,在什么时机用OD载入启动的进程?
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
上传下程序,帮看看是什么原因?
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
大体明白了,他是把自己做成了一个服务来启动的,在服务里点启动就可以启动程序了,怎样来调试这个服务?
|
能力值:
( LV3,RANK:20 )
|
-
-
7 楼
貌似没有什么好方法调试服务程序,不过或许可以直接跟踪调试。
先到服务管理里面看一下该服务器有没有参数,把参数加上直接扔OD里面,下断StartServiceCtrlDispatcher,去MSDN查这个函数,断下后可以到栈上面根据指针得到回调函数地址,伪造该回调函数的参数,直接把EIP设置到此函数入口。下断RegisterServiceCtrlHandler,断下后,正常运行的话会返回非0,但是现在是强制手段,应该是返回0,不过这是一个表示服务状态的句柄,可以强制改为非零,然后下断SetServiceStatus,它会传入刚才强制修改的那个句柄值作参数,强制修改其返回值为非0,这样在程序退出前,下面运行应该都没有问题了(退出时有问题也不用管它了)。
|
能力值:
( LV4,RANK:50 )
|
-
-
8 楼
镜像劫持。。。。。。
|
能力值:
( LV3,RANK:20 )
|
-
-
9 楼
注册表有个地方可以设进程的调试器吧,然后用windbg吧,od调不了ring0服务的
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
静态分析
同问
对于利用svchost.exe、Rundll32.exe启动的dll,如何动态调试?
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
学习啦,嘿嘿!
|
|
|