韓国のさまざまな企業をターゲットにした北朝鮮関連の脅威アクター

文●フォーティネットジャパン 編集●ASCII

提供: フォーティネットジャパン

  • この記事をはてなブックマークに追加
  • 本文印刷

本記事はフォーティネットジャパンが提供する「FORTINETブログ」に掲載された「LNKファイルとGitHub C2を悪用した北朝鮮関連の攻撃キャンペーン」を再編集したものです。

米国時間2026年4月2日に掲載されたフォーティネットブログの抄訳です。

影響を受けるプラットフォーム:Microsoft Windows
影響を受けるユーザー    :Microsoft Windows
影響            :窃取されたデータがその後の攻撃に悪用される可能性
深刻度                              :高

FortiGuard Labsは最近、韓国のユーザーを標的とした一連のLNKファイルを検知しました。これらの攻撃は多段階のスクリプティングプロセスを使用し、GitHubをコマンド&コントロール(C2)インフラストラクチャとして活用して検知を回避します。これらのLNKファイルは2024年まで遡ることができますが、それ以前のバージョンでは難読化が不十分で、重要なメタデータが含まれていたため、XenoRATマルウェアを拡散する同様の攻撃を追跡できました。

脅威アクターは、ここ数ヵ月で手口を変更し、LNKの引数にデコード関数を埋め込み、エンコードされたペイロードをファイル内に直接含めるようになりました。フォーティネットが収集したおとり用PDFのタイトルによれば、攻撃者は韓国のさまざまな企業をターゲットにして監視活動を拡大していると思われます。以下は、これらのキャンペーンで確認されたおとり用PDFファイルです。この記事では、各段階について詳しく説明していきます。

図1:おとり用PDF

第1段階:LNKファイル

これらのキャンペーンで使用されるLNKファイルには、さまざまなスクリプトが含まれています。以前のバージョンでは、脅威アクターはGitHubのC2アドレスとアクセストークンを隠すために単純な文字の連結を使っていました。このような難読化にもかかわらず、このスクリプトがGitHubから取得したPowerShellコマンドを実行するように設計されていることは容易にわかります。

図2:PowerShellスクリプトを含むLNKファイル

これらのLNKファイルのより新しいバージョンは、基本的な文字デコード関数を含むように進化しました。これらの更新にもかかわらず、同じファイル名、サイズ、更新日など、これらの活動を結び付けるメタデータが確認されています。注目すべきは、「Name」列にしばしば「Hangul Document」と示されている点です。これは、Kimsuky、APT37、Lazarusのような北朝鮮の国家支援グループがよく使う命名パターンです。

図3:固定のメタデータを含むLNKファイル

最新の攻撃では、脅威アクターはこの識別メタデータを削除し、引数の中にデコード関数だけを残しています。この関数p1は、位置、長さ、XORキーの3つのパラメーターを受け取ります。まず、おとり用PDFをドロップするパスを定義し、次の攻撃段階向けにPDFとPowerShellスクリプトの両方をデコードします。

図4:エンコードされたデータを含むLNKファイル

おとり用PDFはLNKファイルのテーマと一致しており、被害者を騙してファイルが正常に開いたように思わせ、その間に悪意のあるPowerShellスクリプトがバックグラウンドで静かに実行されます。

図5:おとり用PDF

第2段階:PowerShellスクリプト

LNKファイルからデコードされたPowerShellスクリプトは、被害者のシステムへのアクセスを維持しながら攻撃を隠蔽するために、いくつかの重要なタスクを実行します。

スクリプトはまず、仮想マシン、デバッガー、フォレンジックツールに関連する実行中のプロセスをスキャンして、環境チェックを実行します。具体的には、「vmxnet」、「vmusrvc」、「vmsrvc」、「vmtoolsd」、「vmwaretray」、「vboxservice」、「vboxtray」、「idaq」、「idaq64」、「autoruns」、「dumpcap」、「de4dot」、「hookexplorer」、「ilspy」、「lordpe」、「dnspy」、「petools」、「autorunsc」、「resourcehacker」、「filemon」、「regmon」、「procexp」、「procexp64」、「tcpview」、「tcpview64」、「Procmon」、「Procmon64」、「vmmap」、「vmmap64」、「portmon」、「processlasso」、「Wireshark」、「Fiddler Everywhere」、「Fiddler」、「ida」、「ida64」、「ImmunityDebugger」、「WinDump」、「x64dbg」、「x32dbg」、「OllyDbg」、「ProcessHacker」といった広範な分析ソフトウェアの有無を確認します。これらのプロセスのいずれかが検知された場合、セキュリティ研究者による分析を防ぐため、スクリプトは直ちに終了します。

