none
如何创建一个禁止结束其它进程的进程? RRS feed

全部回复

  • 限制自己进程的行为, 无非自己不去做这个事情不就可以了么 ?
    2012年8月19日 17:18
  • 不是限制自己,是限制其它进程,目标进程必须要执行,但是不可信任的

    The light is my strength

    2012年8月19日 23:28
  • 烦请各位帮帮忙,看能不能解决这个小问题


    The light is my strength

    2012年8月21日 1:05
  • Flysha, 你可以尝试注册为系统进程,然后捕捉事件返回false。

    如果这个不是你想要的, 你可以看这篇文章,里面有提到用c++来写一个程序,禁止结束其他进程的。

    http://blog.csdn.net/kangkanglx/article/details/5692984

    
    
    
    2012年8月21日 10:43
  • 需求十分清楚,创建一个低权限的进程,而不是提高自己的等级,也不应该是保护其它进程。

    我记得Windows中低权限的用户就不能退出其它用户的进程,一定有办法!

    问题是怎么创建一个低权限的令牌,或者怎么创建一个安全描述符,使得目标进程没有退出其它进程的权限?


    The light is my strength

    2012年8月21日 16:49
  • 进程中所有的线程结束后进程自动退出

    xiao

    2012年8月23日 7:11
  • 不是自己的进程,目标进程是不受信任的,且必须执行

    The light is my strength

    2012年8月24日 10:59
  • 烦请各位帮帮忙,看能不能解决这个小问题

    The light is my strength

    2012年8月25日 14:41
  • 这个不好做的,只能注入钩子同时使用Detours钩TerminateProcess,让其无效

    不过结束进程的方法很多,你需要把每条路都堵住,不现实

    理论上来说如果这个进程是你自己启动的,你可以把他的用户组设置成普通用户,这样他就没办法结束管理员用户的进程了,具体可以使用API CreateProcessAsUser


    0xDEADBEEF


    2012年8月27日 10:23
    版主
  • 你好,在我的系统中,我使用如下代码(其中Guest是低权限用户):

    #include <Windows.h>
    #include <tchar.h>
    #include <strsafe.h>
    #include <atlsecurity.h>
    
    int main()
    {
     WCHAR szCmdLine[] = L"CMD";
     STARTUPINFO si;
     ZeroMemory(&si, sizeof(si));
     si.cb = sizeof(si);
     PROCESS_INFORMATION pi;
     CreateProcessWithLogonW(L"Guest", NULL, L"123456", 0, NULL, 
      szCmdLine, 0, NULL, NULL, &si, &pi);
    }

    但发现子进程仍然可以通过OpenProcess和TerminateProcess结束高权限用户中的其它进程,请问是方法有误,还是系统需要额外的配置?


    The light is my strength

    2012年8月28日 2:55
  • 烦请各位帮帮忙,看能不能解决这个小问题

    The light is my strength

    2012年8月31日 5:38
  • 把你这个特别的进程丢给另外的用户执行。。这个用户看不见别人的进程。。那样就可以啦。。

    学习学习....

    2012年9月3日 3:43