Linux 根帐户以未知方式受损

Linux 根帐户以未知方式受损,linux,security,ubuntu,ssh,redis,Linux,Security,Ubuntu,Ssh,Redis,我有一台运行Ubuntu14.04-64的服务器,运行OpenSSH 5.9,这台服务器在过去几天开始运行得非常奇怪。SSH和HTTP连接超时。此外,我的SSH密钥不再工作。我不得不用我的密码登录。然后我从我们的主机提供商那里得到通知,服务器在这个月(一个月后的5天)使用了400%的分配带宽,而我们很少超过10%。所以我怀疑服务器被破坏了 我在HTOP中没有看到奇怪的CPU活动。我在iftop中没有看到奇怪的网络活动。但是,在所有rc.Xd目录中都有一个奇怪的可执行文件被设置为服务:S90.77

我有一台运行Ubuntu14.04-64的服务器,运行OpenSSH 5.9,这台服务器在过去几天开始运行得非常奇怪。SSH和HTTP连接超时。此外,我的SSH密钥不再工作。我不得不用我的密码登录。然后我从我们的主机提供商那里得到通知,服务器在这个月(一个月后的5天)使用了400%的分配带宽,而我们很少超过10%。所以我怀疑服务器被破坏了

我在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
我们从未为root用户在任何服务器上放置过公钥,也从来没有。用户在服务器上停留了大约8分钟,然后消失了。/root/.ssh中的授权密钥文件是二进制格式的,无法读取

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

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


我已经在我们所有的其他服务器上禁用了root ssh登录,但我对这一情况的发生感到惊讶。有人知道这是怎么发生的吗?

我知道发生了什么。最重要的证据是/root中的授权密钥文件是二进制格式的

我最近在这台服务器上安装了redis。显然,如果您不将redis绑定到localhost,就可以很容易地将SSH密钥放入运行它的用户的授权密钥文件中(在本例中为root)。事实上,redis的创建者在一篇博文中描述了这一过程:

因此,总结一下:

  • 将redis绑定到本地主机或内部网络连接,并使其远离internet
  • 向redis添加身份验证密码
  • 以自己的用户身份运行redis,而不是以root用户身份运行

  • 运行
    last
    命令应该向您显示每个登录事件-不会告诉您如何以及为什么,但可能会给您提供关于谁和何时登录的线索。@NeilMcGuigan-不,Softlayer。
    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