概要
オープンソースのNginx管理ツール「nginx-ui」に、認証バイパスを可能にする重大な脆弱性CVE-2026-33032(CVSS 9.8)が発見され、野生での積極的な悪用が確認されている。この脆弱性を悪用することで、認証なしにNginxの設定ファイルの読み書き・削除やサービスの再起動が可能となり、最終的にはNginxサーバーの完全な乗っ取りに至る。修正版はバージョン2.3.4(2026年3月15日リリース)で提供されており、現時点での最新安全版は2.3.6となっている。Shodanによる調査では、世界全体で約2,689件のインターネット公開インスタンスが確認されており、中国・米国・インドネシア・ドイツ・香港に集中している。
技術的な詳細
脆弱性の根本原因は、nginx-uiがModel Context Protocol(MCP)統合に追加した/mcp_messageエンドポイントの認証制御の不備にある。/mcpエンドポイントにはIPホワイトリストと認証の両方が要求されるのに対し、/mcp_messageエンドポイントにはIPホワイトリストのみが適用され、かつデフォルトのホワイトリストが空であるため、ミドルウェアが「すべて許可」と判断してしまう設計上の欠陥がある。
攻撃の手順は以下の2段階で構成される。まず攻撃者はHTTP GETリクエストを/mcpエンドポイントに送信してServer-Sent Events(SSE)接続を確立し、セッションIDを取得する。次に取得したセッションIDを使ってHTTP POSTリクエストを/mcp_messageに送ることで、認証なしにすべてのMCPツールを呼び出せる。NISTはこの脆弱性について「ネットワーク上のいかなる攻撃者も、Nginxの再起動・設定ファイルの作成・変更・削除・自動リロードのトリガーを含む全MCP機能を認証なしで実行できる」と説明している。
関連する脆弱性と影響範囲
本脆弱性と連携して悪用される可能性がある二次的な脆弱性として、CVE-2026-27944も存在する。バージョン2.3.3未満では、/api/backupエンドポイントから暗号化キーが漏洩するため、攻撃者はシステムバックアップをダウンロードしてユーザー認証情報・SSL秘密鍵・MCPの認証に使われるnode_secretパラメータを平文で抽出できる。
CVE-2026-33032の悪用に成功した攻撃者は、Nginx設定ファイルへの任意の改ざん、悪意あるサーバーブロックの注入、トラフィックの傍受と管理者認証情報の収集など、サービス全体の制御を数秒以内に奪取できる。
対策と推奨事項
直ちにnginx-uiをバージョン2.3.4以降(推奨は最新の2.3.6)にアップグレードすることが最優先の対応となる。修正版では/mcp_messageエンドポイントへの認証ミドルウェアの追加と、IPホワイトリストのデフォルト動作を「すべて許可」から「すべて拒否」に変更する対応が施されている。アップグレードが直ちに困難な場合は、インターネットからnginx-uiへのアクセスを遮断し、内部ネットワークからのみアクセス可能な構成に変更することを検討すべきである。野生での悪用が確認されている以上、公開されているインスタンスは早急な対応が求められる。