首页
社区
课程
招聘
[求助]R0创建的进程 OD无法附加
发表于: 2012-8-29 22:55 8467

[求助]R0创建的进程 OD无法附加

2012-8-29 22:55
8467
一个程序可能是从驱动里面创建的.  原因是
HOOK CreateProcessInternalW 除开那个程序,其它所有的进程都成功拦截到创建信息.再往下就只有驱动里面了...

如果是从驱动里面创建的话  OD是不是无法附加?

现在不可以附加 (要么没有权限,要和先被其它进程附加了) .程序本身没有添加任何代码保护(用xuetr扫描过了 包括进程扫描R3的HOOK),只是它调用的会进行文件效验,不对的话会直被关闭

  在入口写入0xCC (int 3) OD设置为即时调试器的话   文件效验又没有办法解决.  因为它启动多个程序,不知道是哪一个效验了文件.

感谢看完 ^_^ 下面请教问题了哦

问题一:

有没有办法在进程创建的第一时间不修改文件 又能让它的入口变成0xCC  ? 前提是 [全局HOOK] CreateProcessInternalW 都拦不到他的创建

这样即可以用OD打开,也能逃过文件效验


问题二:

如果是被进程进行了调试进程.那怎么脱离出来呢?
DebugSetProcessKillOnExit(FALSE)
DebugActiveProcessStop(被调试进程ID)

这两个函数试过调用没有效果,一样无法附加


非常期待您的指点,万分感谢

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 622
活跃值: (294)
能力值: ( LV13,RANK:410 )
在线值:
发帖
回帖
粉丝
2
CreateProcessInternalW,除了这个还有CreateProcessInternalA呢?还有更里面的ZwCreateProcess呢?
2012-8-29 23:05
0
雪    币: 4361
活跃值: (4343)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
CreateProcessInternalA 还是要经过 CreateProcessInternalW 的啊...

CreateProcess 经过了好几次了啊 应该不会直接用 ZwCreateProcess 吧 = =!

从CreateProcess 到 ZwCreateProcess 中间走了好几个圈了
2012-8-29 23:20
0
雪    币: 952
活跃值: (1821)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
不存在ring0创建的进程 应该经过了 ZwCreateProcess 或者ZwCreateProcessEx
2012-8-30 01:48
0
雪    币: 4361
活跃值: (4343)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
你好,继续请问下
ZwCreateProcessEx

的创建进程的代码 - -!  网上没有找到用 ZwCreateProcessEx 创建进程的代码  谢谢...
2012-8-30 06:25
0
雪    币: 207
活跃值: (26)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
win7还有NtCreateUserProcess哦
2012-8-30 08:48
0
雪    币: 51
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
老账号被盗,看下这个
2012-8-30 13:56
0
雪    币: 219
活跃值: (783)
能力值: (RANK:290 )
在线值:
发帖
回帖
粉丝
8
NtCreateProcessEx(
OUT PHANDLE ProcessHandle,
IN ACCESS_MASK DesiredAccess,
IN POBJECT_ATTRIBUTES ObjectAttributes,
IN HANDLE InheritFromProcessHandle,
IN ULONG CreateFlags,
IN HANDLE SectionHandle OPTIONAL,
IN HANDLE DebugObject OPTIONAL,
IN HANDLE ExceptionPort OPTIONAL,
IN ULONG JobMemberLevel
);
NtCreateProcess(
OUT PHANDLE ProcessHandle,
IN ACCESS_MASK DesiredAccess,
IN POBJECT_ATTRIBUTES ObjectAttributes,
IN HANDLE InheritFromProcessHandle,
IN BOOLEAN InheritHandles,
IN HANDLE SectionHandle OPTIONAL,
IN HANDLE DebugPort OPTIONAL,
IN HANDLE ExceptionPort OPTIONAL
);
是他的扩展 多了一个JobMemberLevel
2012-8-30 14:04
0
雪    币: 4361
活跃值: (4343)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
应该不会吧... 那要用这个的话不是要先构造出  创建进程的准备信息?  至少这个函数没有传递进程名啊.
在CreateProcessInternalW 后面调用了 ZwQueryInformationJobObject ....... ->NtCreateProcessEx

您可以看一下 CreateProcess的流程  和 NtCreateProcessEx 的参数

如果别人用NtCreateProcessEx的话  不是要先构造NtCreateProcessEx的信息? 比如先将进程文件映射?
2012-8-30 17:49
0
雪    币: 4361
活跃值: (4343)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
只是xp系统下哦.
2012-8-30 17:50
0
游客
登录 | 注册 方可回帖
返回
//