このブログ記事は、Jungsoo An の寄稿に基づき、Warren Mercer と Paul Rascagneres が執筆しました。
エグゼクティブ サマリー
Talos は、韓国のユーザをターゲットとした、悪意のある新たな Hangul Word Processor(HWP)ドキュメントを検出しました。このデコイ ドキュメントを開くと、Talos が「NavRAT」と呼んでいる、リモート アクセス型のトロイの木馬がダウンロードされます。これは、標的上でコマンド実行などのさまざまな操作を行うことができ、キーロギング機能も備えています。
デコイ ドキュメントのファイル名は「미북 정상회담 전망 및 대비.hwp」(韓国語の部分は「米朝首脳会談の展望」の意)となっています。HWP は、主に韓国で使用されているファイル形式です。デコイ ドキュメントには、標的上で悪意あるシェルコードを実行するための Encapsulated PostScript(EPS)オブジェクトが埋め込まれています。その目的は、侵害された Web サイトでホストされている追加ペイロードをダウンロードして実行することにあります。そのペイロードが NavRAT です。
これは、攻撃対象のホストでダウンロード、アップロード、コマンド実行を行い、最終的にキーロギングを実行する、従来型の RAT です。ただし、コマンド & コントロール(C2)インフラストラクチャは独特です。正規の Naver 電子メール プラットフォームを利用して、攻撃者と電子メールで通信します。アップロードされるファイルが電子メールで送信され、ダウンロードされるファイルがメールの添付ファイルから取得されます。Talos では無料の電子メール プラットフォームを悪用したマルウェアを過去にも検出していますが、韓国で普及している Naver を利用したマルウェアを特定したのは、今回が初めてです。
このマルウェアの作成者や背後の組織という重要な問題には、まだ答えが見つかっていません。Talos では以前、Group123 に関する記事をいくつか発表しました(記事 1、記事 2、記事 3、記事 4、記事 5)。今回のキャンペーンや NavRAT については、Group123 と関係している可能性もある程度考えられます。
悪意のあるドキュメント
デコイ ドキュメント
今回のキャンペーンは、「미북 정상회담 전망 및 대비.hwp」(韓国語の部分は「米朝首脳会談の展望」の意)という HWP ドキュメントが含まれた、スピア フィッシング メールから始まります。このメールは、6 月 12 日に開催される可能性のある実際の行事について書かれたものです。ドキュメントのスクリーンショットを以下に示します。
ドキュメントでは、非核化が中心議題になるであろう米朝首脳会談を前にした懸念が論じられています。米朝首脳会談は、2018 年 4 月 27 日に韓国と北朝鮮によって発表された「朝鮮半島の平和と繁栄、統一のための板門店宣言」に続く、北朝鮮による一連の外国政策の一部です。
ドキュメントには前述の EPS オブジェクトが含まれており、これを使用して、悪意のあるシェルコードがシステム上で実行されます。これは一見したところ、Talos がこれまでに遭遇し解説してきたような、HWP ドキュメントを使用した一般的な攻撃ベクトルであるように思われます。
悪意のあるコード
悪意のあるドキュメントに関する過去の記事で述べてきたように、EPS は攻撃者にとって効果的な手法です。これはスタックベースの強力なスクリプト言語であり、追加ペイロードの取得などのエクスプロイト用途に利用できます。ファイルの内容は次のとおりです。
/shellcode <90909090909090909090E800<...redacted…>4D2D6DC95CBD5DC1811111111111111> def <7B0D0A2756...redacted…>312067657420636C6F736566696C650D0A717569740D0A7D> token pop exch pop Exec
されたシェルコードは最初に、インターネットから追加のペイロードをダウンロードする復号ルーチンを実行します。今回の事例では、ファイルの URI は次のようになっていました。
hxxp://artndesign2[.]cafe24[.]com:80/skin_board/s_build_cafeblog/exp_include/img.png
URI は韓国の正規のサイトです。このサイトは、標的上に最終的なペイロードを配信する目的で侵害されたと考えられます。同様の手法は過去に、朝鮮半島を対象にした攻撃で観察されたことがあります。
イメージが直接ダウンロードされ、シェルコードがロードされてメモリ内で実行されます。これは、攻撃対象ホストのメモリ内で悪意あるプロセスを実行するだけの、ファイルレス実行の一例です。その目的は、下記のパスを使用して、復号された実行ファイルをドロップして実行することです。
%APPDATA%\Local\Temp\~emp.exe
NavRAT が実行されると、ただちに cmd.exe を利用して、攻撃対象ホストのシステム情報とタスク リストを確認します。出力は TMP ファイルに書き込まれます。NavRAT は再度 AhnLab フォルダ内に隠れようとしているのが見て取れます。興味深いことに、1 つの TMP ファイルに複数の出力を書き込むため、>> メソッドを使用して要素を追加しています。
"C:\Windows\system32\cmd.exe" /C systeminfo >> "C:\Ahnlab\$$$A24F.TMP"
"C:\WINDOWS\system32\cmd.exe" /C tasklist /v >> "C:\Ahnlab\$$$A24F.TMP"
NavRAT
機能
NavRAT は、ファイルのアップロード、ダウンロード、実行を目的とした、リモート アクセス型トロイの木馬(RAT)です。分析済みのサンプルには詳細なログが多数含まれており、すべてのアクションがファイル(エンコード済み)に記録されています。攻撃者自身が作成したログ ファイルを分析や調査に活用できる機会は、そう多くありません。
このスクリーンショットは、API を使用したプロセス インジェクション中のログ メッセージを示しています。
最初に、NavRAT 自体(~emp.exe)が %ProgramData%\Ahnlab\GoogleUpdate.exe のパスにコピーされます。ここで使用されているパスは、韓国の有名なセキュリティ企業、AhnLab 社のものです。NavRAT は次にレジストリ キーを作成し、永続化のための第 1 歩として、次回のシステム リブート時にこのファイル コピーが実行されるようにします。前述のログ ファイルは、標的上で NavRAT と同じディレクトリに保存されているため、追加されたログ ファイルを検出して分析するのは簡単です。
NavRAT はプロセス インジェクションに対応しています。この方法を使用して、実行中の Internet Explorer プロセスに NavRAT 自体をコピーし、独立したプロセスとして実行することで、検出を回避します。NavRAT は、以下のような流れにより、標的上でキーストロークを記録します。
NavRAT で最も興味深いのは、Naver 電子メール プラットフォームを利用してオペレータと通信するC2 サーバ アーキテクチャです。
コマンド & コントロール(C2)
このマルウェアは、Naver 電子メール プラットフォームを介してオペレータと通信します。クレデンシャルはサンプル内にハードコードされています。
しかし、Talos の調査中には、NavRAT がこの電子メール アドレスと通信することはできませんでした。
[05/30/2018, 17:39:45] NaverUpload Start!! [05/30/2018, 17:39:46] NaverUpload :PreUploading success [05/30/2018, 17:39:46] uploading step-1 : HttpSendRequest failed. Err[12150] [05/30/2018, 17:39:46] ////////////// Response Headers getting failure ////////// [05/30/2018, 17:39:46] NaverUpload :Uploading failed. Try[0] [05/30/2018, 17:39:47] uploading step-1 : HttpSendRequest failed. Err[12150] [05/30/2018, 17:39:47] ////////////// Response Headers getting failure ////////// [05/30/2018, 17:39:47] NaverUpload :Uploading failed. Try[1] [05/30/2018, 17:39:48] uploading step-1 : HttpSendRequest failed. Err[12150] [05/30/2018, 17:39:48] ////////////// Response Headers getting failure ////////// [05/30/2018, 17:39:48] NaverUpload :Uploading failed. Try[2] [05/30/2018, 17:39:49] uploading step-1 : HttpSendRequest failed. Err[12150] [05/30/2018, 17:39:49] ////////////// Response Headers getting failure ////////// [05/30/2018, 17:39:49] NaverUpload :Uploading failed. Try[3] [05/30/2018, 17:39:51] uploading step-1 : HttpSendRequest failed. Err[12150] [05/30/2018, 17:39:51] ////////////// Response Headers getting failure ////////// [05/30/2018, 17:39:51] NaverUpload :Uploading failed. Try[4] [05/30/2018, 17:39:52] UploadProc : UploadFile Err [05/30/2018, 17:39:52] PreCommProc : UploadProc failed
通信が失敗したのは、Naver に実装されている保護機能のためです。おそらく、あまりにも多くの国からマルウェアが実行された結果、現在はアカウントがロックされていると考えられます。
図中のパスワードは、アカウント情報を入力するか、所有者の携帯電話(ここでは英国の電話番号)を使用してリセットする必要があります。現在の状態では、NavRAT が正常に機能しません。マルウェアの所有者は、Naver にこの保護機能が実装されていたことを知らなかったのでしょう。
NavRAT は、受信メールに添付されているファイルをダウンロードして実行できます。また、電子メールを削除して、最終的に Naver アカウント経由で電子メールを送信することもできます。このサンプルでは、データを chioekang59@daum[.]net に送信しようとしています。
過去のサンプル
今回の調査では、ほかの NavRAT サンプルも探し出そうと試みました。特定できたのは、2016 年 5 月にコンパイルされた古いサンプル 1 つだけでした。今回の事例と同様、この古いサンプルでも、ログ ファイルを保存するために偽の AhnLab ディレクトリ(C:\AhnLab\)を使用されていました。このバージョンでは、コンパイル パスは削除されていませんでした。
N:\CodeProject\VC_Code Project\Attack_Spy\mailacounts.com\src_total_20160430 - v10.0(DIV)\bin\PrecomExe(Win32).pdb
NavRAT はおそらく 2016 年から存在していたと推論できます。その時点でのバージョン 10 だったと考えられます。この攻撃者は、数年にわたって気づかれずに活動していたようです。このマルウェアは、ごく限られたターゲットに対して慎重に使用されてきたものと思われます。
Group123 との関係
韓国でのマルウェアの状況を調査する中で、Group123 との関係の可能性は、常に喫緊の問題となっていました。関連を示すいくつかのポイントが確認され、このグループがこれまでに使用してきた TTP に基づいて判断すると、Group123 の関与が中程度の確実性で推測されます。
手法が過去の Group123 キャンペーンと同じで、悪意のあるシェルコードを含む EPS オブジェクトが、HWP ドキュメントに埋め込まれています。この埋め込みオブジェクトのシェルコードは、イメージをダウンロードするように設計されています。このイメージは実際には、埋め込まれた実行ファイルの復号に使用される新しいシェルコードです。Group123 の過去の攻撃で、これとまったく同じ方法が使用されたのを確認しています。その 1 つの例が ROKRAT です。これは、Talos が 2017 年 4 月に発見した、朝鮮半島をターゲットとするもう 1 つのリモート アクセス型トロイの木馬です。
EPS オブジェクトで使用されるシェルコードはまったく同じではありませんが、使用される命令の数や NOP(ノーオペレーション)の量など多くの類似性があり、コマンドのレイアウトもほぼ同じです(左が NavRAT、右が ROKRAT のシェルコードです)。
Talos では、ダウンロードされたイメージ ファイル内のシェルコードに対して、同じ分析を実施しました。シェルコードは同一ではありませんが、設計が非常に似ています。
さらに、C2 サーバとしてパブリック クラウド プラットフォームの攻撃対象と使用方法を追加することができます。攻撃者は、Yandex、Pcloud、Mediafire、Twitter を経て、現在は Naver を利用しています。このプラットフォームは、主に韓国国内で使用されています。このプラットフォームへの接続を悪意あるアクティビティとして特定することはできません。悪意のあるトラフィックは、グローバルなフローの中に隠されます。
Talos では、以上の要素をすべて考え合わせ、NavRAT および今回のキャンペーンが Group123 に関係していることを、中程度の確実性で推定しています。このマルウェアは、おそらく Group123 のワーキング チーム内の別の人物によって開発されたものと思われますが、感染のフレームワークと動作モードは同じです。Talos が Olympic Destroyer について公表した際には、多数の偽フラグの使用を確認できました。NavRAT では、別のエンティティへの帰属を暗示しようとして IOC/偽フラグ シナリオの曖昧度を意図的に低くしている様子は見られません。NavRAT にはそうした不明確な偽フラグがないことから、Talos では、これが Group123 以外の攻撃者に関係していると考えてはいません。
まとめ
韓国は今後も、高度な攻撃者にとって魅力的なターゲットになるでしょう。この地域に対しては、秘密主義の北朝鮮と開かれた韓国との分断により、地政学的な関心が生じています。今回のキャンペーンでは、これまで知られていなかったマルウェアである NavRAT をダウンロードして実行するために、標準的な HWP ドキュメントが使用されました。作成者は、実際の行事を題材にしてデコイ ドキュメントを偽造しました。ターゲットにドキュメントを開かせるよう誘導するために、米朝首脳会談を選んだのです。
このアプローチは、Talos が約 1 年半にわたって監視し記事にしてきた、Group123 による攻撃手法に似ています。シェルコードに類似性があり、最終的なペイロードとなる悪意あるシェルコードは、侵害された Web サイトでホストされているイメージ内に置かれており、C2 サーバとしてオープン プラットフォームが使用されています。この事例では、NavRAT は電子メール プロバイダーの Naver を利用していましたが、以前の ROKRAT ではクラウド プロバイダーが利用されていました。さらに、攻撃対象とターゲット地域が同じです。こうした要素をすべて考慮しても、NavRAT が ROKRAT と関係していると断定することはできません。しかし、NavRAT が Group123 に関係している可能性もある程度はあると考えられます。
よく知られているローカル クラウド/電子メール プロバイダーを利用することは、攻撃者にとって賢明な方法です。正当なトラフィックにまぎれた悪意あるトラフィックを特定するのは、非常に困難だからです。この事例では、あまりにも多数の国から受信トレイへのアクセスが試みられたため、電子メール プロバイダーがアカウントをロックしました。サンプルは、複数のパブリック サンドボックス システムで特定されました。それらのサンドボックスによって複数の接続施行が行われたと考えられます。
カバレッジ
お客様がこの脅威を検出してブロックできる別の方法を以下に記載します。
Advanced Malware Protection(AMP)は、これらの攻撃者によるマルウェアの実行の阻止に最適です。
CWS や WSA の Web スキャンは、悪意のある Web サイトへのアクセスを阻止し、それらの攻撃に使用されたマルウェアを検出します。
E メール セキュリティは、攻撃の一環として攻撃者が送りつける不正なE メールをブロックします。
NGFW や NGIPS、および Meraki MX などのネットワーク セキュリティ アプライアンスで、この脅威に関連付けられた悪意のあるアクティビティを検出できます。
AMP Threat Grid は、悪意のあるバイナリを特定し、すべてのシスコ セキュリティ製品に保護機能を組み込みます。
シスコのセキュア インターネット ゲートウェイ(SIG)であるUmbrellaは、社内ネットワークの内外で悪意のあるドメイン、IP、URL への接続をブロックします。
オープンソース Snort サブスクライバ ルール セットをお使いであれば、Snort.org で購入可能な最新のルール パックをダウンロードすることで、システムを最新状態に維持できます。
IOC(侵入の痕跡)
悪意のある HWP:e5f191531bc1c674ea74f8885449f4d934d5f1aa7fd3aaa283fe70f9402b9574
NavRAT:4f06eaed3dd67ce31e7c8258741cf727964bd271c3590ded828ad7ba8d04ee57
オンライン ペイロード:hxxp://artndesign2[.]cafe24[.]com:80/skin_board/s_build_cafeblog/exp_include/img.png
2016 年の NavRAT のサンプル:
e0257d187be69b9bee0a731437bf050d56d213b50a6fd29dd6664e7969f286ef
本稿は 2018年5月31日に Talos Group のブログに投稿された「NavRAT Uses US-North Korea Summit As Decoy For Attacks In South Korea」の抄訳です。