web-dev-qa-db-ja.com

「Carbon」という名前の奇妙なサービスが毎日実行され、CPUを100%使用します

ここ数週間、Ubuntuテストサーバーで奇妙なアクティビティがありました。 htopから下のスクリーンショットを確認してください。この奇妙なサービス(cryptocurrencyマイニングサービスのように見えます)は毎日実行されており、CPUを100%使用しています。 screenshot from htop

サーバーにsshキーを介してのみアクセスでき、パスワードログインが無効になっています。この名前のファイルを見つけようとしましたが、見つかりませんでした。

以下の問題について教えてください

  • プロセスIDからプロセスの場所を見つける方法は?
  • これを完全に削除するにはどうすればよいですか?
  • これが私のサーバーに侵入する方法はありますか?サーバーは主にいくつかのDjangoデプロイメントのテストバージョンを実行します。
31

他の回答で説明されているように、それはあなたのコンピューターを使用して暗号コインを採掘するマルウェアです。良いニュースは、CPUと電力を使用する以外に何もしない可能性が高いことです。

ここにもう少し情報があります、そしてあなたがそれを取り除いたらあなたが戦うために何ができるかです。

マルウェアは monero と呼ばれるaltcoinを最大のモネロプールの1つである crypto-pool.fr にマイニングしています。そのプールは正当であり、マルウェアのソースである可能性は低く、それが金儲けの方法ではありません。

そのマルウェアを書いた人に迷惑をかけたい場合は、プールの管理者に連絡してください(サイトのサポートページにメールがあります)。彼らはボットネットを好まないので、マルウェアが使用するアドレス(42Hr...で始まる長い文字列)を報告すると、おそらくそのアドレスへの支払いを一時停止して、そのshを書いたハッカーはもう少し難しい。

これも役に立ちます: AWS EC2インスタンスでマイナーマルウェアをどのように殺すことができますか?(侵害されたサーバー)

31
assylias

それは、プログラムがどこから実行されているかを隠すためにプログラムがどの程度の問題を起こすかによって異なります。それが多すぎなければ

  1. スクリーンショットのプロセスID 12583から始めます
  2. ls -l /proc/12583/exeを使用すると、絶対パス名へのシンボリックリンクが表示されます。これには、(deleted)で注釈を付けることができます。
  3. 削除されていない場合は、パス名にあるファイルを調べます。特にリンク数が1の場合は注意してください。そうでない場合は、ファイルの他の名前を見つける必要があります。

これをテストサーバーとして説明しているので、データを保存して再インストールすることをお勧めします。プログラムがrootとして実行されているという事実は、あなたが本当にマシンを信頼できないことを意味します。

更新:ファイルが/ tmpにあることがわかりました。これはバイナリなので、いくつかの選択肢があります。ファイルをシステムでコンパイルするか、別のシステムでコンパイルするかです。コンパイラドライバls -lu /usr/bin/gccの最終使用時間を調べると、手掛かりが得られる場合があります。

一時的なギャップとして、ファイルに一定の名前がある場合、この名前でファイルを作成できますが、書き込み保護されています。現在実行中のすべてのプロセスをログに記録し、コマンドを実行しているものがジョブを再起動する場合に備えて、長時間スリープする小さなシェルスクリプトをお勧めします。ファイルシステムで許可されている場合は、chattr +i /tmp/Carbonを使用します。不変ファイルの処理方法を知っているスクリプトはほとんどないからです。

19
icarus

サーバーがBitCoinマイナーマルウェアに感染しているようです。 ServerFaultスレッド@dhagの投稿を参照してください。 また、 このページ には、それに関する多くの情報があります。

それはいわゆる「ファイルレスマルウェア」のようです-想定されていないため、実行中の実行ファイルを見つけることができません。暗号通貨のマイニングに使用しているため、CPU容量をすべて使い果たしています。

7
Tanner Babcock