c#怎么实现进程防杀


c#如何实现进程防杀
如题~~~

C#语言 .net 程序开发

小五的小拖鞋 12 years, 11 months ago


简单。两种办法,一种已经有人说了,用两个程序相互挂勾,杀一个开一个,但是聪明点的杀毒会把两个一起杀。
第二种则是执行注入,注入到某些关键进程里,是杀不掉的。就算是杀了,没关系,再注入一下就OK了。
当然注入也是有讲就的。并非单纯的把dll注入进去,这样做的话聪明点的人会把你的dll都杀了,难道还要再生成,生成我也把生成路径给你堵死,动态路径,一样无效?呵呵,完全不用。我这里有一招,详情看我的blog。。。关于混淆的那篇,我想就是再强的杀毒软件也无法识别出这样的东东。。。因为全是byte[]{0,1,1,1,1,0,0,1........}

海呀好气啊 answered 12 years, 11 months ago


<fieldset> <legend> 探讨 </legend>
简单的保护:

进Ring0,把ZwOpenProcess,ZwTerminateProcess这两个函数HOOK掉.

发现自己的PID了就返回错误值.

同样的驱动可以用于保护其它进程.

不过这种保护比较初级,干掉驱动还原HOOK就可以了.

想要更强的保护,不是一个简单的话题.
</fieldset>


天才你好。。 answered 12 years, 11 months ago


简单的保护:

进Ring0,把ZwOpenProcess,ZwTerminateProcess这两个函数HOOK掉.

发现自己的PID了就返回错误值.

同样的驱动可以用于保护其它进程.

不过这种保护比较初级,干掉驱动还原HOOK就可以了.

想要更强的保护,不是一个简单的话题.

litnoon answered 12 years, 11 months ago


win下利用win的进程保护,然后你的进程若是被越级关闭,退出时就K掉win核心进程

Hasen answered 12 years, 11 months ago


要是想防止进程被杀 那为什么要写到进程里呢?
你可以写在内存或者其他的地方。
要是一定要写进程的话
可以在关闭的进程的时候进行判断来阻止它
把你的dispose方法重写下

罪恶怪大叔 answered 12 years, 11 months ago


可使用Hook TerminateProcess()和Hook OpenProcess()
参考

星期六的早饭 answered 12 years, 11 months ago


记得以前有个中文上网什么的东西。垃圾进程怎么都结束不掉。
还有以前用到一个黑客软件能把系统的进程全隐藏了。除了system和Idle其他的能全部隐藏。
好像叫个无忧隐藏。
也不知道怎么做到的。

辛勤的园丁 answered 12 years, 11 months ago


有没有见过有个东东叫 TXP1ATFORM的
之前上不良网站的时候中过,(本人没装杀毒软件)一段时间后发现了它,
怎么搞都杀不掉(都是作用软件类解决它)
杀了又出现,来回几次后,它就杀我的杀毒软件的启动程序杀了,很强大
可以参考一下


给我个痛快的! answered 12 years, 11 months ago


还是到驱动层去过滤。

约翰史密斯 answered 12 years, 11 months ago


关注!

-有关部门- answered 12 years, 11 months ago


<fieldset> <legend> 探讨 </legend>
引用:
拦截相应的API,比如TerminatProcess

给个例子哈
</fieldset>


刺猬丶顶上天 answered 12 years, 11 months ago


两个进程互相保护,如果其中一个进程关闭马上启动,我试过,不过效率可能不是满意,可以实现这样的功能!

zero马达 answered 12 years, 11 months ago


可以注入系统进程如explorer.exe

佐尔法格哈 answered 12 years, 11 months ago

Your Answer