Вирус crond64 / tsm в Ubuntu

14

Недавно я заметил, что мой домашний сервер стал мучительно медленным. Все ресурсы были съедены двумя процессами: crond64и tsm. Хотя я неоднократно убивал их, они продолжали появляться снова и снова.

В то же время мой провайдер уведомлял меня о злоупотреблении, исходящем из моего IP-адреса:

==================== Excerpt from log for 178.22.105.xxx====================
Note: Local timezone is +0100 (CET)
Jan 28 20:55:44 shared06 sshd[26722]: Invalid user admin from 178.22.105.xxx
Jan 28 20:55:44 shared06 sshd[26722]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=178.22.105.xxx
Jan 28 20:55:45 shared06 sshd[26722]: Failed password for invalid user admin from 178.22.105.xxx port 33532 ssh2
Jan 28 20:55:46 shared06 sshd[26722]: Received disconnect from 178.22.105.xxx port 33532:11: Bye Bye [preauth]
Jan 28 20:55:46 shared06 sshd[26722]: Disconnected from 178.22.105.xxx port 33532 [preauth]
Jan 28 21:12:05 shared06 sshd[30920]: Invalid user odm from 178.22.105.xxx
Jan 28 21:12:05 shared06 sshd[30920]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=178.22.105.xxx
Jan 28 21:12:07 shared06 sshd[30920]: Failed password for invalid user odm from 178.22.105.xxx port 45114 ssh2
Jan 28 21:12:07 shared06 sshd[30920]: Received disconnect from 178.22.105.xxx port 45114:11: Bye Bye [preauth]
Jan 28 21:12:07 shared06 sshd[30920]: Disconnected from 178.22.105.xxx port 45114 [preauth]

Этот сайт сообщил мне, что у меня может быть вирус. Я запускаю Sophos AV, сканируя весь мой жесткий диск, и он действительно обнаружил вирус /tmp/.mountfs/.rsync. Поэтому я удалил всю папку и подумал, что это она. Но это продолжало возвращаться потом. Затем я проверил файл cron пользователя /var/spool/cron/crontabs/kodi(вирус запускался с использованием кода моего медиасервера kodi), который выглядел так:

# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (cron.d installed on Sun Feb  3 21:52:03 2019)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
* */12 * * * /home/kodi/.ttp/a/upd>/dev/null 2>&1
@reboot /home/kodi/.ttp/a/upd>/dev/null 2>&1
5 8 * * 0 /home/kodi/.ttp/b/sync>/dev/null 2>&1
@reboot /home/kodi/.ttp/b/sync>/dev/null 2>&1
#5 1 * * * /tmp/.mountfs/.rsync/c/aptitude>/dev/null 2>&1

Похоже, что вирус периодически активирует себя из другого каталога. Содержимое этого каталога:

