はじめに
仮想プライベートネットワーク(VPN)アプライアンスは、現代の企業アーキテクチャの中でも特に機微な位置を占めています。信頼できない公共インターネットと社内ネットワークの境界に立つ存在だからです。一般的なWebサーバーとは異なり、VPNコンセントレーターは意図的にインバウンド接続を受け付けるよう設計されており、リモートユーザーを認証し、ディレクトリサービスやファイル共有、イントラネットアプリケーション、管理インターフェースへの特権的アクセスを付与されています。暗号化トンネルを終端し、認証情報を処理し、ネットワークエッジでセッション状態を維持します。したがって、VPNアプライアンスの重大な脆弱性は周辺的なリモートアクセスの問題ではなく、そのアプライアンスが保護すべきあらゆる下流システムに連鎖的な影響を及ぼす、直接的なネットワーク侵害の問題なのです。
2026年7月14日、SonicWallはSecure Mobile Access(SMA)1000シリーズに影響する2件の重大な脆弱性について、勧告SNWLID-2026-0008を公表しました。パッチは同週にリリースされています。この開示に先立ち、Volexityは2026年6月22日から始まる、開示前の積極的な悪用を観測していました。UTA0533として追跡されている脅威アクターは、両方の脆弱性を連鎖させ、対象アプライアンスへのroot権限アクセスを獲得していました。その後Rapid7による分析で、TTP(戦術・技術・手順)に大きな重複があることが判明し、以降INCランサムウェアがこのエクスプロイトチェーン全体を積極的に悪用する主要な脅威アクターとして台頭しています。
CISAは両方のCVEを既知の悪用済み脆弱性(KEV)カタログに追加し、修復期限を2026年7月17日と定めました。2026年8月1日時点で、Resecurityは多くのデバイスが依然として未パッチのままか、以前の悪用の波によって既に侵害されており、それがさらなるネットワーク侵入に再利用され得る状態にあることを確認しています。
連鎖させられた2つのゼロデイ脆弱性は以下の通りです。
- CVE-2026-15409 — CVSS10.0。認証前の/wsproxyバイパスにより、未認証の外部攻撃者が本来localhostからしかアクセスできないはずのサービスへWebSocketトンネルを開くことが可能になります。
- CVE-2026-15410 — CVSS7.2。ctrl-serviceのremove_hotfixワークフローに存在するパストラバーサルの欠陥で、低権限のサービスアカウントからrootへ昇格させるために悪用されます。
この2つを組み合わせると、単一の未認証HTTPリクエストがVPNゲートウェイの完全なroot制御へと変貌します。攻撃者はその後、認証情報の傍受、ネットワークトラフィックのキャプチャ、永続的なマルウェアの展開、社内インフラへのピボットが可能になります。
本レポートでは、これらの脆弱性の技術的分析、ソースコードレベルの根本原因、攻撃チェーンの正確な仕組み、実際に観測されたマルウェアと侵害指標(IOC)、攻撃者インフラ、Rapid7による独自調査、そしてインシデント対応と長期的な強化策のための実践的な推奨事項を統合的に解説します。
エグゼクティブサマリー
2026年7月14日、SonicWallは勧告SNWLID-2026-0008を公表し、SMA 1000シリーズのSSL-VPNアプライアンス向けに重大なパッチをリリースしました。実際に悪用されている脆弱性はCVE-2026-15409とCVE-2026-15410で、両者は公開開示前の少なくとも2026年6月22日から、脅威アクターUTA0533によって組み合わせて武器化されていました。VolexityとRapid7はその後、この悪用クラスターをINCランサムウェアに結び付けており、同ランサムウェアはこの脆弱性チェーンを積極的に悪用する主要な脅威アクターとなっています。
- クライアント識別子を偽装した細工リクエストを/wsproxyエンドポイントへ送信する。
- アプライアンス上のlocalhost限定サービスへWebSocketトンネルを開く。
- ネットワークセグメンテーションなしにCouchDBおよびErlangベースのctrl-serviceとやり取りする。
- 機微なアプライアンスファイルを読み取り、ディスク上にエクスプロイトペイロードを準備する。
- remove_hotfixのパストラバーサルを発動し、root権限へ昇格する。
- ROOTRUN、KNUCKLEBALL、Suo5、ORANGETAILを含む永続的なマルウェアを展開する。
未パッチでインターネットに公開されたSMA 1000アプライアンスを運用している組織は、これを緊急対応が必要な、進行中の重大なインシデントとして扱う必要があります。パッチ適用と併せて侵害調査を実施しなければなりません。攻撃者が仕込んだマルウェアが残ったままパッチを当てたアプライアンスは、依然として侵害された状態だからです。
なぜ重要なのか
VPNアプライアンスは、ID情報・認証情報・ネットワークアクセス権を集約しているため、価値の高い標的となります。一般的な企業導入では、SMAアプライアンスはActive DirectoryやLDAPと統合され、リモート従業員や契約社員のTLSセッションを終端し、証明書、セッショントークン、ユーザーデータベース、認証ポリシーを保持しています。侵害に成功すると、VPNゲートウェイは永続的な監視・ピボット拠点へと変わります。
ビジネスへの影響は、アプライアンス自体をはるかに超えて広がります。
- 認証情報の傍受 — アプライアンスはユーザー名、パスワード、セッションクッキー、MFA状態を処理しています。
- トラフィックキャプチャ — root権限を得ると、LDAP、RADIUS、社内アプリケーショントラフィックのパケットキャプチャが可能になります。
- 横展開 — このデバイスはネットワークエッジに位置し、社内サブネット、ディレクトリサービス、管理ネットワークへの経路を持っています。
- 永続的な足場 — setuidバイナリ、改変されたinitスクリプト、NGINX Unitの設定変更は再起動後も残存します。
- ランサムウェアの足がかり — INCランサムウェアはこのチェーンを企業ネットワークへの侵入口として利用していることが観測されています。
この攻撃には前提条件が一切不要です。認証情報も、認証済みセッションも、ユーザー操作も、事前の設定不備も必要としないため、インターネットに公開された未パッチのSMA 1000アプライアンスはすべて潜在的な標的となります。CVSS10.0の認証前バイパスと権限昇格プリミティブを連鎖させたこの脆弱性は、2026年に発生したVPNアプライアンス攻撃の中でも最も深刻なものの一つです。
脅威アクターのプロファイル
Volexityは、開示前の悪用クラスターをUTA0533として追跡しています。その後Rapid7がインシデント対応調査を進める中で、自社の調査結果と戦術・技術・手順(TTP)に大きな重複があることが判明し、両社はこのゼロデイ悪用が単一のアクター、あるいは緊密に連携するグループによるものだと結論付けました。さらに最近では、INCランサムウェアがこのチェーン全体を実際に悪用する主要な脅威アクターとして台頭しています。
観測されたTTPは以下と一致します。
- 暗号化と恐喝のための特権的な足がかりを求めるランサムウェアアフィリエイトおよび初期アクセスブローカー。
- 政府機関、防衛、テクノロジー、重要インフラのVPNコンセントレーターを標的とする国家関与型・諜報活動アクター。
- アプライアンスファームウェアのリバースエンジニアリング、ゼロデイの連鎖、独自Javaインプラントの開発が可能な高度な技能を持つ日和見的攻撃者。
- 2026年6月22日から始まる開示前の悪用。
- User-Agent文字列「SMA Connect Agent」と、/wsproxyに対するURIパラメータbmID=-3389の使用。
- 多段階マルウェアの展開: ROOTRUN、KNUCKLEBALL、Suo5、ORANGETAIL。
- 永続化のための/etc/init.d/workplaceおよび/var/lib/unit/conf.jsonの改変。
- tcpdumpを用いた暗号化されていないLDAPトラフィックのキャプチャとドメイン認証情報の窃取。
特筆すべき点として、2026年8月初頭時点でINCランサムウェアは活動を加速させています。同グループのDLS(データリークサイト)には新たな被害組織が複数公開されました。Resecurityの見立てでは、CVE-2026-15409とCVE-2026-15410の悪用は、初期アクセスブローカー(IAB)が関心のある標的への不正アクセスを獲得する上で大きな助けとなり得るとしています。

