关于"cmd.exe ftp.exe的解决方法"


 关于"  cmd.exe    ftp.exe的解决方法"


前些日子偶的机子也出此问题!很是头疼啊!用了几款杀毒软件如:NOD32、瑞星、Mcafee等都无济于事!只有Mcafee查出在system32下发现两个文件eq和tt,但清除掉后,过上一会就会自动生成了!总是无发彻底清除!

后用木马杀客v5.31查看网络状态,发现1433访问量非常大!1433不是sqlserver的默认端口嘛?说明有人在连接我的数据库(机子上装有slqserver2000用来临时测试用),同时还发现ftp.exe进程在访问一个远程计算机的端口,不知道在下载什么!估计不是什么好东西!看来偶的机子是被人监控了!怎么办?关掉ftp.exe和cmd.exe两个进程后!没多久就又自动被打开了!但我发现被打开的时间没有规律!有时很快就被打开调用,有时则很长时间才又会出现!看来是被别人手动的执行的呢!仔细想了下!看来问题是出在sqlserver 上了,到网上查了下相关资料,最后注意到这个存储过程上xp_cmdshell,网上资料解释说:

xp_cmdshell 操作系统命令外壳 。这个过程是一个扩展存储过程,用于执行指定命令串,并作为文本行返回任何输出。

一般情况下,xp_cmdshell对管理员来说也是不必要的,xp_cmdshell的消除不会对Server造成
  任何影响。
   可以将xp_cmdshell消除: 
=================================================================
 xp_cmdshell的删除和恢复 
 删除扩展存储过过程xp_cmdshell的语句:
exec sp_dropextendedproc 'xp_cmdshell' 

恢复cmdshell的SQL语句
EXEC sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll'

在sqlserver的query analyer中运行以下命令就可以去掉sa的xp-cmdshell权限: 
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[xp_cmdshell]') and OBJECTPROPERTY(id, N'IsExtendedProc') = 1) exec sp_dropextendedproc N'[dbo].[xp_cmdshell]' GO

一般SQL2000是通过下面语句恢复: EXEC sp_addextendedproc xp_cmdshell ,@dllname ='xplog70.dll' 
而SQL97是通过下面语句恢复 EXEC sp_addextendedproc xp_cmdshell ,@dllname ='xpsql70.dll'

sp_addextendedproc'xp_cmdshell','xpsql70.dll' (sql 7.0) sp_addextendedproc'xp_cmdshell','xplog70.dll' (sql 2000) 
 

=================================================================




   
  [经验]
   最好把Server的xp_cmdShell存贮过程消除。

于是便将其关闭掉!呵呵。。。。再用木马杀客查看网络状态!哈。。1433端口也比较正常了,而且ftp.exe和cmd.exe也再没有出现过了!看来问题确实出在安全设置上啊!把这次经历贴出来,希望碰到同样问题的朋友能有个参考了!
 

 

posted @ 2007-08-06 17:17  吹吹风----NICK  阅读(4301)  评论(6编辑  收藏  举报