図6:実行中のプロセスのチェック

環境が分析対象外であることが確認されると、スクリプトは次の段階に進みます。エンコードされた一連の文字列を再構築してBase64デコードし、その結果得られた平文のペイロードを%Temp%ディレクトリ内のランダムな名前のフォルダに保存します。

図7:ドロップされたVBSスクリプト

システムの再起動後もマルウェアが持続するように、スクリプトはスケジュールされたタスクを使用して永続化を確立します。可視性を最小限に抑えるため、PowerShellペイロードを隠しウィンドウで実行するVBScriptファイルを作成します。このタスクは、「Technical Paper for Creata Chain Task...」のような名前で偽装され、30分ごとにVBScriptを実行するように設定されます。

$action = New-ScheduledTaskAction -Execute 'wscript.exe' -Argument ('"' + $vbsFilePath + '"'); $trigger = New-ScheduledTaskTrigger -Once -At (Get-Date).AddMinutes(5) -RepetitionInterval (New-TimeSpan -Minutes 30); $settings = New-ScheduledTaskSettingsSet -Hidden; Register-ScheduledTask -TaskName "Technical Paper for Creata Chain Task S-1-12-12-3-1231241245BVSKLERh-SD234GHSI56" -Action $action -Trigger $trigger -Settings $settings