2026年7月17日から2026年8月1日の間にINCランサムウェアのDLSに掲載された新たな被害組織には、オーストラリア、米国、UAE、コロンビア、スイス、その他の国々の民間企業および政府機関が含まれています。Resecurityは複数の被害組織に対し、侵害の根本原因に対処するためのDFIRおよび脆弱性評価を支援してきましたが、その過程で次のような新たな動きも把握しました。多くの新規被害組織が、ランサムウェア問題への対応を支援すると称する身元不明の組織からメールや電話を受け取っていたのです。
例えば、これらのメールの一つ(脅威アクターが被害組織に接触する際に使用したもの)に関連付けられたドメイン名は、実際のインシデントおよび悪用活動の直後に登録されていました。Resecurityは、この悪用活動が公式勧告の公表とパッチの提供に先立つ2026年6月に始まったと見ています。当該ドメイン名は、暗号資産による支払いを受け付ける中国のドメインレジストラを通じて登録されていました。
ドメイン名: HELPRANS.COM
Registry Domain ID: 3106477703_DOMAIN_COM-VRSN
Registrar WHOIS Server: whois.ordertld.com
Registrar URL: http://www.ordertld.com
更新日: 2026-06-02T11:54:59Z
作成日: 2026-06-02T10:48:13Z
Registry Expiry Date: 2027-06-02T10:48:13Z
Registrar: CNOBIN INFORMATION TECHNOLOGY LIMITED
Registrar IANA ID: 3254
Registrar Abuse Contact Email: [email protected]
Registrar Abuse Contact Phone: +852.30501810
Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
Name Server: DENVER.NS.CLOUDFLARE.COM
Name Server: TESSA.NS.CLOUDFLARE.COM
被害組織はまた、「Andrew」と名乗る人物から電話番号+1 (304) 384-0401を使って連絡を受けていました。この人物は「ハッカー集団の一員」を名乗り、被害組織のネットワークが侵害されたと告げました。通話の最後に、この人物は今後の交渉先としてメールアドレスinfo@helprans[.]comを伝え、通話を終えています。
影響を受ける製品とファームウェアバージョン
ベンダー: SonicWall
勧告: SNWLID-2026-0008、2026年7月14日公表
影響を受けるモデル
- SMA 6210
- SMA 7210
- SMA 8200v
- CMS(すべてのハイパーバイザー)
影響を受けるファームウェアバージョン
12.4.3系:
- 12.4.3-03245
- 12.4.3-03387
- 12.4.3-03434
12.5.0系:
- 12.5.0-02283
- 12.5.0-02624
- 12.5.0-02800
修正済みファームウェアバージョン
- 12.4.3-03453以降
- 12.5.0-02835以降
重要: これらの脆弱性は、SonicWallファイアウォールのSSL VPNおよびSMA 100シリーズには影響しません。回避策は存在せず、修正済みファームウェアへのアップグレードのみが唯一の対処法です。両CVEはCISAのKEVカタログに追加されており、修復期限は2026年7月17日とされています。
SonicWall SMA技術の概要
SMA 1000アプライアンスのアーキテクチャ
SonicWall Secure Mobile Access(SMA)1000シリーズは、社内リソースへの安全なリモートアクセスを提供するエンタープライズ向けSSL VPNプラットフォームです。ネットワーク境界に配置され、リモートユーザーを認証し、VPNセッションを終端し、社内アプリケーション、ディレクトリサービス、ファイル共有、管理インターフェースへのアクセスを仲介します。
従来型のWebサーバーとは異なり、SMAアプライアンスは複数の相互連携するサービスから構成されるマルチティア型アプリケーションとして動作します。インターネットに面したコンポーネントは、認証、設定管理、セッション処理、システム管理を担う複数のバックエンドサービスと通信します。これらのサービスは、侵害時の影響を軽減するため、意図的にネットワーク境界と権限レベルによって分離されています。
典型的なSMA 1000導入環境には、以下のコンポーネントが含まれます。
- NGINX / NGINX Unit(フロントエンド) — インバウンドのHTTPS接続を終端し、WebSocketリクエストを処理し、クライアントトラフィックをバックエンドサービスへルーティングします。
- workplace Webアプリケーション — 主要なユーザーポータルおよび管理インターフェースを提供します。
- /wsproxyエンドポイント — 正規のSMA Connectクライアントが選択されたバックエンドサービスと通信するために使用するWebSocketプロキシです。
- ctrl-service — 管理系ワークフロー、診断、ホットフィックスのインストール・削除、パケットキャプチャ等のシステムレベル操作を担う、特権を持つ内部管理サービスです。
- CouchDB — 設定情報、セッション情報、アプリケーションデータを格納するローカルNoSQLデータベースです。
- Erlang分散サービス — localhost:1050で待ち受ける制御サービスを含む、内部のErlangベースサービスです。
- Linuxオペレーティングシステム — 基盤となるOSです。各サービスはcouchdbのような専用アカウントの下で実行され、特権操作はrootに限定されています。
通常動作時、外部からの接続を受け付けることを意図しているのはNGINXフロントエンドのみです。CouchDB、ctrl-service、Erlangサービスなどのバックエンドコンポーネントは、localhostインターフェースにのみバインドされています。この設計は、内部サービスがローカルホストからのリクエストのみを信頼するという、階層化されたセキュリティアーキテクチャを生み出しています。
このセキュリティモデルは、フロントエンドが内部へトラフィックを転送する前に、必要な認証・認可・リクエスト検証をすべて実行することを前提としています。その結果、バックエンドサービスは信頼できないユーザーからの直接的なやり取りを想定せずに、管理機能を公開しています。
CVE-2026-15409の悪用は、この前提を根本から崩します。/wsproxyエンドポイントを悪用することで、未認証の攻撃者は本来のルーティング制限を回避するWebSocketトンネルを確立し、localhost限定のサービスと直接通信できます。この信頼境界が取り除かれると、それまで隔離されていたコンポーネントが外部から到達可能になり、最終的に完全なroot侵害へと至るエクスプロイトチェーンの残りの部分が実行可能になります。

