Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
对任务管理器隐藏C#程序?_C# - Fatal编程技术网

对任务管理器隐藏C#程序?

对任务管理器隐藏C#程序?,c#,C#,有没有办法从Windows任务管理器中隐藏C#程序 编辑: 感谢您的热烈响应!我不想做什么可怕的事。我只是想和我的朋友打赌我可以在他不注意的情况下做到。而且,我自己也不是一个能够编写rootkit的极客,正如有人建议的那样,尽管我很想知道如何去做。我不知道,也不应该知道。任务管理器的要点是允许用户检查流程等 如果用户能够做到这一点,他们应该能够找到您的程序。如果他们不应该在任务管理器中四处闲逛,那么组策略应该防止这样做,而不是你的程序。你不应该隐藏它,但是你可以防止用户终止进程 请参阅。您可以将

有没有办法从Windows任务管理器中隐藏C#程序

编辑:
感谢您的热烈响应!我不想做什么可怕的事。我只是想和我的朋友打赌我可以在他不注意的情况下做到。而且,我自己也不是一个能够编写rootkit的极客,正如有人建议的那样,尽管我很想知道如何去做。

我不知道,也不应该知道。任务管理器的要点是允许用户检查流程等


如果用户能够做到这一点,他们应该能够找到您的程序。如果他们不应该在任务管理器中四处闲逛,那么组策略应该防止这样做,而不是你的程序。

你不应该隐藏它,但是你可以防止用户终止进程


请参阅。

您可以将程序设置为服务,然后它将显示为“svchost”。还有更多,但这应该会给你一个正确方向的提示。

我不知道有什么方法可以对任务管理器隐藏它,但你可以通过将它显示为“svchost.exe”来伪装它。它将与所有其他的(通常有几个)一起被归为一类,并且将变得难以区分。

这并不意味着要僵尸化,但我想我可以提供一些有用的信息

如果要隐藏应用程序,有两种方法(我可以想到atm)

他们都有自己的起伏

[1] SSDT表挂钩-基本上,您必须将表的MDL设置为可写,用函数的地址覆盖
NtQuerySystemInformation
(iirc)的地址,并让它在过滤结果后调用原始函数

这种方法不能很好地满足您的需要,因为挂钩函数总是需要在内存中,并且需要编写内核模式驱动程序。这是一件有趣的事情,但调试是一件痛苦的事情,因为异常意味着BSOD

[2] 直接内核对象操作(DKOM)进程列表是一个双链接列表,通过内核模式驱动程序,您可以更改进程上下记录的指针,使其指向您的进程。这仍然需要使用内核模式驱动程序,但是有一些rootkit(如FU)可以轻松下载,其中包含exe和服务。exe可以作为子进程从应用程序内部调用(在FU的发布版本中,至少在我发现的版本中,有一个bug我必须修复,如果隐藏的应用程序退出,计算机将BSOD,这是一个微不足道的修复)

谢天谢地,这几乎会被任何像样的杀毒软件捕获,所以如果你想做一些鬼鬼祟祟的事情,你必须学会避开它(提示:它们使用二进制签名)

我从未使用过方法1,但方法2在VB.Net应用程序中对我有效

第三种可能的选择是将应用程序创建为windows服务,默认情况下,这将显示在task manager中,但我敢打赌,有一种方法可以告诉它不要显示在那里,因为还有很多其他服务没有显示在task manager中


希望我能有点帮助,我的建议是,如果你对这种C++学习感兴趣。

为什么你想做这样的事情?我不知道答案,但是如果我知道了,我会先问你为什么这样做,然后解释如何去做这个。有一个问题:不要启动它我想我们都知道什么样的程序需要这样做(X-)我认为这是一个有效和有趣的问题。完全同意。我看不出一个程序应该实现的原因。是的,实现过度的程序非常烦人。如果他们“实现”的是垃圾邮件、擦除硬盘等,那肯定是这样的。。。对程序的功能设置限制是完全合理的。原因:例如,某些防病毒或远程应用程序隐藏了它们的任务。事实并非如此-您仍然可以在任务管理器中看到可执行文件的路径。@frou:是的,但如果您将其命名为svchost.exe并将其放在c:/Windows下面的某个位置,大多数人只会认为它是一个普通的windows应用程序。诸如此类——简单地称它为svchost.exe是samoz建议的更混乱/效率更低的版本:)+1——我认为这是混淆恶意软件的更常见技术之一。