200分问题:用C#实现一个进程不被关闭

careast 2008-05-17 01:33:29
问题是这样的:我有一个工具A.exe,可能被留有后门,会被远程关闭掉。这个工具启动好之后,会在进程管理中出现一个a.exe的进程。

现在我想做一个工具,实现保护这个A.exe进程不被关闭掉。大家最好能提供代码,我对底层点的东西,不是很熟悉,也没有C++基础。

顶也有分,谢谢
...全文
790 55 打赏 收藏 转发到动态 举报
写回复
用AI写文章
55 条回复
切换为时间正序
请发表友善的回复…
发表回复
ziyan688999 2010-04-26
  • 打赏
  • 举报
回复
LZ不厚道。
搞个小马甲接分。
jelenyoung 2009-10-13
  • 打赏
  • 举报
回复
up
fuminmin 2008-06-16
  • 打赏
  • 举报
回复
最好做成,启动2个程序!!互相检查!如果A程序被关闭,那么用B程序启动A程序,反之亦然!
我现在就是这样做的,但是如果像47楼说的那样 (最差的办法...完全可以写一个简单的C程序..几行代码就可以把这2个程序一起关闭.) 不是一样不能保护了。
wh110 2008-05-20
  • 打赏
  • 举报
回复
楼主是写木马还是病毒程序啊,
没有关闭不掉的进程,如果电脑关闭了你的这个能不被关闭吗?
wei_meiyan 2008-05-20
  • 打赏
  • 举报
回复
哪有c++ builder6.0 基础教程版的电子书呀
tgl10 2008-05-20
  • 打赏
  • 举报
回复
看過一個通過寫驅動使進程隱藏起來
wangwang1103 2008-05-20
  • 打赏
  • 举报
回复
[Quote=引用 22 楼 longlijun 的回复:]
引用 18 楼 careast 的回复:
很晕啊,没人会的吗


你的问题很极端, 肯定没人会, 杀不掉, 是不可能的,
特别的是, 你还没办法修改A.EXE的代码
进程守护可以防止一些普通用户
远程线程或DLL注入也不能绝对解决问题, 只是难度稍高
你只能权衡一下利弊, 做个选择而已
[/Quote]

顶一下!
问个弱智问题:如果是一般的普通用户,该如何写这个进城守护!谢谢了!
r_swordsman 2008-05-20
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 pfworld 的回复:]
最好做成,启动2个程序!!互相检查!如果A程序被关闭,那么用B程序启动A程序,反之亦然!
[/Quote]
最差的办法...完全可以写一个简单的C程序..几行代码就可以把这2个程序一起关闭.
r_swordsman 2008-05-20
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 akirya 的回复:]
先问一下
关机会不会关掉你的程序?
要是点关机后能被系统关掉,哪么你的要求就永远达不到.
[/Quote]

谁说关机后程序就不能运行?
Bind 2008-05-20
  • 打赏
  • 举报
回复
你都不先搞清楚是A程序自己接受到命令退出,还是有另一进程把他杀掉?
lynx090 2008-05-20
  • 打赏
  • 举报
回复
一般用SSDT HOOK保护的~
为了简单也可以参考:
http://topic.csdn.net/u/20080518/12/c0cf9d86-0e2c-4abb-82fe-6e8b5ebb4020.html
他只用几个API就实现了.
meneil 2008-05-20
  • 打赏
  • 举报
回复
不大清楚哦,本人还初级菜鸟阶段,不过支持一个乐
wudi626 2008-05-19
  • 打赏
  • 举报
回复
MARK!
sankt 2008-05-19
  • 打赏
  • 举报
回复
我来凑凑热闹,

我认为可以这样,
前提是可以修改A.exe,那么可以在关闭的是触发一个copy事件,
就是A.exe to A1.exe 启动之。
这样就可以保证进程一直运行着。

如果不能修改,估计只有做一个Daemon,即守护进程,不停地check A.exe的状态,发现其关闭,立即启动。
轮询时间应该是1秒,甚至更少


jacky_gxc 2008-05-19
  • 打赏
  • 举报
回复
分全部给我,我给你个DEMO!
careast 2008-05-19
  • 打赏
  • 举报
回复
[Quote=引用 36 楼 xminsong 的回复:]
被杀后马上重启程序容易,
但保证不会被关闭就难了!

该程序会被远程关闭掉?
该程序的设计者是否使用了自定义消息?如是,查出是什么消息,hook它。
[/Quote]


这个方法,不错,不过好像用到底层的东西,不会,能不能给个例子参考一下
careast 2008-05-19
  • 打赏
  • 举报
回复
嗯,我也考虑了用服务的方式,不过不知道怎么实现。
yhy0611 2008-05-19
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 pfworld 的回复:]
最好做成,启动2个程序!!互相检查!如果A程序被关闭,那么用B程序启动A程序,反之亦然!
[/Quote]

这是个笨的好办法


可以做成Windows服务
xs19881114 2008-05-18
  • 打赏
  • 举报
回复
写两个进程````a 和 b`就像楼上说的``ab互相监听```
喜欢PHP 2008-05-18
  • 打赏
  • 举报
回复
唯一的办法可以尝试下采用守护进程...具体应用可以看看卡巴的...

杀不掉其实不现实..不如考虑被杀掉后自动启动还实际点.
加载更多回复(35)

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