アプライアンスの信頼境界
SMA 1000のセキュリティアーキテクチャは、ネットワーク分離とサービスセグメンテーションに依存しています。インターネットからのリクエストはNGINXフロントエンドで終端することが想定されており、フロントエンドがユーザーを認証し、承認済みのトラフィックのみを選別してバックエンドアプリケーションへ転送します。CouchDBやctrl-serviceのような管理系サービスは、意図的にlocalhostインターフェースへ制限されており、外部クライアントと直接通信するようには設計されていません。
/wsproxyの脆弱性は、このアーキテクチャ上の前提を無効化します。厳密なバックエンドルーティングを強制する代わりに、脆弱な実装は特別に細工されたWebSocketリクエストを任意のlocalhostサービスへプロキシすることを許してしまいます。その結果、未認証の外部攻撃者が、公共ネットワークと内部管理コンポーネントを隔てる信頼境界を越えることができてしまいます。
この境界が破られると、攻撃者はlocalhostからのトラフィックを暗黙的に信頼するバックエンドサービスへ直接アクセスできるようになります。これによりCouchDBとのやり取り、ctrl-serviceを通じた特権的な管理機能の実行、そして最終的にはCVE-2026-15410で悪用される権限昇格ワークフローへとつながります。
信頼境界に関する主なポイント:
- パブリックインターネットから到達可能であるべきなのはNGINX/NGINX Unitフロントエンドのみです。
- CouchDB、ctrl-service、Erlangサービスは、主要なネットワーク分離機構としてlocalhostへのバインドに依存しています。
- /wsproxyは意図せず外部クライアントと特権的なバックエンドサービスの橋渡し役となってしまい、本来の信頼境界を崩壊させます。
- WebSocketトンネルが確立されると、バックエンドサービスはあたかもローカルから発生したかのようにリクエストを処理します。
- 物理SMAアプライアンスでは、UUID由来のctrl-serviceパスワードがさらなる弱点となります。/sys/class/dmi/id/product_uuidが誰でも読み取り可能であるため、低権限ユーザーでも管理用認証情報を導出できてしまうためです。この弱点は観測されたエクスプロイトチェーンでは使用されていませんが、全体的な信頼モデルをさらに弱めるものです。
ソースコードレベルの根本原因
SonicWallアプライアンスのファームウェアは独自仕様であるため、正確なソースコードは公開されていません。しかし、公表された技術分析やインシデント対応の成果物から、脆弱性の挙動を再構築することができます。
CVE-2026-15409 — /wsproxyのSSRF
WorkPlaceアプリケーションは、/wsproxyをWebSocket-to-TCPプロキシとして公開しています。概念的には、そのハンドラは次のようになっています。
// Conceptual reconstruction of the vulnerable handler
@ServerEndpoint("/wsproxy")
public class WsProxyServlet {
@OnOpen
public void onOpen(Session session) {
// All three values come from the attacker-controlled upgrade request
String host = session.getRequestParameterMap().get("host").get(0);
String port = session.getRequestParameterMap().get("port").get(0);
String serviceType = session.getRequestParameterMap().get("serviceType").get(0); // BUG: no authentication, no origin check, no backend whitelist
Socket backend = new Socket(host, Integer.parseInt(port));
// Bidirectionally relay WebSocket <-> TCP
relay(session, backend);
}
}
唯一のゲーティング(判定基準)は、クライアント側から供給されるメタデータのみです。
- User-Agent: SMA Connect Agent
- -3389で始まるbmIDパラメータ
- SSHやTELNETなどのserviceType
これらはいずれも正当性を証明するものではなく、容易に偽装できます。アプライアンス自体がアウトバウンドTCP接続を開くため、リクエストはループバックインターフェースから発信された形になります。攻撃者がhost=0.0.0.0、127.0.0.1、あるいはlocalhostを指定することで、localhostをアクセス制御の根拠としているサービスに到達できてしまいます。
CVE-2026-15410 — remove_hotfixのパストラバーサル
ctrl-serviceデーモンは、呼び出し元が指定するhotfixパスを信頼するホットフィックス削除ワークフローを公開しています。概念的には次の通りです。
# Conceptual reconstruction of the vulnerable workflow
def remove_hotfix(hotfix_path):
working_dir = "/var/lib/aventail/avp/rollback/"
target = working_dir + hotfix_path # BUG: no normalization, no chroot
os.chmod(target, 0o755)
subprocess.run(["/bin/bash", target, "--unattended"])
このパスは正規化されずに単純連結されているため、../../../../../tmp/1234.shのようなトラバーサルシーケンスが、ホットフィックスディレクトリの外にある攻撃者制御下のファイルへと解決されてしまいます。このワークフローはその後、当該ファイルにchmodを行い、rootとして実行します。
攻撃チェーン: bmID=-3389からrootまで

