Root帐户在未知时尚中遭到破坏

时间:2016-01-05 20:19:53

标签: linux security ubuntu ssh redis

我有一台运行Ubuntu 14.04-64的服务器运行OpenSSH 5.9,它在过去几天开始表现得非常奇怪。 SSH和HTTP连接超时。另外,我的SSH密钥不再有效。我不得不使用我的密码登录。然后我收到了我们托管服务提供商的通知,当我们很少超过10%时,服务器已经用完了当月(本月5天)分配带宽的400%。所以我怀疑服务器已被盗用。

我在HTOP中看到没有奇怪的CPU活动。我在iftop看到没有奇怪的网络活动。但是,在所有rc.Xd目录中都有一个奇怪的可执行文件作为服务设置:S90.777 {1452022308。它在/目录中调用了另一个名为.777 {1452022308的可执行文件。此进程以非常高的优先级运行,因此导致其他连接超时。该文件是二进制可执行文件。

我检查了服务器日志,发现了这个:

Jan  3 09:08:32 dev1 sshd[19757]: Accepted publickey for root from X.X.X.X port 41394 ssh2: RSA 31:1c:bd:a0:d0:56:1b:e0:fd:a3:05:cc:9e:96:4e:8c

我们永远不会将公钥放在我们的任何服务器上,而且永远不会。用户在服务器上大约8分钟然后消失了。 /root/.ssh中的authorized_keys文件是二进制格式且不可读。

我不知道用户如何能够将授权密钥文件放入/ root。这太不可思议了!

来自同一IP地址(在auth日志中)的其他活动是:

Jan  3 08:00:26 dev1 sshd[18907]: Connection closed by X.X.X.X [preauth]
Jan  3 08:31:01 dev1 sshd[19287]: Connection closed by X.X.X.X [preauth]
Jan  3 09:08:32 dev1 sshd[19757]: Accepted publickey for root from X.X.X.X port 41394 ssh2: RSA 31:1c:bd:a0:d0:56:1b:e0:fd:a3:05:cc:9e:96:4e:8c
Jan  3 09:16:26 dev1 sshd[19757]: Received disconnect from X.X.X.X: 11: disconnected by user

我已经在我们所有其他服务器上禁用了root ssh登录,但我一开始就对这种情况发生的原因感到惊讶。有谁知道这件事怎么可能发生?

1 个答案:

答案 0 :(得分:2)

我弄清楚发生了什么。最重要的证据是/ root中的authorized_keys文件是二进制格式。

我最近在这台服务器上安装了redis。显然,如果您不将redis绑定到localhost,则可以轻松地将其置于将SSH密钥放入其运行的用户的authorized_keys文件中(在本例中为root)。事实上,redis的创建者在博文中描述了这个过程:enter image description here

所以,总结一下:

  1. 将redis绑定到localhost或内部网络连接,并远离互联网。
  2. 为redis添加身份验证密码。
  3. 将redis作为自己的用户运行,而不是以root身份运行。