c#怎么实现进程防杀


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

C#语言 .net 程序开发

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


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

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


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

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

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

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

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

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


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


简单的保护:

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

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

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

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

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

litnoon answered 12 years, 4 months ago


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

Hasen answered 12 years, 4 months ago


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

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


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

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


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

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


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


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


还是到驱动层去过滤。

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


关注!

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


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

给个例子哈
</fieldset>


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


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

zero马达 answered 12 years, 4 months ago


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

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

Your Answer