SonicWall SMA VPNアプライアンスのエクスプロイトチェーン
ステップ1 — SonicWall SMA VPN 1000アプライアンスを標的にする
攻撃者は、インターネットに公開されているSonicWall SMA 1000シリーズのVPNアプライアンスを特定します。これらのデバイスは、インバウンドのHTTPSトラフィックにさらされており、リモートユーザーの認証情報を処理し、多くの場合社内ディレクトリサービスや管理ネットワークへの特権的アクセスを持っているため、格好の標的となります。アプライアンスのモデルとファームウェアバージョンを特定する以上の偵察は必要ありません。
ステップ2 — 未認証の/wsproxyリクエストを送信する
攻撃者は、偽装したクライアント識別子を伴う単一のWebSocketアップグレードリクエストを/wsproxyへ送信します。
- User-Agent: SMA Connect Agent
- URIパラメータ bmID = -3389
- serviceType=SSH
- host=0.0.0.0またはhost=127.0.0.1
- port=1050(Erlang/CouchDB)またはport=8188(ctrl-service)
これらの値はフロントエンドによって、正規の社内クライアントトラフィックの目印として信頼されてしまいます。リクエストが未認証であるため、攻撃者は有効なVPN認証情報もセッションクッキーもMFA状態も必要としません。
GET /wsproxy?bmID=-3389c1b25ccd&serviceType=SSH&host=0.0.0.0&port=1050 HTTP/1.1
Host: <target appliance>
User-Agent: SMA Connect Agent
Upgrade: websocket
Connection: Upgrade
Rapid7が公表したPoCは、これをlocalhost:1050上のErlangプロセスに対して武器化しています。Erlangのcookieは実質的に全デバイス共通でハードコードされているため、トンネルが確立された後は認証が不要になります。
python3 cve-2026-15409.py --ws-url 'wss://192.168.1.46/wsproxy?bmID=-3389c1b25ccd&serviceType=SSH&host=0.0.0.0&port=1050' \
--ws-user-agent 'SMA Connect Agent' \
--ws-insecure-tls \
--cookie 10ecad5b446e86864832904cd439b6b70262 \
--exec 'whoami && id && pwd && hostname'
これにより、/opt/couchdbにおいてユーザーcouchdb(uid=1010)としての実行が得られます。
ステップ3 — localhost限定サービスへのWebSocketトンネルを確立する
フロントエンドがリクエストを受け入れると、WebSocketトンネルが確立されます。攻撃者はこのトンネルをlocalhostにバインドされた内部サービスへ向け、本来それらを保護しているネットワーク層の分離を回避します。このトンネルを通じて到達可能なサービスには、localhost:1050上のCouchDB/Erlang分散サービスと、localhost:8188上のctrl-serviceが含まれます。このステップにより、外部に公開されたハンドラと内部アプライアンスサービスとの間の信頼境界が崩壊します。
ステップ4 — CouchDBへの呼び出しでcouchdbユーザーとしてファイルを読み書きする
このトンネルを使い、攻撃者はCouchDBと通信します。CouchDBはcouchdbユーザーとして動作し、そのAPIを通じてファイルの読み書きプリミティブを公開しているため、攻撃者はそのアカウントのコンテキストでファイルシステム操作を実行できます。これはroot権限ではありませんが、アプライアンス上に安定した足場を確保でき、誰でも読み取れる、あるいはCouchDBから読み取れるファイルへのアクセスが得られます。
ステップ5 — couchdbユーザーとして/tmpにファイルを準備する
攻撃者はCouchDBを通じて/tmpに細工したスクリプトを書き込みます。観測されたチェーンでは、この準備されたファイル(/tmp/1234.sh)は実行されると/sys/class/dmi/id/product_uuidを読み取ります。物理アプライアンスでは、このUUIDは誰でも読み取り可能なハードウェア識別子であり、ctrl-serviceの管理用パスワードの導出にも使用されています。UUID由来のパスワード経路が使われない場合でも、/tmpにファイルを準備しておくことで、次の実行ステップに必要なペイロードが用意されることになります。
ステップ6 — sysCtrl.execTcpdumpStartを呼び出す、あるいはCouchDBを通じて直接実行する
攻撃者はsysCtrl.execTcpdumpStart関数を呼び出すか、CouchDBを通じて準備済みファイルを直接実行することで、アプライアンス上でのコマンド実行を獲得します。これにより低権限のサービスアカウントのコンテキストでコード実行が得られます。まだroot権限ではありませんが、この足場はctrl-serviceとやり取りし、権限昇格エクスプロイトを準備するには十分です。
ステップ7 — パストラバーサルを用いてsysCtrl.execRemoveHotfixを呼び出す
攻撃者は、パストラバーサルペイロードを付与したsysCtrl.execRemoveHotfixを呼び出すことでCVE-2026-15410を発動させます。脆弱なエンドポイントはPOST /rollbackConfirm.actionです。攻撃者は、トラバーサルシーケンスを含むhotfixパラメータを渡します。
POST /rollbackConfirm.action HTTP/1.1
Host: <target SMA appliance>
Content-Type: application/x-www-form-urlencodedcsrfToken=<valid token>&command=rollback&rollbackUpgradeTime=&hotfix=../../../../../tmp/1234.sh&rollbackHotfixTime=
背後では、ctrl-serviceがその作業ディレクトリ/var/lib/aventail/avp/rollback/から/usr/local/bin/remove_hotfixを呼び出します。サニタイズされていないパスは、攻撃者が準備したスクリプトへと解決されます。
chmod +x /var/lib/aventail/avp/rollback/../../../../../tmp/1234.sh
/bin/bash /var/lib/aventail/avp/rollback/../../../../../tmp/1234.sh --unattended
shutdown -r now
remove_hotfixはrootとして実行されるため、攻撃者のスクリプトは完全な特権で実行され、その後通常は即座に再起動が行われます。
調査担当者は、侵害されたアプライアンス上で権限昇格エクスプロイトが/tmp/hypdate.b64としてBase64エンコードされているのを発見しており、これは非特権のcouchdbアカウントによって所有されていました。これは、攻撃者がそのサービスのコンテキストを通じて書き込みと実行を行えたことの明確な証拠です。
ステップ8 — KNUCKLEBALLマルウェアを展開し、Suo5とORANGETAILをメモリに注入する
root権限を得た攻撃者は、マルウェアツールキットの全体を展開します。
- KNUCKLEBALL (/usr/lib/python3.11/site-packages/deploy_new.py) — 正規のSonicWallプロセスに埋め込みのJARアーカイブをロードするPython製インジェクターです。
- Suo5 — 秘匿トンネリングのためにKNUCKLEBALLに埋め込まれた、オープンソースのHTTPプロキシです。
- ORANGETAIL — Behinderに似た独自のJava製Webシェルで、HTTPS経由の暗号化されたコマンド&コントロールを提供します。
このマルウェアは、単独のバイナリとしてディスクに書き込まれるのではなくメモリへ直接注入されるため、フォレンジック上の痕跡を減らし、検出を困難にしています。永続化は/etc/init.d/workplaceおよび/var/lib/unit/conf.jsonへの改変によって維持され、インプラントは再起動を生き延び、表面的なファームウェアのアップグレード後も残存する可能性があります。
UUID由来の制御サービスパスワード(CVE未採番)
関連する弱点として、物理SMAアプライアンスに影響するものがあります。ctrl-serviceのBasic認証パスワードは、/sys/class/dmi/id/product_uuidに格納されたアプライアンスのハードウェア識別子から導出されています。このファイルは物理デバイス上で誰でも読み取り可能であるため、これを読み取れるローカルユーザーやサービスアカウントであれば、制御サービスのパスワードを予測できてしまいます。
この認証バイパスは、次のように機能します。
- アプライアンスは、ハードウェアUUIDを用いてctrl-serviceのBasic認証パスワードを生成します。
- このUUIDは/sys/class/dmi/id/product_uuidに格納されており、物理SMAアプライアンスでは誰でも読み取り可能です。
- 低権限の足場(例えばCouchDBや他のローカルサービスを通じて)を獲得した後、攻撃者はこのUUIDを読み取ります。
- 既知のパスワード導出アルゴリズムを用いて、攻撃者はctrl-serviceの管理用パスワードを算出します。
- 攻撃者はctrl-serviceに完全な管理者権限で認証し、remove_hotfixワークフローを悪用する必要すら回避できます。
この悪用に成功すると、攻撃者はctrl-serviceに直接認証し、特権的な管理機能を呼び出し、診断・管理操作を実行し、侵害後の活動を簡略化し、初期の足場獲得後の権限昇格を加速させることが可能になり得ます。
悪用の前提条件:
- 物理SMA 1000アプライアンスであること(仮想アプライアンスは同様の形では影響を受けません)。
- 物理デバイスで誰でも読み取り可能な/sys/class/dmi/id/product_uuidを読み取れること。
Volexityは、このバイパスが観測されたUTA0533のインシデントでは使用されなかったと指摘していますが、物理ハードウェア展開においては依然として注目すべき露出であるとしています。
マルウェア分析
SonicWall SMAアプライアンスの悪用に成功した後、UTA0533は永続化の確立、秘匿されたコマンド&コントロール(C2)の維持、認証情報の窃取、長期アクセスの促進を目的とした多段階のマルウェアツールキットを展開しました。単一のペイロードに頼るのではなく、攻撃者はそれぞれ異なる侵害後の目的を達成するために連携動作する、いくつかの専用コンポーネントを展開していました。
主要なマルウェアファミリーはROOTRUN、KNUCKLEBALL、Suo5、ORANGETAILから構成され、複数のヘルパースクリプトと永続化メカニズムによって支えられています。

