我怎么知道黑客是如何进入我的机器的?

我怎么知道黑客是如何进入我的机器的?

我有一台专用机器,今天我收到主机发来的一封电子邮件,说如果我不停止滥用网络,我的服务器将被封锁。我不是垃圾邮件发送者或黑客。有人用我的机器做坏事。他们在电子邮件中附加了一条注释,显示以下内容。

##########################################################################    
#               Netscan detected from host  178.63.xxx.xxx               #
##########################################################################

time                protocol src_ip src_port          dest_ip dest_port

---------------------------------------------------------------------------
Sat Oct  4 11:24:09 2014 TCP  178.63.xxx.xxx 26217 =>      94.xxx.xxx.0 22
Sat Oct  4 11:24:09 2014 TCP  178.63.xxx.xxx 26217 =>      94.xxx.xxx.4 22
Sat Oct  4 11:24:09 2014 TCP  178.63.xxx.xxx 26217 =>     94.xxx.xxx.41 22
Sat Oct  4 11:24:09 2014 TCP  178.63.xxx.xxx 26217 =>     94.xxx.xxx.61 22
Sat Oct  4 11:24:09 2014 TCP  178.63.xxx.xxx 26217 =>     94.xxx.xxx.80 22

我检查了我的系统日志,它提到了与上述时间大致相同的以下内容。请注意带有 **s 的行。‘设备进入混杂模式’

##################

Oct  4 11:20:01 v7 CRON[18962]: (cap) CMD (cd /var/tmp/ ; ./ps x >/dev/null 2>&1)
**Oct  4 11:24:34 v7 kernel: [7144175.421969] device eth0 entered promiscuous mode**
Oct  4 11:30:01 v7 CRON[19075]: (cap) CMD (cd /var/tmp/ ; ./ps x >/dev/null 2>&1)
**Oct  4 11:31:31 v7 kernel: [7144591.716996] device eth0 left promiscuous mode**
Oct  4 11:31:31 v7 kernel: [7144592.377159] ssh-scan[19234]: segfault at 0 ip 0000000008048e33 sp 00000000ffa39110 error 4 in ssh-scan[8048000+c0000]

###################

我也注意到了很多这样的情况:

#############

Oct  4 11:31:47 v7 kernel: [7144607.756445] ssh-scan[19178]: segfault at 0 ip 0000000008048e33 sp 00000000ffa39110 error 4 in ssh-scan[8048000+c0000]
Oct  4 11:31:50 v7 kernel: [7144611.372464] ssh-scan[19725]: segfault at 0 ip 0000000008048e33 sp 00000000ffa39110 error 4 in ssh-scan[8048000+c0000]
Oct  4 11:31:52 v7 kernel: [7144613.062509] ssh-scan[19326]: segfault at 0 ip 0000000008048e33 sp 00000000ffa39110 error 4 in ssh-scan[8048000+c0000]
Oct  4 11:31:53 v7 kernel: [7144614.091379] ssh-scan[19704]: segfault at 0 ip 0000000008048e33 sp 00000000ffa39110 error 4 in ssh-scan[8048000+c0000]
Oct  4 11:31:53 v7 kernel: [7144614.121336] ssh-scan[19747]: segfault at 0 ip 0000000008048e33 sp 00000000ffa39110 error 4 in ssh-scan[8048000+c0000]
Oct  4 11:31:53 v7 kernel: [7144614.377344] ssh-scan[19727]: segfault at 0 ip 0000000008048e33 sp 00000000ffa39110 error 4 in ssh-scan[8048000+c0000]
Oct  4 11:31:53 v7 kernel: [7144614.404263] ssh-scan[19712]: segfault at 0 ip 0000000008048e33 sp 00000000ffa39110 error 4 in ssh-scan[8048000+c0000]
Oct  4 11:31:54 v7 kernel: [7144614.557179] ssh-scan[19708]: segfault at 0 ip 0000000008048e33 sp 00000000ffa39110 error 4 in ssh-scan[8048000+c0000]
Oct  4 11:31:54 v7 kernel: [7144614.673588] ssh-scan[19709]: segfault at 0 ip 0000000008048e33 sp 00000000ffa39110 error 4 in ssh-scan[8048000+c0000]
Oct  4 11:31:54 v7 kernel: [7144614.678058] ssh-scan[19749]: segfault at 0 ip 0000000008048e33 sp 00000000ffa39110 error 4 in ssh-scan[8048000+c0000]
Oct  4 11:31:54 v7 kernel: [7144615.195993] ssh-scan[19711]: segfault at 0 ip 0000000008048e33 sp 00000000ffa39110 error 4 in ssh-scan[8048000+c0000]

