PoC Exploit Code Published for nginx-ui Backup Restore Security Flaw
2026/04/01 gbhackers — nginx-ui のバックアップ復元メカニズムに存在する、深刻なセキュリティ欠陥 CVE-2026-33026 (CVSS:9.4) を悪用する攻撃者は、暗号化バックアップの改竄と任意のコマンド実行を可能にし得る。すでに Proof-of-Concept (PoC) エクスプロイト・コードが公開されているため、バージョン 2.3.4 への即時アップデートが管理者にとって必要となっている。

バックアップ整合性バイパスの欠陥
この脆弱性は、バックアップ・フォーマットに信頼できる整合性ルートが存在しないという、循環信頼モデルに起因する。
cipher = AES.new(key, AES.MODE_CBC, iv)decrypted = cipher.decrypt(encrypted_data)return unpad(decrypted, AES.block_size)
with zipfile.ZipFile(file_path, 'r') as main_zip: main_zip.extractall(output_dir)files_to_decrypt = ["hash_info.txt", "nginx-ui.zip", "nginx.zip"]for filename in files_to_decrypt: path = os.path.join(output_dir, filename) if os.path.exists(path): with open(path, "rb") as f: encrypted = f.read() decrypted = decrypt_aes_cbc(encrypted, key_b64, iv_b64) out_path = path + ".decrypted" with open(out_path, "wb") as f: f.write(decrypted) print(f"[*] Successfully decrypted: {out_path}")
このアプリケーションは、AES 暗号鍵および初期化ベクター (IV) をセキュリティ・トークンとしてクライアントへ直接提供する。このトークンは、データおよび整合性メタデータの暗号化に使用される (Security Researcher 0xJacky による報告)。
このトークンを悪用する攻撃者は、アーカイブの復号/コンフィグ・ファイルの改竄/SHA-256 ハッシュの更新により、再暗号化したバックアップの生成が可能となる。

この復元プロセスが、攻撃者が生成した整合性メタデータを受け入れるため、悪意のコンフィグが、そのままサーバ環境に適用されてしまう。
この操作により、脅威アクターはバックドアの挿入や、ホスト上での任意のコマンド実行が可能となる。
このエクスプロイトは、ハッシュ不一致に関係なく静かに動作し、nginx-ui デプロイメントの完全な侵害を引き起こす可能性がある。

管理者にとって必要なことは、nginx-ui を修正済みバージョン 2.3.4 へと直ちにアップグレードし、インフラを保護することである。
その一方で開発者は、クライアントの公開トークンではなく、サーバ側の秘密鍵によるバックアップ・メタデータ署名などの、信頼された整合性ルートを導入する必要がある。さらに、復元処理において厳格なサーバ側での整合性検証を実施し、攻撃者が制御するデータの処理を完全に防止することが求められる。
訳者後書:nginx-ui のバックアップ復元機能に存在する、深刻な脆弱性 CVE-2026-33026 について解説する記事です。この問題の原因は、バックアップの鍵をサーバ側で隠し持たず、クライアント側に渡してしまうという、信頼モデルの設計ミスにあります。通常、データの改竄を防ぐための整合性チェック (ハッシュ値) などは、攻撃者が手出しできない秘密の鍵で守られるべきです。しかし、この脆弱性を悪用する攻撃者は、データの暗号化に使う鍵や初期化ベクトル (IV) をクライアントから引き出すことが可能になります。そのため、バックアップの中身である Nginx の設定ファイルなどを攻撃者が書き換え、同じ鍵を使って作り直し、再暗号化することが可能となっています。ご利用のチームは、ご注意ください。よろしければ、Nginx での検索結果も、ご参照ください。
You must be logged in to post a comment.