マルウェア展開チェーン
ROOTRUN
格納場所: /usr/bin/xzfind
ROOTRUNは、root侵害後にインストールされる悪意のあるsetuid ELFバイナリ(内部名rootrun)です。このバイナリは、非特権ユーザーが誰でもroot権限で任意のコマンドを実行できるようにすることで、恒久的なローカル権限昇格の仕組みを提供します。
一時的なエクスプロイトペイロードとは異なり、ROOTRUNはWebシェルが除去された後でも利用可能な、永続的なバックドアとして機能します。
特徴
| 属性 | 値 |
| 種別 | setuid ELFバイナリ |
| サイズ | 13.1 KB (13,464 bytes) |
| 内部名 | rootrun |
| MD5 | 5cb00bbfe818ee3e85fb99ab1db1af7c |
| SHA1 | 04d4a9fbb32e967200eb98be014ca914a03bfa6b |
| SHA256 | 81a9af3846bad3a1107164ff7cf0a08e020b31a3b32fd17866e17d4c1565f7f2 |
| 目的 | 永続的なroot実行 |
実行の流れ
ROOTRUNはsetuid()によってroot権限へ昇格し、その後bashを通じて攻撃者が指定したコマンドを実行します。内部の使用方法文字列は以下の通りです。
Usage: rootrun rootrun <command>
このバイナリはsetuid rootであるため、/usr/bin/xzfindを実行できる非特権ユーザーであれば誰でもrootとしてコマンドを実行できます。これにより、メモリ常駐型のWebシェルが除去された場合や、アプライアンスが再起動された場合でも復旧用のバックドアとして機能します。
ROOTRUNは、アプライアンス1において2026-06-22にディスクへ書き込まれた形で最初に観測されました。

ROOTRUNの実行フロー
KNUCKLEBALL
格納場所: /usr/lib/python3.11/site-packages/deploy_new.py
KNUCKLEBALLは、残りのインプラントを展開する役割を担う主要なマルウェアローダーです。単独のマルウェアを設置する代わりに、Java Attach APIを用いて悪意のあるJavaエージェントを正規のSonicWall JVMへ直接注入します。これにより、フォレンジック上の痕跡を大幅に減らしつつ、信頼されたアプリケーションプロセス内でインプラントを実行することが可能になります。
特徴
| 属性 | 値 |
| 種別 | Pythonローダー |
| サイズ | 79.6 KB (81,476 bytes) |
| 標的 | workplace.startup.CommandStartup |
| MD5 | b6df166291f80ee89032d769c99714f3 |
| SHA1 | b4ee1f50fbb49f0ff5fde3d026343bc23ee08d51 |
| SHA256 | 8c470301dcb7278f73e622f1950073567b34011c64b60cdfbb0f89803923a5a3 |
主な機能
- 2つのBase64エンコードされた埋め込みJARアーカイブをデコードします。
- 一時的なエージェントを/tmpに書き込みます。
- /tmp/agent_wp8.jar(Suo5)
- /tmp/agent_wp9.jar(ORANGETAIL)
- /proc/<PID>/cmdlineを列挙して標的のJVMプロセスを特定します。
- /tmp/.attach_pid<PID>および/tmp/.java_pid<PID>を通じてJava Attach APIを使用し、JARをインストルメンテーションエージェントとしてロードします。
- 実際のエージェントコマンド: load instrument false <path>。
- /tmp/agent_wp8.logと/tmp/agent_wp9.logをクリアし、その後/dev/nullへシンボリックリンクしてフォレンジック上の痕跡を消去します。
- 起動時の永続化のため、/etc/init.d/workplaceにpython3 /usr/lib/python3.11/site-packages/deploy_new.pyを追記します。
- NGINX UnitのUnixソケットを通じて/var/lib/unit/conf.jsonを書き換え、次の外部ルートを追加します。
- /__api__/login → http://127.0.0.1:8085における/workplace/error.jsp
- /__api__/logout → http://127.0.0.1:8085における/workplace/dialogs/errorDialog.jsp
Java注入プロセス
KNUCKLEBALLは、以下の注入シーケンスを実行します。
- Pythonスクリプト内に埋め込まれたBase64データから、JARペイロードをデコードします。
- デコードしたJARを/tmp/agent_wp8.jarおよび/tmp/agent_wp9.jarへ書き込みます。
- 実行中のプロセスを列挙し、workplace.startup.CommandStartupのJVMを見つけます。
- Java Attach APIのハンドシェイクファイル(/tmp/.attach_pid<PID>および/tmp/.java_pid<PID>)を作成します。
- load instrument false /tmp/agent_wpX.jarというコマンドをJVMへ送信します。
- JVMがこのエージェントを標的のサーブレットクラスにロードし、それを稼働中のWebシェル/プロキシへと変貌させます。
- エージェントのログを消去し、/dev/nullへシンボリックリンクします。
- ローダーが起動時に再実行されるよう、/etc/init.d/workplaceを改変します。
- 仕込んだエンドポイントを無害に見えるAPIパス配下で公開するため、/var/lib/unit/conf.jsonを書き換えます。