#########

现在我该怎么办?我怎么知道黑客是如何获得对我机器的访问权限的?我该如何阻止这种情况发生?

另外,几个月前也发生过类似事件,当时我的主机说我安装的 elasticsearch 可能存在安全漏洞。我卸载了 elasticsearch,因为我没有使用它,并更改了 root 密码。

任何对调查此问题提供的帮助都将不胜感激。

谢谢

更新 1

我跑了起来who -u,看到了以下内容

root     hvc0         Jul 13 18:55  old          728
deployer pts/0        Oct  4 11:19 04:08       18836 (240.50.134.37.dynamic.jazztel.es) (IS THIS THE HACKER?)
root     pts/3        Oct  4 14:53   .         14794 (122.174.xxx.xxx) (THIS IS MY IP)

答案1

这个问题很难回答,因为通常你不应该只做一件事。相反,你应该从各种来源收集信息,看看你得到了什么,然后进一步跟踪这些线索。不过这里有一些想法:

从您提供的信息中我发现的重要信息包括:

  • 已经安装了一个 cron 任务,并且你知道它何时运行
  • cron 任务运行一个已安装或已安装在的程序/var/tmp/ps
  • 名为 的程序ssh-scan一直在运行,并反复出现分段错误。看起来这是在 cron 作业运行后发生的

到目前为止,还没有太多可进行的内容,但要寻找有用的时间戳。

  • 创建和修改时间/var/tmp/ps
  • 作业运行的 cron 文件的修改时间。

幸运的是,这些时间戳可能对应于您的机器被入侵的时间,在这种情况下,您会更清楚在日志中哪里可以查找有关实际入侵的信息。

某个地方有或曾经有一个系统识别为 的程序ssh-scan。用 查找它locate。程序在运行后可能会重命名自身,但在这种情况下,程序ssh-scan中可能包含文本,在这种情况下,您可能可以使用 grep 找到它。

查看 .bash_history 文件等内容,查找crontabps和的提及ssh-scan。如果黑客留下了命令历史记录,这可能会帮助您找到它。

查看列出的条目,last查找任何异常。

查看 /var/tmp/ps 的内容。如果是二进制文件,请查看 的输出strings /var/tmp/ps

  • 黑客在程序中表明自己的身份是很常见的,但该文件的作者并不一定就是入侵你机器的人
  • 该文件中可能有一些有趣的东西,或者可以使用 Google 找到该文件的 md5 校验和。

希望上述内容能够带来一些新的线索。

攻击者将程序放入 /var/tmp,并能够打开和关闭接口的混杂模式,这意味着他们拥有 root 访问权限。虽然您可能能够确定入口点,但您不太可能确定是否已关闭他们的访问权限。您可能应该重新安装服务器,并非常小心地复制哪些内容到新服务器。了解黑客做了什么可能对了解您不应该复制哪些内容非常有用。尽可能从受感染系统之外的可信来源重新安装。

黑客可能仍有权访问。他们可能会试图抹去证据,甚至可能采取相当具有破坏性的手段,因此请确保备份所有内容。检查所有cron条目at以查找后门。使用防火墙,尽可能地锁定访问权限,包括将访问权限限制在尽可能少的远程 IP 集(例如,仅允许从指定 IP 进行 ssh 访问)。如果您的主机有权访问其他任何内容,请尽可能地限制它。

最后但同样重要的一点是,考虑从更有经验的人那里获得专业帮助。

[编辑回应您的编辑]

这很可能就是你的攻击者。也可能是黑客已经控制的中间系统。这样的安排可能很复杂,很难追踪,但也有很多头脑简单的黑客。

备份完成后,请联系 jazztel.es 的管理员。域名没有 whois .es,但我认为您想要的地址是[电子邮件保护]。他们可能会关闭这些设施,甚至可能帮助将此事提交警方处理。

[编辑其他补充]

在您的服务器可能拥有的各种特权访问中,如果您习惯将 ssh 代理连接转发到您的服务器,请立即停止。它很容易被拥有您服务器 root 访问权限的人滥用,尽管只有在您的 ssh 会话处于连接状态时才会发生这种情况。

相关内容