
| 
 | 
|  | 作者: SysHu0teR [syshunter]  版主 | 登录 | 
| 我想时刻监视系统进程。如果有指定的程序运行,则KILL掉; 枚举进程部分代码如下: 代码: 然后在下面代码中无限制调用上面的enumproc()来达到监视目的: [code] FILE *fp; char fline[256]={0}; unsigned long pid; char list[256][256]={0}; // char s[2]; fp=fopen("d:\\list_tmp.txt","r"); for(int i=0;i<256&&!feof(fp);++i) { fgets(list[i],255,fp); list[i][strlen(list[i])-1]=0; } fclose(fp); while(1) { for(i=0;i<256 && *list[i]!=NULL;++i) { pid=strEnum(list[i]); if(pid!=0) KillProc(pid); //杀掉该pid; } } [code] 既从list_tmp.txt读出要监视的程序完整路径,然后不停的在内存中找。好象比较愚笨,这样非常占用资源。 望大家给点更好的主意。  | 
| 地主 发表时间: 06-01-20 14:40 | 
|  | 回复: TomyChen [quest]  版主 | 登录 | 
| Ring 3 API HOOK CreateProcessA/W Ring 0 Hook ZwCreateProcess 可以参考 《进程监视器》一文 xfocus.net上好像有 | 
| B1层 发表时间: 06-01-21 21:20 | 
|  | 回复: SysHu0teR [syshunter]  版主 | 登录 | 
| thanks,寻找中。。。 | 
| B2层 发表时间: 06-01-22 10:42 | 
|  | 回复: SysHu0teR [syshunter]  版主 | 登录 | 
| 问题解决,不过没用API HOOK,对我来说难度偏大。考虑到只是要监视窗口类程序,偷工减料用消息HOOK挂了WH_CBT,用了GetForegroundWindow等函数   | 
| B3层 发表时间: 06-01-24 18:11 | 
|  | 回复: SysHu0teR [syshunter]  版主 | 登录 | 
| 更正下,可以用WH_SHELL | 
| B4层 发表时间: 06-01-24 21:04 | 
|  | 回复: flynet [flynet]  论坛用户 | 登录 | 
| 驱动上也可以解决的 | 
| B5层 发表时间: 06-02-03 15:36 | 
| 
 | 
20CN网络安全小组版权所有
Copyright ©    2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon   

粤ICP备05087286号