Java注入プロセス
Suo5
Suo5は、侵害されたアプライアンスを通じて秘匿トンネリングを提供するよう設計された、オープンソースのHTTP転送プロキシを改変したバージョンです。単独のアプリケーションとして動作する代わりに、Suo5はJavaインストルメンテーションエージェントとしてWorkplace JVMへ直接注入されます。
特徴
| 属性 | 値 |
| ファイル | /tmp/agent_wp8.jar |
| サイズ | 33.7 KB (34,520 bytes) |
| MD5 | 54d21399b8b52b48a0fef68450593e45 |
| SHA1 | c2b0ae0a1f42a139abe4dd612676066ec1426394 |
| SHA256 | 1e1e68bbb899450a57274a8b12082ed4e2040a2aae77014f20431689d2b4edee |
| 注入先 | com/aventail/jsp/workplace/error_jsp |
| 外部ルート | /__api__/login → /workplace/error.jsp |
機能
- HTTPトンネル
- 内部ピボット
- リバースプロキシ
- 秘匿C2
- トラフィック転送
ORANGETAIL
ORANGETAILは、Behinder 3.xを模倣した独自のJava製メモリ常駐型Webシェルです。従来型のJSP Webシェルを公開する代わりに、既存のサーブレットへ自らを注入し、暗号化されたリクエストを用いて通信します。
特徴
| 属性 | 値 |
| ファイル | /tmp/agent_wp9.jar |
| サイズ | 21.3 KB (21,800 bytes) |
| MD5 | 5f3a55201c511c9ff9be4c16c41028a2 |
| SHA1 | 5e5b716f2385c818ec61198be1a2a07a4560eac5 |
| SHA256 | ea9154e374e4f77bc2cf54282e23543573980342a85bc888cb23f20b8bbba081 |
| 注入先 | com/aventail/jsp/workplace/dialogs/errorDialog_jsp |
| 外部ルート | /__api__/logout → /workplace/dialogs/errorDialog.jsp |
| リクエストパラメータ | find (POST) |
| 暗号化 | AES-128-ECB、Base64エンコード、ハードコードされた鍵 |
| セッション管理 | 初回クラスロード後に紐付けられるハードコードされたセッション鍵 |
機能
- リモートコマンド実行
- ファイルのアップロード/ダウンロード
- AES暗号化通信
- セッション管理
- メモリ常駐型の実行
アクセスゲーティング
両方のインプラントは、通常のリクエストを意図的に無視します。これらは、リクエストに次の偽装されたUser-Agentが含まれている場合にのみ動作を開始します。
Mozilla/6.0 (Windows NT 11.0; Win64; x64) AppleWebKit/1537.136 (KHTML, like Gecko) Chrome/149.0.0.1 Safari/1537.136
意図的にあり得ないバージョン番号(Windows NT 11.0やChrome 149)が使われているため、防御側にとっては強力な検出の手がかりとなります。
ORANGETAIL対Behinder
| 特徴 | Behinder 3.x | ORANGETAIL |
| 暗号化 | AES | AES-128-ECB |
| Base64デコーダ | 標準Javaクラス | 独自の手書きデコーダ |
| ローダー | javax.crypto.Cipherの直接インポート | Class.forName → getMethod → invokeによる完全なリフレクション |
| セッション | パスワード由来 | ハードコードされたセッション鍵 |
| リクエストパラメータ | POSTボディ | find |
| レスポンス | 生のAESバイト列 | JSONラッパー: {“message”:”ok”,”content”:”<b64-aes>”,”statuscode”:”200″} |
| 難読化 | 最小限 | String.valueOf()による1文字ずつの難読化 |
| 既定の動作 | 常に応答する | ゲーティング用User-Agentがない限り404を返す |
その他の侵害後アーティファクト
| アーティファクト | パス | 目的 |
| 準備済みスクリプト | /tmp/1234.sh | ハードウェアUUIDを読み取る、couchdb所有 |
| 権限昇格 | /tmp/hypdate.b64 | エンコードされたCVE-2026-15410ペイロード |
| Suo5エージェント | /tmp/agent_wp8.jar | HTTPプロキシエージェント |
| ORANGETAILエージェント | /tmp/agent_wp9.jar | Java製Webシェルエージェント |
| LDAPスニファー | /var/tmp/lib.sh | TCP/389に対しtcpdumpを起動 |
| マーカー | /var/tmp/txt | ゼロバイトの、root所有の侵害後アーティファクト |
| 永続化 | /etc/init.d/workplace | 起動時にKNUCKLEBALLを再起動 |
| ルートハイジャック | /var/lib/unit/conf.json | /__api__/loginと/__api__/logoutをインプラントへリダイレクト |
認証情報の窃取
2台目の侵害されたアプライアンスでは、攻撃者が/var/tmp/lib.shを展開し、暗号化されていないLDAPトラフィック(TCP/389)に対してtcpdumpを実行させていました。これにより、SMAアプライアンスとバックエンドのディレクトリサービスとの間でやり取りされるユーザー名とパスワードを、受動的に傍受することが可能になっていました。
観測された活動は、root権限を獲得した後でも、攻撃者が企業内での横展開を促進するために認証情報の収集を優先し続けたことを示しています。暗号化されていないLDAPを利用している組織は、この事例を、認証トラフィックをLDAPSやStartTLSのような暗号化プロトコルへ移行すべき警鐘として受け止める必要があります。
攻撃者インフラとネットワークIOC
ホストベースのIOCに加え、UTA0533の活動はいくつかのネットワークレベルの指標も生み出しています。これらはファイアウォールでのブロック、SIEM相関分析、アトリビューションに役立ちます。
観測された発信元IP
侵害されたアプライアンスとやり取りしていた、VPN以外の以下の発信元IPが観測されています。
- 42.200.172.14
- 81.19.140.217
- 89.117.20.1
- 108.205.8.173
- 147.45.51.19
- 150.241.210.53
- 202.8.105.201
- 217.77.15.99
Rapid7が観測したASN 206092のインフラ
Rapid7は、ASN 206092(F.N.S Holdings Limited)に関連する攻撃者インフラを特定しました。
- 45.131.194.0/24
- 45.146.54.0/24
- 63.135.161.0/24
- 173.239.211.0/24
- 個別IP: 193.37.32.179、193.37.32.214、216.73.163.151、216.73.163.158
漏洩した攻撃者のホスト名
観測された横展開活動の中で、意図せず漏洩したホスト名は以下の通りです。
- DESKTOP-5P0TSCP
- DESKTOP-IC3C80F
- DESKTOP-KRLUI3J
- KALI
- localhost
主要なネットワークシグネチャ
- /wsproxy?bmID=-3389…へのWebSocketアップグレードがHTTP 101を返しているもの。
- host=0.0.0.0、127.0.0.1、::ffff:127.0.0.1、またはlocalhostと、port=1050/port=8188を伴う/wsproxyへのリクエスト。
- ゲーティング用User-Agentを伴い、HTTP 200を返すPOST /__api__/loginおよびPOST /__api__/logout。
- Suo5トンネリングと一致するアウトバウンド接続や社内プロキシパターン。
脆弱性分析
CVE-2026-15409 — 認証前の/wsproxyバイパス(CVSS 10.0)
根本原因: /wsproxyエンドポイントは、容易に偽装できるクライアント側から供給された識別子に基づいてルーティングを判断しています。具体的には、「SMA Connect Agent」を含むUser-Agentと、bmID=-3389で始まるURIパラメータが、リクエストが正規の社内クライアントから発信されたものであるという証拠として扱われてしまいます。このエンドポイントは、クライアントを認証することも、要求されたバックエンドサービスが外部発信元からのものとして妥当かどうかを検証することもしていません。
悪用プロセスは、以下の段階から成ります。
- 攻撃者が、WebSocketアップグレードを要求する未認証のHTTPリクエストを/wsproxyエンドポイントへ送信します。
- このリクエストには、以下の偽装された値が含まれています。
- User-Agent: SMA Connect Agent
- bmID=-3389
- NGINXフロントエンドが、このリクエストを誤って正規のSMA Connectクライアントから発信されたものと分類してしまいます。
- アプライアンスは、VPN認証もセッションクッキーも多要素認証も必要とせずに、WebSocketトンネルを確立します。
- 攻撃者はCouchDBやctrl-serviceといった内部の宛先を選択し、アプライアンスにlocalhost限定サービスへ直接トラフィックをプロキシさせます。
- これにより攻撃者は、通常はローカルからのリクエストのみを信頼する特権的なバックエンドサービスと直接通信できるようになります。

