ScreenConnect の脆弱性 CVE-2024-1708/CVE-2024-1709:マルウェアの投下に悪用されている

ScreenConnect flaws exploited to drop new ToddleShark malware

2024/03/04 BleepingComputer — 北朝鮮の APT ハッキング・グループである Kimsuky は、ScreenConnect の脆弱性を、特に CVE-2024-1708/CVE-2024-1709 を悪用して、ToddleShark という新しいマルウェアの亜種をターゲットに感染させている。Kimsuky (別名 Thallium/Velvet Chollima) は、北朝鮮の国家支援ハッキング・グループであり、世界中の組織や政府に対するサイバー・スパイ攻撃で知られている。


同グループが攻撃に悪用している脆弱性は、認証バイパスとリモート・コード実行の脆弱性であり、2024年2月20日に ConnectWise から、その詳細が公開されたものである。同社は ScreenConnect の顧客に対して、サーバ・バージョン 23.9.8 以降へと、直ちにアップグレードするよう求めていた。

この2つの脆弱性は、情報公開の翌日にエクスプロイトが公開され、ランサムウェア・グループなどのハッカーたちは、すぐに欠陥を悪用する攻撃を開始した。

BleepingComputer に共有された、Kroll のサイバー・インテリジェンス・チームの最新レポートによると、新しい Kimsuky マルウェアはポリモーフィックな特徴を持っており、長期的なスパイ活動や情報収集のために設計されているようだ。

ToddleShark は、痕跡を最小限にするために正規の Microsoft バイナリを使用して、セキュリティ防御を低下させるためにレジストリの変更を実行する。そして、スケジュールされたタスクを通じて永続的なアクセスを確立した後に、継続的なデータの窃盗と流出を実行する。

ToddleShark とは?

Kroll のアナリストたちの推定によると、Kimsuky の BabyShark/ReconShark バックドアの新しい亜種が ToddleShark であり、その標的となるのは、米国/欧州/アジアにおける、政府機関/研究センター/大学/シンクタンクなどである。

このハッカーの戦術だが、最初に脆弱性を悪用して ScreenConnect エンドポイントにアクセスし、認証バイパスとコード実行を行える状態にする。

足場を固めた Kimsuky は、mshta.exe のような正規の Microsoft バイナリを使用して、通常のシステム・プロセスに混じって、高度に難読化された VBS のような、悪意のスクリプトを実行する。

続いて、このマルウェアは、Windows レジストリの VBAWarnings キーを変更し、Microsoft Word や Excel の様々なバージョンで、通知を生成することなくマクロを実行できるようにする。

Registry modifications
レジストリの改ざん (Kroll)

悪意コードを定期的 (1分ごと) に実行することで、永続性の確立のためにスケジュールされたタスクが作成される。

ToddleShark は、感染したデバイスから、以下のようなシステム情報を日常的に収集する:

  • ホスト名
  • システム構成の詳細
  • ユーザーアカウント
  • アクティブ・ユーザー・セッション
  • ネットワーク構成
  • インストールされているセキュリティ・ソフトウェア
  • 現在の全てのネットワーク接続
  • 実行中のプロセスの列挙
  • 一般的なインストール・パスと Windows スタート・メニューを解析し、インストールされているソフトウェアのリストを生成
Sixteen cmd.exe instances used for data theft
データ盗難に使われた 16 の cmd.exe インスタンス(Kroll)

ToddleShark は最後に、PEM (Privacy Enhanced Mail) 証明書にエンコードして、収集した情報を攻撃者の C2 (Command and Control) サーバに流出させる。

ポリモーフィックなマルウェア

ToddleShark の特筆すべき能力は、ポリモーフィズムにある。この機能により、数多くの検出を回避し、分析を困難にできる。このマルウェアは、いくつかのテクニックをもちいて、このポリモーフィズムを実現している。

まず、最初の感染ステップで使用される高度に難読化された VBScript の中で、ランダムに生成された関数や変数名を使用して、静的な検出を困難にする。大量の 16 進エンコードされたコードがジャンク・コードと混在することで、マルウェアのペイロードが、良性または実行不可能に見えることがある。

Functional code hiding among garbage portions
ゴミ部分の中に隠された機能コード (Kroll)

さらに ToddleShark は、ランダム化された文字列と [機能的な] コードの位置決めを採用しており、シグネチャ・ベースの検出が不可能なほどに、構造パターンを変化させる。

最後に、追加ステージのダウンロードに使用される URL が動的に生成される。C2 からフェッチされる初期ペイロードのハッシュは、常に一意であるため、標準的なブロック・リスト手法は無力化される。

ToddleShark に関連する詳細と侵害の指標 (IOCs:Indicators of Compromise) は、Kroll のブログ投稿で確認できる。