>>> ls /home/kodi/.ttp/*
/home/kodi/.ttp/cron.d  /home/kodi/.ttp/dir2.dir

/home/kodi/.ttp/a:
a  bash.pid  config.txt  crond32  crond64  cronda  crondb  dir.dir  pools.txt  run  stop  upd

/home/kodi/.ttp/b:
a  dir.dir  rsync  run  stop  sync

/home/kodi/.ttp/c:
aptitude  dir.dir  go  ip  lib  n  p  run  slow  start  stop  tsm  tsm32  tsm64  v  watchdog

Я удалил все эти файлы и записи в crontab и надеюсь, что проблема решена. Однако мне было бы интересно, что это был за вирус, как я мог его заразить (возможно, он связан с Kodi) и что я могу сделать, чтобы предотвратить его. К счастью, он запускался только от пользователя с ограниченными правами, но с ним по-прежнему было неприятно иметь дело.


РЕДАКТИРОВАТЬ

Хотя я, казалось бы, удалил все остатки этого вируса (я также удалил всю папку tmp), вирус продолжал возвращаться. Я понял, что там была запись ~/.ssh/authorized_hosts, которую я определенно не ставил сам. Это объясняет, как вирус можно повторно пересадить. Я удалил запись, отключил вход в систему для этого пользователя, отключил ввод пароля паролем (только пароль) и теперь использую нестандартный порт.

Я также заметил неоднократные попытки входа в систему на моем сервере со случайными именами пользователей, возможно, со стороны какого-то бота (журнал выглядел удивительно похожим на тот, который был запущен с моего IP и отправлен мне моим провайдером). Я предполагаю, что именно так мой компьютер заразился в первую очередь.

Erik
источник
4
Имейте в виду, что если вы уже были взломаны, есть вероятность, что в другом месте на диске есть инфицированные или поврежденные объекты. Вероятно, вам следует взорвать систему и восстановить ее. Вирусы очень редко затрагивают только одно приложение и обычно распространяются по всему диску.
Томас Уорд
Я согласен! если кто-то вошел в вашу систему, вытрите систему и восстановите резервную копию системы
Rinzwind
Конечно, это было бы спасительным решением. Но я просто переустановил эту систему и не хотел переустанавливать ее, не понимая, что произошло. Скопировав файлы, это могло бы начаться снова, и я бы просто потратил впустую свое время.
Erik
Вероятно, ваша система была взломана, поэтому вирус продолжает заражаться. Я бы взорвал систему и начал все заново.
Томас Уорд
1
Я также обнаружил инфекцию в файл .bashrc пользователя: cd ~ && rm -rf .ssh && mkdir .ssh && echo "ssh-rsa AAAAB... ...VKPRK+oRw== mdrfckr">>.ssh/authorized_keys && chmod 700 .ssh && cd .ssh && chmod 600 authorized_keys && cd ~. Я только что сделал, cp /etc/skel/.bashrc /home/mycompromiseduser/чтобы удалить его.
Let'sJump

Ответы:

6

У меня было то же самое. Служба установила rsync и получила несколько файлов. Я нашел dota.tar.gzфайл в папке пользователя.

  1. запретить исходящий порт 22 в брандмауэре (например ufw deny out 22)
  2. pkill -KILL -u kodi (это убивает все запущенные процессы пользователя Kodi)
  3. deluser kodi
  4. удалить дом пользователя
  5. удалить Rsync (я не использовал это)
  6. удалять /tmp/.mountfs*

Пожалуйста, обратите внимание, что это, вероятно, испортит вещи для коди. Вместо удаления всего пользовательского дома вы, вероятно, можете удалить только dota.tar.gz(если он есть) и .ttpпапку (не забудьте очистить crontab!)

После перезагрузки я больше не вижу исходящих соединений (проверьте с помощью:

netstat -peanut | grep 22

Заражение произошло через пользователя со слабым паролем (возможно, учетная запись kodi с паролем по умолчанию?)

Sjors Nijhuis
источник
1

У меня было такое же вредоносное ПО. Вход был через несохраненный пароль пользователя через ssh (порт не по умолчанию), был обнаружен и удален примерно через 24 часа.

В моем случае, удаление кронтаба пользователя, rm -rdf /tmp/.*, rm -rdf /home/user/.*, killall -u userбыло достаточно.

окончательный
источник
1

Была эта вещь сегодня. Я проверил систему и обнаружил, что моя система имеет свои следы в течение месяца, и я не понял, что это было, пока мой провайдер не уведомил меня.

Вредоносное ПО пришло через небезопасного пользователя со слабым паролем. В моем случае это был пользователь timemachine. Журнал проникновения выглядел так.

98341:Dec 23 23:45:36 fileserver sshd[23179]: Accepted password for timemachine from 46.101.149.19 port 45573 ssh2

Это майнер XMRIG и эксплойт, который сканирует другие IP-адреса на те же слабости. Таким образом, одна машина может каскадно заразить десятки других. Вы можете взглянуть на отчет MS об этой кибератаке .

Наиболее эффективной защитой от такого рода атак является установка fail2banна ваш сервер, ограничение скорости доступа по ssh ufwи использование белого списка ACL для систем, которые могут получить доступ к SSH на вашем сервере.

Роман Саврулин
источник
0

В моем случае источником заражения был пользователь, который не изменил свой небезопасный пароль с момента, когда я создал его учетную запись (конечно, я сказал ему). Мой сервер, вероятно, находится в некоторых списках: я получаю около 1000 банов в неделю от fail2ban (попробуйте 4 раза с неверным пользователем или паролем и будете заблокированы на месяц)

Sjors Nijhuis
источник
0

Это мое решение (также именуемое как крипто-майнинг вредоносная программа):

  1. pkill рабочие места crontab
  2. очистите все, что указано в описании этого задания crontab, например: /home/xxx/.ttp/a/upd>/dev/null 2> & 1
  3. удалить /tmp/.xxx/.rsync/c/aptitude>/dev/null 2> & 1
  4. самое важное (это займет у меня долгий путь), в противном случае он будет возвращаться снова: запустите crontab -e (для этого пользователя), вы обнаружите, что выше есть работа crontab, удалите их все, сохраните.
  5. изменить номер порта.
Джек Ма
источник