CVE-2026-15409の攻撃フロー
- 認証を完全にバイパスする。
- localhost限定サービスへ任意のWebSocketトンネルを確立する。
- CouchDB、ctrl-service、Erlang管理サービスへアクセスする。
- インターネットと内部アプライアンスコンポーネントとの間の本来の信頼境界を突破する。
- CVE-2026-15410を連鎖させ完全なroot侵害を達成するために必要な初期の足場を獲得する。
悪用の前提条件:
- 脆弱なファームウェアを搭載した、インターネットに公開されたSMA 1000アプライアンス。
- 有効な認証情報は不要。
CVE-2026-15410 — remove_hotfixのパストラバーサル(CVSS 7.2)
根本原因: ctrl-serviceのremove_hotfixワークフローは、呼び出し元から供給されたパスを受け入れ、そのパスを正規化することもchrootジェイルを適用することもなくファイルシステム操作を実行してしまいます。相対パスのトラバーサルシーケンスにより、呼び出し元はホットフィックス格納ディレクトリから脱出し、任意のファイルを操作できてしまいます。
権限昇格のプロセスは、以下の段階から成ります。
- 攻撃者はまず、CVE-2026-15409を用いて確立したWebSocketトンネルを通じてctrl-serviceへのアクセスを獲得します。
- ../../../../../tmp/1234.shのような細工されたパストラバーサルペイロードを含む、悪意のあるremove_hotfixリクエストが送信されます。
- 脆弱なサービスは、攻撃者が制御する入力を用いてファイルシステムパスを構築します。
- このパスは正規化も検証もされないため、意図されたホットフィックスディレクトリの外側へと解決されます。
- 攻撃者は/tmpに配置した準備済みのペイロードを標的とし、ctrl-serviceにそれを昇格した特権で実行させます。
- 準備済みのペイロードはrootとして実行され、アプライアンスの完全な制御が得られます。

