web-dev-qa-db-ja.com

Ubuntuのcrond64 / tsmウイルス

最近、ホームサーバーが非常に遅くなることに気付きました。すべてのリソースは、2つのプロセス(crond64およびtsm)によって消費されました。私は彼らを繰り返し殺しましたが、彼らは何度も何度も現れ続けました。

同時に、私のISPは、自分の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]

ウイルスに感染している可能性があるという this Webサイトからの知らせを受けました。私はハードドライブ全体をスキャンするSophos AVを実行し、/tmp/.mountfs/.rsyncでウイルスを検出しました。だから私はフォルダ全体を削除し、これはそれだと思った。しかし、それはその後も戻ってきました。次に、/var/spool/cron/crontabs/Kodiのユーザーcronファイルを確認しました(ウイルスは、メディアサーバー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にエントリがあることに気づきましたが、それは間違いなく自分では書きませんでした。これは、ウイルスを繰り返し移植する方法を説明しています。エントリを削除し、そのユーザーのログインを無効にし、パスワードログインを無効にし(パスキーのみ)、非標準のポートを使用します。

また、おそらく何らかのボット(ユーザーのISPから送信されたIPから起動されたログと驚くほど似ているログ)によって、ランダムなユーザー名でサーバーに繰り返しログインを試みたことにも気付きました。私はそもそも私のコンピューターが感染した方法だと思います。

15
erik

私も同じでした。サービスはrsyncをインストールし、いくつかのファイルを取得しました。ユーザーフォルダにdota.tar.gzファイルが見つかりました。

  1. ファイアウォールで発信するポート22を拒否します(例:ufw deny out 22
  2. pkill -KILL -u Kodi(これにより、ユーザーKodiの実行中のすべてのプロセスが強制終了されます)
  3. deluser Kodi
  4. userhomeを削除する
  5. rsyncを削除(私はこれを使用しませんでした)
  6. 削除/tmp/.mountfs*

これはおそらくコディのことを台無しにすることに注意してください。ユーザーホーム全体を削除する代わりに、おそらくdota.tar.gz(存在する場合)と.ttpフォルダーのみを削除できます(crontabを削除することを忘れないでください!)

再起動後、送信接続が表示されなくなりました(以下を確認してください:

netstat -peanut | grep 22

脆弱なパスワードを持つユーザーを介して感染が発生しました(デフォルトのパスワードを持つKodiアカウントですか?)

6
Sjors Nijhuis

今日これがあった。システムを調査したところ、約1か月間システムに痕跡が残っていたことがわかりました。ISPからの通知があるまで、この状況が発生していることに気づきませんでした。

マルウェアは、安全性の低いユーザーが弱いパスワードを使用して侵入しました。私の場合はタイムマシンユーザーでした。侵入ログはこんな感じでした。

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

これは XMRIGマイナー であり、他のIPをスキャンして同じ弱点を探すエクスプロイトです。したがって、1台のマシンが他の何十台にもカスケード感染する可能性があります。 このサイバー攻撃に関するMSレポート をご覧ください。

この種の攻撃からの最も効果的な保護は、サーバーにfail2banをインストールし、ufwでsshアクセスをレート制限し、サーバー上のSSHにアクセスできるシステムにホワイトリストACLを使用することです。

1
Roman Savrulin

私の場合、感染の原因は、私が彼のアカウントを作成したとき(もちろん私は彼に言った)から安全でないパスワードを変更しないユーザーでした。私のサーバーはおそらくいくつかのリストにあります:fail2banから週に約1000の禁止を取得します(間違ったユーザーまたはパスワードで4回試行し、1か月間ブロックされます)

1
Sjors Nijhuis

同じマルウェアがありました。エントリはssh(デフォルト以外のポート)を介して保存されていないユーザーパスワードを介して入力され、約24時間後に検出されて削除されました。

私の場合、ユーザーのcrontab、rm -rdf /tmp/.*rm -rdf /home/user/.*killall -u userで十分でした。

1
final

これは私の解決策です(クリポマイニングマルウェアとも呼ばれます):

  1. crontabジョブをpkill
  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. ポート番号を変更します。
0
Jack Ma