c#如何实现进程防杀
如题~~~
------解决方案--------------------好像有点难度,多数的进程都是可以杀死的
------解决方案--------------------防杀可能比较难,写个Windows服务看着进程,杀掉后立马启动可以不?
------解决方案--------------------病毒?
------解决方案--------------------像绿坝那样,做两个进程互相保护
------解决方案--------------------搞个后台进程保护这个进程
------解决方案--------------------
------解决方案--------------------二个互相保护的进程可以不???
------解决方案--------------------写个监视进程的,如果此进程被杀掉,马上启动。
------解决方案--------------------
------解决方案--------------------拦截相应的API,比如TerminatProcess
------解决方案--------------------可以注入系统进程如explorer.exe
------解决方案--------------------两个进程互相保护,如果其中一个进程关闭马上启动,我试过,不过效率可能不是满意,可以实现这样的功能!
------解决方案--------------------
------解决方案--------------------关注!
------解决方案--------------------还是到驱动层去过滤。
------解决方案--------------------有没有见过有个东东叫 TXP1ATFORM的
之前上不良网站的时候中过,(本人没装杀毒软件)一段时间后发现了它,
怎么搞都杀不掉(都是作用软件类解决它)
杀了又出现,来回几次后,它就杀我的杀毒软件的启动程序杀了,很强大
可以参考一下
------解决方案--------------------记得以前有个中文上网什么的东西。垃圾进程怎么都结束不掉。
还有以前用到一个黑客软件能把系统的进程全隐藏了。除了system和Idle其他的能全部隐藏。
好像叫个无忧隐藏。
也不知道怎么做到的。
------解决方案--------------------可使用Hook TerminateProcess()和Hook OpenProcess()
参考
------解决方案--------------------要是想防止进程被杀 那为什么要写到进程里呢?
你可以写在内存或者其他的地方。
要是一定要写进程的话
可以在关闭的进程的时候进行判断来阻止它
把你的dispose方法重写下
------解决方案--------------------win下利用win的进程保护,然后你的进程若是被越级关闭,退出时就K掉win核心进程
------解决方案--------------------简单的保护:
进Ring0,把ZwOpenProcess,ZwTerminateProcess这两个函数HOOK掉.
发现自己的PID了就返回错误值.
同样的驱动可以用于保护其它进程.
不过这种保护比较初级,干掉驱动还原HOOK就可以了.
想要更强的保护,不是一个简单的话题.
------解决方案--------------------
------解决方案--------------------简单。两种办法,一种已经有人说了,用两个程序相互挂勾,杀一个开一个,但是聪明点的杀毒会把两个一起杀。
第二种则是执行注入,注入到某些关键进程里,是杀不掉的。就算是杀了,没关系,再注入一下就OK了。
当然注入也是有讲就的。并非单纯的把dll注入进去,这样做的话聪明点的人会把你的dll都杀了,难道还要再生成,生成我也把生成路径给你堵死,动态路径,一样无效?呵呵,完全不用。我这里有一招,详情看我的blog。。。关于混淆的那篇,我想就是再强的杀毒软件也无法识别出这样的东东。。。因为全是byte[]{0,1,1,1,1,0,0,1........}