CVE-2026-15410の攻撃フロー
- 意図されたホットフィックスディレクトリから脱出する。
- 任意のファイルシステムの場所にアクセスする。
- 攻撃者が制御するファイルをroot権限で実行する。
- 低権限のサービスアカウントから完全なシステム侵害へと移行する。
- マルウェアを展開し、永続化を確立し、認証情報を窃取し、アプライアンスの設定を改変する。
悪用の前提条件:
- 通常はCVE-2026-15409によって開かれたlocalhostトンネルを通じた、ctrl-serviceへの到達可能性。
- 悪意のあるパスを含む、細工されたremove_hotfixリクエスト。
観測されたエクスプロイトのアーティファクト: /tmp/hypdate.b64には、この脆弱性を突くエンコード済みのエクスプロイトが含まれていました。
影響評価
認証情報の漏洩
root権限を得ることで、攻撃者はアプライアンスの認証情報ストアを読み取り、認証処理中に処理されるユーザー名とパスワードを傍受し、セッショントークンやMFA状態をキャプチャできます。暗号化されていないLDAPトラフィックに対してtcpdumpが使用されていたことが観測されており、アプライアンスを通過するドメイン認証情報を積極的に窃取していたことを示しています。
リモートコード実行
未認証の攻撃者は、root権限で任意のOSコマンドを実行できます。これにより、信頼されたVPNゲートウェイ上に、クリプトマイナー、ランサムウェア展開のための準備ツール、永続化メカニズム、その他の追加ツールを直接展開することが可能になります。
ネットワークトラフィックの傍受
root権限があれば、アプライアンスのインターフェース上でパケットキャプチャが可能です。LDAPバインド、RADIUS、認証セッション、社内アプリケーショントラフィックを含む機微なトラフィックが傍受され、暗号化されていない場合は復号され、外部へ持ち出される可能性があります。
永続化
setuidバイナリ、Python製インジェクター、改変されたinitスクリプト、NGINX Unitの設定変更は再起動を生き延び、修復されない限り表面的なファームウェアアップグレード後も残存する可能性があります。ROOTRUNやKNUCKLEBALLが残ったままパッチを当てたアプライアンスは、依然として侵害された状態にあります。
横展開
VPNアプライアンスは社内ネットワークへのルーティングとディレクトリサービスへの認証を行う位置にあります。侵害された認証情報とプロキシトンネルを利用して、ドメインコントローラー、ファイルサーバー、ワークステーション、クラウドID基盤へと横展開することが可能です。
ビジネスへの影響
悪用に成功すると、不正なネットワークアクセス、データ窃取、サービス停止、ランサムウェアの展開、風評被害、規制上のリスクへとつながる可能性があります。VPNアプライアンスはリモートワークにとって重要なインフラであるため、その侵害は業務停止という高いリスクを伴います。
検知と脅威ハンティング
組織は、特に2026年6月22日からパッチ適用日までの間にインターネットに公開され、未パッチであったSMA 1000アプライアンスについて、侵害の兆候を積極的にハンティングすべきです。以下のマトリクスは、ネットワーク・ホスト・ログの各データにおいて確認すべきポイントをまとめたものです。
ネットワーク指標
- bmID=-3389と、SMA Connect AgentのUser-Agent文字列を伴う、予期しない発信元IPからの/wsproxyへのインバウンドHTTPリクエスト。
- host=0.0.0.0、127.0.0.1、::ffff:127.0.0.1、またはlocalhostと、port=1050あるいはport=8188を伴う、extraweb_access.log内の/wsproxyに対するWebSocket 101レスポンス。
- HTTP 200を返すPOST /__api__/loginおよびPOST /__api__/logout。
- ゲーティング用User-Agentを伴うリクエスト: Mozilla/6.0 (Windows NT 11.0; Win64; x64) AppleWebKit/1537.136 (KHTML, like Gecko) Chrome/149.0.0.1 Safari/1537.136。
- Suo5トンネリングと一致するアウトバウンドまたは社内プロキシのトラフィックパターン。
- /workplace/error.jspまたは/workplace/dialogs/errorDialog.jspに対する予期しないHTTPSリクエスト。
ホスト指標
- /usr/bin/xzfind、あるいは予期しないsetuid ELFバイナリの存在。次のコマンドでハンティングできます: find / -perm -4000 -type f。
- /usr/lib/python3.11/site-packages/deploy_new.py、あるいは埋め込みJARアーカイブの存在。
- /tmp/hypdate.b64、/tmp/agent_wp8.jar、/tmp/agent_wp9.jar、/tmp/1234.sh、/var/tmp/lib.shなど、/tmpおよび/var/tmp内の予期しないファイル。
- /etc/init.d/workplaceまたは/var/lib/unit/conf.jsonの改変(http://127.0.0.1:8085へプロキシするルートに注意)。
- /workplace/ディレクトリ配下の新規JSPファイル。
- 予期しないtcpdumpプロセス、あるいはTCP/389に対するネットワークキャプチャ活動。
ログ分析
- 外部の発信元アドレスから繰り返される/wsproxyリクエストがないか、アプライアンスのアクセスログを確認する。
- 異常なUser-Agent文字列やURIパラメータを、認証ログと相関させる。
- ../../../../../tmp/1234.shのようなパストラバーサルを参照するremove_hotfixのエントリがないか、ctrl-service.logを監視する。
- CouchDB、ctrl-service、あるいはNGINX Unitワーカーから生成される予期しない子プロセスを監視する。
- アプライアンスのサービスアカウントによって開始されたtcpdumpやパケットキャプチャ活動を確認する。
- バックエンドポート1050および8188へのWebSocket接続メッセージがないか、access_servers.logを確認する。
修復と強化策
影響を受けるSonicWall SMA 1000アプライアンスを運用している組織は、これを進行中の重大度の高いインシデントとして扱う必要があります。既にアプライアンスが悪用されていた場合、パッチ適用だけでは不十分です。管理者は、パッチ適用と侵害調査、認証情報のローテーション、強化策を組み合わせて実施する必要があります。
即時対応措置
- 直ちにパッチを適用する。 MySonicWallを通じて、SMA 1000アプライアンスを12.4.3-03453以降または12.5.0-02835以降へアップグレードしてください。管理インターフェースまたはCLIを通じて、導入されているバージョンを確認してください。
- インターネットに公開されていた未パッチのアプライアンスは侵害されたものと想定する。 パッチ適用前に脆弱なファームウェアでインターネットに公開されていたアプライアンスは、上記のIOCを用いて調査すべきです。
- IOCをハンティングする。 ROOTRUN、KNUCKLEBALL、ORANGETAILのパス、改変されたinitスクリプト、NGINX Unitの設定変更がないか、ファイルシステムを調査してください。予期しないsetuidバイナリやtcpdumpの活動を確認してください。利用可能な場合は、Volexityが公表しているYARAシグネチャを使用してください。
- 侵害が確認された場合は再構築する。 侵害が確認された場合、最も安全な修復方法は、アプライアンスを工場出荷時状態にリセットし、パッチ済みファームウェアで再イメージ化し、脆弱なファームウェア系統(12.4.3-03245および12.5.0-02283)以前に取得した、正常であることが分かっているバックアップから設定を復元することです。仕込まれた永続化機構が含まれている可能性のあるバックアップから復元してはいけません。
- 認証情報をローテーションする。 アプライアンスが処理または保存していたすべての認証情報をリセットしてください。
- SMA管理者パスワード。
- ディレクトリサービスのバインド認証情報(LDAP、RADIUS、Active Directory)。
- 侵害の露出期間中に認証を行ったアカウントのユーザーパスワード。
- アプライアンス上に設定されている証明書とAPIキー。
- TOTP/MFAトークンとシード。
- アクセスログを確認する。 /wsproxyとやり取りした、あるいは異常なパラメータを使用していた外部の発信元アドレスを特定し、社内の認証および横展開活動と相関させてください。
強化策
- インターネットへの露出を制限する。 SMAアプライアンスをリバースプロキシ、VPN、あるいはゼロトラストアクセスゲートウェイの背後に配置してください。可能な限り、インバウンドアクセスを信頼できる発信元IP範囲に制限してください。
- アプライアンス管理をセグメント化する。 管理インターフェースと内部サービスが、信頼できないネットワークから到達不可能であることを確認してください。
- 堅牢なロギングを有効化する。 アプライアンスのログをSIEMへ転送し、/wsproxyへのアクセス、異常なUser-Agent文字列、ファイルシステムの整合性の変化についてアラートを設定してください。
- 整合性を監視する。 /usr/bin、/usr/lib/python3.11/site-packages、/etc/init.d、/var/lib/unit、/workplaceといった重要なパスに、ファイル整合性監視を導入してください。
- ディレクトリトラフィックを暗号化する。 アプライアンスレベルのパケットキャプチャの価値を下げるため、LDAPおよびRADIUSトラフィックを暗号化された伝送路へ移行してください。
- インシデント対応プレイブックを更新する。 アプライアンス侵害のシナリオ、オフラインでのフォレンジックイメージング、迅速な認証情報ローテーションのワークフローを盛り込んでください。
結論
2026年7月のSonicWall SMAゼロデイクラスターは、企業のリモートアクセスインフラという重要な区分に対する、緊急性が高く、信頼性のある、かつ実際に悪用されている脅威です。このチェーンは、単一の認証前WebSocketプロキシバイパスがパストラバーサル型の権限昇格の欠陥と組み合わさることで、未認証のインターネットリクエストがVPNアプライアンスの完全なroot制御へと変貌し得ることを示しています。
SMA 1000アプライアンスを12.4.3-03453以降または12.5.0-02835以降へ直ちにパッチ適用することは、譲れない最優先事項です。管理者は、露出期間中に脆弱なファームウェアを稼働させていたインターネット公開・未パッチのアプライアンスは、侵害されているか、あるいは積極的に標的にされていると想定すべきです。パッチ適用は、包括的な脅威ハンティング、認証情報のローテーション、整合性の検証、そして侵害が確認された場合はアプライアンスの再構築と組み合わせて実施する必要があります。
長期的には、組織はVPNコンセントレーターの公開方法と監視のあり方を再評価し、エッジアプライアンスを価値の高い標的として扱い、インシデント対応プレイブックが信頼されたネットワークゲートウェイのroot侵害を考慮したものになっていることを確認する必要があります。UTA0533やINCランサムウェアのようなアクターに先んじるためには、迅速なパッチ適用、厳格な露出管理、堅牢なロギング、暗号化されたディレクトリサービス、強靭な復旧計画を組み合わせた多層防御が不可欠です。