この段階の最終ステップで、スクリプトは、OSのバージョンとビルド番号、最終起動時刻、現在実行中のプロセスのリストなど、詳細なシステム情報を収集します。これらのデータは、<timestamp>-<IP_address>-BEGIN.logの形式で命名されたログファイルに保存されます。スクリプトは、ハードコードされたGitHubアクセストークン(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)を使って、このログを抽出し、GitHub(hxxps://api[.]github[.]com/repos/motoralis/singled/contents/kcca/technik)にアップロードします。

図8:システム情報の抽出とGitHubへのアップロード

このGitHubアカウントmotoralisを調査したところ、2025年まで遡って一貫した活動が確認され、以前のLNKファイルの亜種に関する脅威ハンティングの結果と一致しました。他にも、God0808RAMAPigresy80entire73pandora0009brandonleeodd93-blipなど、複数のGitHubアカウントが同様の攻撃に関与しています。

攻撃者のインフラストラクチャを幅広く分析すると、休眠アカウントとアクティブアカウントの両方を戦略的に利用していることがわかります。entire73のように数ヵ月間ほとんど活動していないアカウントもあれば、brandonleeodd93-blipのように数週間前に活動を開始したアカウントもあります。motoralisアカウントは主要な運用拠点として機能し、非公開のリポジトリにおける活動の急増を示しており、これは最近のLNKファイルを悪用したフィッシング攻撃の急増と密接に連動しています。すべての活動を非公開のリポジトリ内で行うことで、脅威アクターは悪意のあるペイロードや持ち出されたログが公の目に触れないように効果的に隠蔽しつつ、GitHubドメインの高い評判を利用して企業のセキュリティフィルターの監視を逃れています。

図9:攻撃者のGitHub

第3段階:PowerShellスクリプト

PowerShellスクリプトの最終段階はいたってシンプルです。前フェーズで分析回避の対策を講じ、永続化を確立し、初期の被害者データを収集した後、このフェーズではC2インフラストラクチャへの安定した接続を維持することに焦点を当てています。

このスクリプトの主な目的は、攻撃者のGitHubリポジトリ(hxxps://raw[.]githubusercontent[.]com/motoralis/singled/main/kcca/paper[.]jim)から追加モジュールや命令を継続的に取得することです。先に確立したスケジュールされたタスクを使用することで、マルウェアは持続的な接続を維持し、攻撃者が被害者を監視したり、必要に応じてさらなるコマンドやファイルを実行したりすることを可能にします。

図10:C2通信用のPowerShellスクリプト

フォーティネットは、攻撃者が接続状態を維持するために使用する「キープアライブ」スクリプトを特定しました。このスクリプトは、特にネットワーク構成の詳細を収集し、PUTメソッドを使ってGitHubにアップロードします。ログは、hxxps://api[.]github[.]com/repos/motoralis/singled/contents/jjyun/network/<Date>_<Time>-<IP_Address>-Real.logに保存されます。この自動化された定期的な通信により、脅威アクターは被害者のネットワーク状況をリアルタイムで監視し、侵害された環境内でのさらなる行動やより詳細な悪用を可能にします。

図11:GitHub C2由来のPowerShellスクリプト

結論

本キャンペーンは、攻撃の効果を高めるために複数のフィッシングテーマを採用しており、ソーシャルエンジニアリングの高度な理解を見て取ることができます。複雑なカスタムマルウェアに依存する代わりに、脅威アクターは展開、回避、永続化のためにWindowsネイティブツールを使用しています。ドロップされたPEファイルの使用を最小限に抑え、LolBinsを活用することで、攻撃者は低い検知率で幅広いユーザーを標的にできます。

このキャンペーンの重要な要素の一つは、合法的なパブリックインフラストラクチャの悪用です。攻撃者はGitHub APIをC2チャネルとして利用し、悪意のあるトラフィックを通常の暗号化された接続の中に効果的に隠します。GitHubは信頼できるオープンソースのプラットフォームであり、ホワイトリストに登録している企業環境も多く、標準的なセキュリティ対策では継続的な通信やデータの持ち出しが見逃されやすくなります。脅威アクターがWindowsに組み込まれた機能を悪用するため、これらの攻撃を検知するのは困難です。このように、正規のツールと信頼できるWebサービスを組み合わせることで、非常に効果的な感染の連鎖が生まれます。防御を維持するために、ユーザーは信頼できないドキュメントに常に注意を払い、環境内のPowerShellやVBScriptの異常な活動を監視する必要があります。

図12:攻撃チェーン

フォーティネットのソリューション

本レポートで説明したマルウェアは、FortiGuardアンチウイルスによって以下として検知され、ブロックされます。

LNK/Agent.ALN!tr

FortiGuard AntiVirusサービスエンジンは、FortiGateFortiMailFortiClientFortiEDRに統合されています。これらの製品を最新のシグネチャで使用しているお客様は、本レポートに記載されているマルウェアコンポーネントから保護されます。

FortiMailは、初期段階のフィッシングメールを「virus detected」として検知します。さらに、フォーティネットのFortiMail、Webフィルタリング、アンチウイルスソリューションにわたって統合されたFortiSandboxのリアルタイムのアンチフィッシングにより、既知および未知のフィッシングの試行を対象とする高度な検知が可能です。フィッシングシミュレーションサービスのFortiPhishは、ユーザーのレジリエンスをさらに高めるため、なりすまし、ビジネスメール詐欺(BEC)、ランサムウェアの配布といった実際のフィッシング手法に関してエンドユーザーを積極的に訓練 / テストします。

FortiGateとFortiMailの両方で利用可能なFortiGuard CDR(コンテンツ無害化)サービスは、ドキュメントの有用性を維持しながらアクティブなコードを削除することで、ドキュメントに埋め込まれた悪意のあるコンテンツを無力化できます。

FortiGuard IPレピュテーションおよびアンチボットネットセキュリティサービスは、フォーティネットが全世界に展開するセンサーネットワーク、CERTの連携、MITRE、信頼できる業界パートナー、その他のインテリジェンスソースから収集した悪意のあるIPインテリジェンスを相関させることで、このキャンペーンに関連するインフラストラクチャをプロアクティブにブロックします。

基礎的なセキュリティ意識の強化を目指すお客様は、サイバーセキュリティに関するフォーティネット認定ファンダメンタルズ(FCF)トレーニングの実施もご検討ください。

このようなサイバーセキュリティの脅威の影響を受けていることが疑われる場合は、グローバルのFortiGuardインシデントレスポンスチームにお問い合わせください。

IOC(Indicators of Compromise:侵害指標)

URL
hxxps://raw[.]githubusercontent[.]com/motoralis/singled/main/kcca/paper[.]jim

hxxps://api[.]github[.]com/repos/motoralis

SHA256
af0309aa38d067373c54b2a7774a32f68ab72cb2dbf5aed74ac784b079830184 TRAMS WINBOT AI Strategic Proposal.pdf.lnk

9c3f2bd300ad2ef8584cc48adc47aab61bf85fc653d923e106c73fc6ec3ea1dc 전략적 파트너십 상세 제안서.pdf.lnk

f20fde3a9381c22034f7ecd4fef2396a85c05bfd54f7db3ad6bcd00c9e09d421 상세 제안서 - 미래에셋 X AYC Fund.pdf.lnk

484a16d779d67c7339125ceac10b9abf1aa47f561f40058789bfe2acda548282 CONFIDENTIAL IOTRUST OFFER.pdf.lnk

c0866bb72c7a12a0288f434e16ba14eeaa35d3c4cff4a86046c553c15679c0b5 (CONFIDENTIAL)  AIN x Mine Korea 2026.pdf.lnk
 

■関連サイト

本記事はアフィリエイトプログラムによる収益を得ている場合があります