首页
社区
课程
招聘
[求助]怎么钩 PspExitThread 防止线程自杀
发表于: 2009-7-8 14:52 8267

[求助]怎么钩 PspExitThread 防止线程自杀

2009-7-8 14:52
8267
如题  HOOK PspExitThread  时碰到的问题

原型应该是  
void PspExitThread(NTSTATUS status)

这是PspExitThread的假函数   
void __stdcall  fake_PspExitThread(NTSTATUS status)
{
PETHREAD Thread=PsGetCurrentThread();

DbgPrint("thread=%x",Thread);

if (Thread==Mythread) //MyThread 是自己线程的ETHREAD指针
{
return ;//这里直接返回会蓝  不知道应该怎样返回 才能阻止线程自杀  
}

Real_PspExitThread(status);

}

其他线程退出是正常的   但不能阻止自身线程退出   一退出就蓝  
也就是说  if (Thread==Mythread)   条件成立的话  执行return   就会蓝

要阻止特定线程退出  应该怎样写这个fake_PspExitThread函数 或者说 应该怎样返回  ?

BAIDU GOOLE 了半天  都没有相关的资料  
请知道的朋友帮帮忙  谢谢

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 522
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
还是没人回。。    大家看不懂吗?   
小弟虽然表达能力不行  但自认为 问题应该是说清楚了啊   

希望做过的朋友 指点一下
2009-7-8 16:26
0
雪    币: 709
活跃值: (2420)
能力值: ( LV12,RANK:1010 )
在线值:
发帖
回帖
粉丝
3
看diyhack在看雪发的 进程防杀挑战贴~
2009-7-8 16:49
0
雪    币: 709
活跃值: (2420)
能力值: ( LV12,RANK:1010 )
在线值:
发帖
回帖
粉丝
4
2009-7-8 16:51
0
雪    币: 635
活跃值: (101)
能力值: ( LV12,RANK:420 )
在线值:
发帖
回帖
粉丝
5
有什么好钩的?直接发一个rundown apc,或者用lego notify,多么正规啊
2009-7-8 17:02
0
雪    币: 290
活跃值: (20)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
这种方式并没有保护的进程,只是暂时让进程处于“睡眠”状态,自己什么也做不了,一但梦醒也就是完蛋的时候
2009-7-8 17:28
0
雪    币: 522
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
总算是有人回贴了  先谢谢大家  呵呵



驱动加载就蓝了  F5了一下  大概了解了  

仔细一想 确实  6楼的朋友说的很对       



网上关于notify 的资料很多  但都只是得到一个通知的消息
找不到怎样去阻止这个操作的资料        
不知道 MJ  大侠 能否放个阻止操作的简单例子   
2009-7-8 19:13
0
雪    币: 635
活跃值: (101)
能力值: ( LV12,RANK:420 )
在线值:
发帖
回帖
粉丝
8
以前放过进程结束挑战就是用通知啊~
2009-7-8 22:18
0
雪    币: 354
活跃值: (10)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
9
我那古老的驱动能不能加载意义不大
就算你加载成功你也不知道它为什么能阻止进程退出

那驱动是用来F5的,不需要加载,我连个EXE都没写。。。
2009-7-9 14:09
0
游客
登录 | 注册 方可回帖
返回
//