- شناسه CVE-2026-33032 :CVE
- CWE-306 :CWE
- yes :Advisory
- منتشر شده: مارس 30, 2026
- به روز شده: مارس 30, 2026
- امتیاز: 9.8
- نوع حمله: Authorization Bypass
- اثر گذاری: Service Takeover
- حوزه: وبسرورها
- برند: Nginx UI (0xJacky)
- محصول: nginx-ui
- وضعیتPublished :CVE
- Yes :POC
- وضعیت آسیب پذیری: patch نشده
چکیده
آسیبپذیری بحرانی در nginx-ui به دلیل عدم اعمال احراز هویت روی مسیر /mcp_message است. این مسیر تنها از لیست سفید IP استفاده میکند که بهطور پیشفرض خالی است و همین باعث میشود همه درخواستها مجاز به نظر برسند. این ضعف امنیتی به مهاجم این امکان را میدهد که بدون نیاز به احراز هویت، تمام ابزارهای MCP را فراخوانی کند و کنترل کامل سرویس Nginx را در اختیار بگیرد. مهاجم با این دسترسی میتواند پیکربندیهای Nginx را تغییر دهد، فایلهای پیکربندی را ایجاد، ویرایش یا حذف کند، پیکربندیها را مجدداً بارگذاری کند و در نهایت سرور Nginx را به طور کامل تصاحب کند.
توضیحات
آسیبپذیری CVE-2026-33032 در nginx-ui ناشی از ضعف امنیتی در پیادهسازی احراز هویت مطابق با CWE-306 برای یکی از مسیرهای MCP (Model Context Protocol) است. در این آسیبپذیری، دو مسیر اصلی وجود دارد؛ مسیر /mcpکه از هر دو روش لیست سفید IP (IP Whitelisting) و احراز هویت استفاده میکند و مسیر /mcp_messageکه فقط از لیست سفید IP بهره میبرد و هیچگونه احراز هویتی بر روی آن اعمال نشده است. مشکل اصلی از آنجا ناشی میشود که لیست سفید IP بهطور پیشفرض خالی است و این موضوع باعث میشود که میانافزار (middleware) بهطور نادرست آن را بهعنوان اجازه به همه (Allow All) تفسیر کند. این عملکرد fail-open به مهاجم این امکان را میدهد که بدون احراز هویت، از طریق درخواستهای HTTP به پورت پیشفرض nginx-ui (معمولاً 9000) به ابزارهای MCP دسترسی پیدا کند.
با توجه به اینکه هر دو مسیر /mcp و /mcp_message به یک هندلر مرکزی (central handler) با نام mcp.ServeHTTP اشاره میکنند، مهاجم میتواند به تمامی ابزارهای مدیریتی موجود در سیستم دسترسی پیدا کند. این ابزارها شامل عملیاتهای بسیار حساس و حیاتی هستند که به مهاجم این امکان را میدهند سرویس Nginx را تحت کنترل خود درآورد. برخی از این عملیاتها شامل restart_nginx (راهاندازی مجدد سرویس Nginx)، reload_nginx (بارگذاری مجدد پیکربندی Nginx)، nginx_config_add و nginx_config_modify (ایجاد و ویرایش فایلهای پیکربندی Nginx) هستند. از آنجا که nginx_config_add و nginx_config_modify میتوانند فایلهای پیکربندی حساسی مانند nginx.conf را بازنویسی کنند، مهاجم قادر خواهد بود بدون هیچگونه محدودیتی پیکربندیهای سرویس را تغییر دهد. همچنین در پیادهسازی این ابزارها، ایجاد پیکربندی جدید میتواند بهطور خودکار موجب بارگذار مجدد سرویس Nginx شود و در نتیجه تغییرات اعمالشده بلافاصله فعال خواهند شد.
این آسیبپذیری از طریق پروتکل HTTP و ارسال درخواست JSON-RPC به مسیر /mcp_message قابل بهرهبرداری است. مهاجم میتواند بهراحتی یک فایل پیکربندی مخرب ایجاد کند؛ برای مثال با افزودن یک reverse proxy (پروکسی معکوس) که تمامی درخواستهای ورودی را به سرور تحت کنترل مهاجم هدایت کند یا با ایجاد تنظیماتی برای ثبت هدرهای Authorization در لاگها، دادههای حساس کاربران را جمعآوری کند. چنین تغییراتی میتواند منجر به رهگیری دادههای حساس (Sensitive Data Interception)، هدایت ترافیک به مسیرهای غیرمجاز، افشای اطلاعات مهم مربوط به پیکربندی سرور و حتی ایجاد اختلال در دسترسپذیری سرویس شود.
به دلیل سادگی فرآیند بهرهبرداری و وجود کد اثبات مفهومی (PoC) عمومی برای این آسیبپذیری، مهاجم میتواند بهراحتی با استفاده از ابزارهای اسکریپتی یا ابزارهای تست نفوذ درخواستهای مخرب را ارسال کرده و از این ضعف امنیتی سوءاستفاده کند. در واقع این آسیبپذیری بهطور کامل قابل خودکارسازی است و مهاجم میتواند تنها با ارسال یک درخواست POST به مسیر /mcp_message، پیکربندی Nginx را تغییر داده و آن را بلافاصله بارگذاری کند.
پیامدهای این آسیبپذیری بسیار جدی است. مهاجم میتواند بهطور کامل سرویس Nginx را تصاحب کند، پیکربندیها را ویرایش کرده یا حذف کند و حتی باعث از دسترس خارج شدن سرویس شود. در چنین شرایطی ممکن است ترافیک حساس کاربران، از جمله اعتبارنامهها و توکنهای نشست، از مسیرهای غیرمجاز عبور کند. علاوه بر این، با استفاده از دستورات nginx_config_get، مهاجم قادر است به پیکربندیهای Nginx دسترسی پیدا کرده و ساختارهای داخلی سرور را افشا کند.
در حال حاضر هیچ پچ امنیتی رسمی برای این آسیبپذیری منتشر نشده است و نسخه 2.3.5 و تمامی نسخههای پیش از آن در nginx-ui تحت تأثیر این ضعف امنیتی قرار دارند.
CVSS
| Score | Severity | Version | Vector String |
| 9.8 | CRITICAL | 3.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
لیست محصولات آسیب پذیر
| Versions | Product |
| affected at <= 2.3.5 | nginx-ui |
استفاده محصول در ایران
در این جدول، تعداد صفحات ایندکسشده در گوگل با دامنه .ir که Nginx UI را ذکر کرده اند، ثبت شده است. این داده صرفاً برای برآورد تقریبی حضور محصولات در وب ایران استفاده شده و نمایانگر میزان نصب دقیق و استفاده واقعی نیست.
| Approx. Usage in .ir Domain via Google (Total Pages) | Search Query (Dork) | Product |
| 44000 | site:.ir “Nginx” | Nginx UI |
نتیجه گیری
این آسیبپذیری با شدت بحرانی در nginx-ui به مهاجم این امکان را میدهد که بدون نیاز به احراز هویت، کنترل کامل سرویس Nginx را در اختیار بگیرد. مهاجم میتواند با استفاده از endpoint آسیبپذیر /mcp_message پیکربندی Nginx را تغییر دهد و بهطور مستقیم سرویس را تحت کنترل خود درآورد. برای جلوگیری از بهرهبرداری از این آسیبپذیری و کاهش ریسکهای احتمالی، اقدامات زیر پیشنهاد میشود:
- غیرفعالکردن مسیر /mcp_message: در اسرع وقت این مسیر را در reverse proxy یا خود nginx-ui مسدود کنید تا پیش از انتشار پچ امکان سوءاستفاده وجود نداشته باشد.
- افزودن احراز هویت اجباری: برای جلوگیری از دسترسی بدون احراز هویت به مسیر /mcp_message ، لازم است که میانافزار AuthRequired به این endpoint اضافه شود. این اقدام مانع از آن میشود که مهاجم بتواند بدون احراز هویت ابزارهای MCP را اجرا کند.
- تقویت لیست سفید IP: عملکرد پیشفرض IPWhiteList باید از حالت allow-all به حالت deny-all تغییر کند. تا زمان انتشار پچ، مدیران میتوانند IPهای مجاز را بهصورت دستی پیکربندی کنند.
- ایزولهسازی محیط اجرا: اجرای nginx-ui در کانتینرهای Docker یا محیطهای ایزوله Kubernetes باعث محدودشدن اثر حمله میشود. همچنین توصیه میشود دسترسی شبکه به پورت مدیریتی 9000 تنها از شبکههای داخلی مجاز باشد.
- استفاده از فایروال اپلیکیشن وب (WAF): راهکارهایی مانند ModSecurity میتوانند درخواستهای غیرمجاز به مسیرهای /mcp_message و /mcp را مسدود کنند.
- مانیتورینگ و ثبت لاگ: لاگهای nginx-ui را با سطح خطای مناسب فعال کنید تا تلاشهای مشکوک برای ایجاد یا تغییر پیکربندی قابل شناسایی باشد.
- اسکن امنیتی دورهای: با ابزارهای تست امنیتی مانند OWASP ZAP یا Burp Suite مسیرهای مدیریتی را اسکن کنید و هرگونه فراخوانی MCP غیرمجاز را بررسی نمایید.
- آموزش تیمهای توسعه و عملیات: ضرورت پیادهسازی احراز هویت قوی برای مسیرهای حساس باید بهصورت مداوم به تیمها آموزش داده شود.
اجرای این روشها، بهویژه محدودسازی فوری و افزودن احراز هویت، ریسک بهرهبرداری و تصاحب کامل سرویس Nginx را به میزان قابلتوجهی کاهش میدهد.
امکان استفاده در تاکتیکهای Mitre Attack (در زمان اجرای حمله)
Initial Access (TA0001)
مهاجم با ارسال یک درخواست SSE به endpoint /mcp و سپس درخواستهای HTTP به endpoint /mcp_message وبسرور هدف، بدون نیاز به احراز هویت، دسترسی اولیه به قابلیتهای مدیریتی Nginx را به دست میآورد. این دسترسی از راه دور و بدون نیاز به هیچ اعتبارنامهای است.
Execution (TA0002)
پس از دسترسی به endpoint، مهاجم با فراخوانی ابزارهای MCP مانند nginx_config_add، nginx_config_modify و reload_nginx، کد مخرب خود را در قالب تغییرات پیکربندی Nginx اجرا میکند. این اجرا در سطح سرویس Nginx و با دسترسی کاربر سیستمی که Nginx UI تحت آن اجرا میشود انجام میگیرد.
Persistence (TA0003)
مهاجم برای حفظ دسترسی، میتواند با تغییر پیکربندی Nginx به گونهای که تمام درخواستها به سرور مخرب هدایت شوند (redirect)، یا با ایجاد بکدور در فایلهای پیکربندی (مثل مسیردهی به یک سرور پراکسی معکوس که خود کنترل میکند)، دسترسی پایدار خود را تضمین کند.
Privilege Escalation (TA0004)
با توجه به اینکه Nginx UI معمولاً با دسترسیهای بالا (اغلب root یا sudo) برای مدیریت سرویس Nginx اجرا میشود، بهرهبرداری موفق به مهاجم اجازه میدهد سطح دسترسی خود را به بالاترین سطح ممکن در سرور ارتقاء دهد و کنترل کامل سیستم عامل را در دست گیرد. ابزارهای MCP مانند restart_nginx و reload_nginx برای اعمال تغییرات نیازمند دسترسی بالا هستند که از طریق آسیبپذیری در اختیار مهاجم قرار میگیرد.
Defense Evasion (TA0005)
مهاجم میتواند با پاکسازی لاگهای Nginx UI و Nginx، تغییر تاریخچه فایلها، یا مخفیسازی تغییرات پیکربندی در میان فایلهای بهظاهر بیخطر، از دید مکانیزمهای دفاعی پنهان بماند. همچنین به دلیل عدم نیاز به احراز هویت، هیچ رکوردی از ورود مهاجم در لاگهای احراز هویت سیستم ثبت نمیشود.
Credential Access (TA0006)
مهاجم با دسترسی به فایلهای پیکربندی Nginx از طریق ابزار nginx_config_get، میتواند اطلاعات حساسی مانند کلیدهای TLS/SSL خصوصی، رمزهای عبور ذخیرهشده در فایلهای پیکربندی و اعتبارنامههای دسترسی به backendهای مختلف را استخراج کند.
Discovery (TA0007)
مهاجم با استفاده از ابزارهای MCP مانند nginx_config_list و nginx_status، میتواند ساختار پیکربندی Nginx، مسیر فایلها، تنظیمات پراکسی و اطلاعات سرورهای پشتیبان را شناسایی کرده و نقاط ضعف بعدی را بیابد.
Collection (TA0008)
مهاجم میتواند تمام فایلهای پیکربندی Nginx، لاگها و دادههای عبوری از وبسرور (از طریق تغییر مسیر ترافیک) را برای انتقال آماده کند. ابزار nginx_config_get به طور خاص برای خواندن محتوای فایلهای پیکربندی طراحی شده است.
Exfiltration (TA0010)
مهاجم دادههای جمعآوریشده را از طریق اتصال مستقیم به سرورهای تحت کنترل خود یا از طریق کانالهای رمزگذاریشده (مانند HTTPS) از محیط هدف خارج میکند. با تغییر پیکربندی Nginx، مهاجم میتواند یک پراکسی معکوس برای سرقت دادههای عبوری ایجاد کند.
Impact (TA0040)
بهرهبرداری موفق از این آسیبپذیری منجر به نابودی کامل محرمانگی، یکپارچگی و در دسترس بودن وبسرور هدف میشود. مهاجم با کنترل کامل بر Nginx میتواند تمام ترافیک ورودی و خروجی را رهگیری، تغییر یا مسدود کند، اطلاعات حساس کاربران (از جمله کوکیها، هدرهای Authorization و دادههای فرم) را بدزدد، بدافزار به وبسایتهای میزبانشده تزریق نماید، و از سرور به عنوان نقطه شروعی برای نفوذ به شبکه داخلی استفاده کند. این امر میتواند منجر به از دست رفتن اعتبار برند، نقض قوانین حریم خصوصی (مانند GDPR)، خسارات مالی جبرانناپذیر و در موارد بحرانی، توقف کامل عملیات تجاری شود.
منابع
- https://www.cve.org/CVERecord?id=CVE-2026-33032
- https://www.cvedetails.com/cve/CVE-2026-33032/
- https://github.com/0xJacky/nginx-ui/security/advisories/GHSA-h6c2-x2m2-mwhf
- https://vulmon.com/vulnerabilitydetails?qid=CVE-2026-33032
- https://vuldb.com/vuln/354241
- https://nvd.nist.gov/vuln/detail/CVE-2026-33032
- https://github.com/0xJacky/nginx-ui/security/advisories/GHSA-h6c2-x2m2-mwhf
- https://websec.net/blog/cve-2026-33032-unauthenticated-nginx-ui-mcp-takeover-69e1200f9fceb1f3fbe9c47f
- https://cwe.mitre.org/data/definitions/306.html
گزارش اثبات آسیبپذیری CVE-2026-33032
اطلاعات آسیبپذیری
عنوان: نقص احراز هویت بحرانی در اندپوینت MCP نرمافزار Nginx UI
شناسه: CVE-2026-33032
وضعیت مشاوره: Advisory / Patch Available
نمره CVSS تقریبی: CVSS : 9.8 (Critical)
محصول: Nginx UI
محصول / نسخههای آسیبپذیر
در نسخههای زیر (پیش از اعمال پچ امنیتی):
- تمامی نسخههای Nginx UI پیش از 2.3.6
- Nginx UI نسخه 2.3.5 و پایینتر
- سیستمهایی که از MCP (Model Context Protocol) در Nginx UI استفاده میکنند
- استقرارهای Nginx UI با پیکربندی پیشفرض و بدون تنظیم IPوایتلیست
- کلیه محیطهای عملیاتی (Production) که از Nginx UI برای مدیریت Nginx استفاده میکنند
محیطهای درگیر
- سازمانهایی که از Nginx UI به عنوان ابزار مدیریت وببیس وبسرور Nginx استفاده میکنند
- سرویسهای میزبانشده روی پورت ۹۰۰۰ (پورت پیشفرض Nginx UI) و در معرض اینترنت
- محیطهای ابری، مراکز داده و سرورهای مجازی که از Nginx UI بهره میبرند
- استقرارهای Docker با بیش از ۴۳۰,۰۰۰ بار pull (محبوبیت بالا)
- کلیه صنایع (وب، تجارت الکترونیک، محتواسازی و…)
- مدیران سیستم و توسعهدهندگانی که از Nginx UI برای مدیریت پیکربندی Nginx استفاده میکنند
کامپوننتهای آسیبپذیر
- سرویس Nginx UI (وبسرور داخلی روی پورت ۹۰۰۰)
- اندپوینت /mcp_message (واسط MCP بدون احراز هویت)
- اندپوینت /mcp (با احراز هویت و IPوایتلیست)
- میانافزار (Middleware) AuthRequired() که روی /mcp_message اعمال نشده است
- میانافزار IPWhiteList() با رفتار پیشفرض ناامن (empty list = allow all)
- ماژول MCP handler که وظیفه اجرای ابزارهای مدیریت Nginx را بر عهده دارد
ریشه مشکل (Root Cause Analysis)
ریشه اصلی این آسیبپذیری به یک نقص در معماری میانافزارهای (Middleware) احراز هویت در پروتکل MCP نرمافزار Nginx UI بازمیگردد. Nginx UI برای ارائه قابلیتهای مدیریت خودکار Nginx، دو اندپوینت HTTP به نامهای /mcp و /mcp_message را در معرض دسترس قرار میدهد. هدف اولیه، استفاده از /mcp برای برقراری اتصال اولیه و /mcp_message برای ارسال درخواستهای اجرای ابزارهای مدیریتی بوده است. با این حال، در نسخههای آسیبپذیر (قبل از 2.3.4)، تابع InitRouter در فایل mcp/router.go تنها اندپوینت /mcp را با میانافزار AuthRequired() محافظت کرده، اما اندپوینت /mcp_message را بدون این لایه امنیتی رها کرده است. در نتیجه، مهاجم میتواند مستقیماً به اندپوینت /mcp_message درخواست ارسال کرده و بدون نیاز به احراز هویت، تمام ابزارهای مدیریت Nginx را فراخوانی کند.
این ضعف از طریق سطح حمله شبکه (پورت ۹۰۰۰ یا هر پورتی که Nginx UI روی آن اجرا میشود) قابل دسترسی است و برای بهرهبرداری موفق، تنها نیاز به دسترسی شبکه به این پورت وجود دارد. در سناریوی بهرهبرداری کلی، مهاجم با ارسال یک درخواست GET اولیه به اندپوینت /mcp (که نیازی به احراز هویت ندارد و صرفاً برای دریافت sessionID استفاده میشود)، یک sessionID معتبر دریافت کرده و سپس با ارسال یک درخواست POST به اندپوینت /mcp_message حاوی همان sessionID و payload مورد نظر، میتواند بدون احراز هویت، ابزارهای مدیریت Nginx را فراخوانی کند که نهایتاً منجر به تغییر پیکربندی، سرقت اطلاعات حساس و یا از کار انداختن کامل سرویس Nginx میگردد. همچنین، رفتار پیشفرض میانافزار IPWhiteList() به گونهای است که لیست خالی IP را به معنای «مجاز بودن همه آدرسها» تفسیر میکند که این موضوع شدت آسیبپذیری را دوچندان کرده است.
بخش آسیبپذیر
رفتار ناامن سیستم:
عدم اعمال میانافزار AuthRequired() روی اندپوینت /mcp_message و تفسیر لیست خالی IPوایتلیست به عنوان «مجاز بودن همه آدرسها». این رفتار ناامن باعث میشود که هر مهاجمی با دسترسی شبکه، بتواند بدون احراز هویت، به تمام ابزارهای مدیریت Nginx دسترسی داشته باشد.
نحوه سوءاستفاده مهاجم:
- مهاجم یک اسکن ساده روی پورت ۹۰۰۰ (پورت پیشفرض Nginx UI) انجام میدهد
- مهاجم یک درخواست GET به آدرس http://target:9000/mcp ارسال میکند
- Nginx UI بدون نیاز به احراز هویت، یک sessionID جدید در پاسخ SSE (Server-Sent Events) بازمیگرداند
- مهاجم یک درخواست POST به آدرس http://target:9000/mcp_message?sessionID=[sessionID] حاوی payload JSON-RPC برای فراخوانی ابزار nginx_config_modify ارسال میکند
- Nginx UI بدون بررسی احراز هویت، درخواست را پردازش کرده و فایل پیکربندی Nginx را بازنویسی میکند
- مهاجم ابزار reload_nginx را فراخوانی کرده تا پیکربندی جدید بارگذاری شود
- وبسرور Nginx پیکربندی آلوده را اعمال کرده و ترافیک کاربران به سرور مهاجم هدایت میشود
- مهاجم میتواند اطلاعات حساس (مانند هدرهای Authorization، توکنها و دادههای کاربران) را جمعآوری کند
- مهاجم در نهایت کنترل کامل بر وبسرور Nginx و ترافیک آن به دست میآورد
نقش این آسیبپذیری در زنجیره حمله
این آسیبپذیری یک نقطه ورود اولیه (Initial Access) بسیار قدرتمند و یک ابزار افزایش سطح دسترسی (Privilege Escalation) کامل در زنجیره حمله محسوب میشود. با توجه به نمره CVSS 9.8 (بحرانی)، ماهیت شبکهای و عدم نیاز به احراز هویت، مهاجم میتواند از راه دور و بدون نیاز به هرگونه تعامل با کاربر، کنترل کامل وبسرور Nginx را در دست گیرد. Nginx UI به عنوان یک ابزار مدیریتی، دسترسی مستقیم به فایلهای پیکربندی Nginx و قابلیت راهاندازی مجدد سرویس را فراهم میکند. موفقیت در بهرهبرداری از این آسیبپذیری عملاً به معنای نقض کامل محرمانگی (Confidentiality)، یکپارچگی (Integrity) و در دسترسبودن (Availability) سرویس Nginx و تمامی برنامههای تحت وب پشت آن است. مهاجم میتواند با تغییر پیکربندی Nginx، ترافیک کاربران را به سرورهای مخرب هدایت کرده (مانند حملات Man-in-the-Middle)، کلیدهای TLS خصوصی (Private Keys) را استخراج کرده و یا با ایجاد بلوکهای سرور جدید، بدافزارها و بکدورهای دائمی (Persistent Backdoors) را روی سرور مستقر نماید. این آسیبپذیری همچنین میتواند به عنوان سکوی پرشی (Pivot Point) برای حرکت جانبی (Lateral Movement) به سایر سرورهای داخلی شبکه مورد استفاده قرار گیرد. با توجه به افشای عمومی PoC و گزارشهای متعدد از سوءاستفاده فعال در دنیای واقعی، این آسیبپذیری یک تهدید جدی و فوری برای تمام سازمانهای استفادهکننده از Nginx UI محسوب میشود.
پیشنیازهای بهرهبرداری (Prerequisites)
- دسترسی شبکه مهاجم به پورت ۹۰۰۰ (یا پورت سفارشی) سرویس Nginx UI روی سرور هدف
- استفاده از نسخه آسیبپذیر Nginx UI (نسخههای ۲.۳.۵ و پایینتر)
- عدم اعمال پچ امنیتی (ارتقا به نسخه ۲.۳.۶ یا بالاتر) روی سیستم هدف
- فعال بودن سرویس MCP (به صورت پیشفرض فعال است)
- نبود محدودیت دسترسی مبتنی بر IP (عدم تنظیم IPوایتلیست) روی Nginx UI
- قرار داشتن رابط مدیریت Nginx UI در معرض اینترنت یا شبکه داخلی قابل دسترس برای مهاجم
- نبود سیستمهای تشخیص نفوذ (IDS/IPS) یا WAF مؤثر برای شناسایی الگوهای درخواست مخرب
رفتار مورد انتظار در حالت امن (Expected Secure Behavior)
- هر دو اندپوینت /mcp و /mcp_message باید توسط میانافزار AuthRequired() محافظت شوند
- میانافزار IPWhiteList() باید لیست خالی IP را به عنوان «رد همه آدرسها» تفسیر کند (Fail-Closed)
- تمامی درخواستهای ورودی به اندپوینتهای MCP، بدون توجه به نوع آن، باید احراز هویت شوند
- توابع مدیریت Nginx (مانند restart، reload، config modification) باید فقط به کاربران احراز هویتشده محدود شوند
- اصل کمترین دسترسی (Least Privilege) در طراحی و پیادهسازی سرویسها رعایت شود
- مستندات امنیتی Nginx UI به وضوح نسبت به خطرات پیکربندی پیشفرض و نحوه سختسازی آن هشدار دهند
- فرآیند توسعه نرمافزار باید شامل بررسیهای امنیتی خودکار (مانند SAST) برای جلوگیری از حذف تصادفی میانافزارها باشد
راهکارها و کاهش ریسک (Mitigation / Patch Guidance)
اقدامات فوری برای کاهش ریسک:
- بهروزرسانی فوری Nginx UI به نسخه ۲.۳.۶ یا بالاتر (که این آسیبپذیری در آن پچ شده است)
- در صورت عدم امکان بهروزرسانی فوری، مسدودسازی کامل دسترسی به اندپوینت /mcp_message در سطح WAF یا Reverse Proxy
- محدود کردن دسترسی شبکه به پورت ۹۰۰۰ (سرویس Nginx UI) تنها به آدرسهای IP معتبر با استفاده از فایروال
- قطع دسترسی اینترنت به سرویس Nginx UI در صورت عدم نیاز به مدیریت خارج از شبکه داخلی
- پایش مداوم لاگهای Nginx UI و Nginx برای شناسایی درخواستهای غیرمجاز به اندپوینت /mcp_message
- بازنشانی تمام sessionIDهای فعال و ریستارت سرویس Nginx UI پس از اعمال پچ
- اسکن سریع تمام استقرارهای Nginx UI برای شناسایی نمونههای آسیبپذیر
اقدامات کوتاهمدت / میانمدت برای کاهش ریسک:
- انجام اسکن کامل شبکه برای شناسایی تمام نمونههای Nginx UI در حال اجرا و بررسی نسخه آنها
- پیادهسازی مکانیزمهای تشخیص نفوذ (IDS/IPS) با قوانین اختصاصی برای شناسایی درخواستهای مخرب به اندپوینت /mcp_message
- فعالسازی و تقویت لاگبرداری تفصیلی از رفتارهای سرویس Nginx UI و ارسال آنها به سیستم SIEM
- آموزش تیمهای عملیاتی (Operations) در خصوص خطرات پیکربندی پیشفرض Nginx UI و نحوه هاردنینگ آن
- اجرای بازبینی امنیتی بر روی پیکربندی Nginx UI و اطمینان از اعمال IPوایتلیست مناسب
- استقرار سیستمهای هشداردهنده برای شناسایی تلاشهای مکرر برای دسترسی به اندپوینت /mcp_message
اقدامات بلندمدت برای کاهش ریسک:
- بازطراحی معماری مدیریت Nginx به گونهای که ابزارهای مدیریتی هرگز به طور مستقیم در معرض اینترنت قرار نگیرند
- استقرار راهکارهای خودکار بهروزرسانی امنیتی (Patch Management) برای اعمال سریع وصلههای امنیتی Nginx UI
- افزایش سطح آگاهی تیمهای توسعه و عملیات در خصوص خطرات Missing Authentication و نبود Fail-Closed Default
- پیادهسازی فرآیندهای منظم تست نفوذ (Penetration Testing) و ارزیابی امنیتی برای کشف زودهنگام آسیبپذیریهای مشابه در زیرساخت
- تدوین و اجرای سیاستهای هاردنینگ برای تمام مؤلفههای مدیریتی بر اساس راهنمای امنیتی رسمی
- استفاده از ابزارهای تحلیل کد ایستا (SAST) در چرخه CI/CD برای شناسایی الگوهای حذف تصادفی میانافزارهای امنیتی
تشخیص و مانیتورینگ (Detection & Monitoring)
نشانههای تلاش برای سوءاستفاده:
- وجود درخواستهای GET به آدرس /mcp بدون هدرهای احراز هویت (که منجر به دریافت sessionID میشود)
- وجود درخواستهای POST به آدرس /mcp_message حاوی payloadهای JSON-RPC با متدهایی مانند nginx_config_modify، restart_nginx یا reload_nginx
- مشاهده sessionIDهای متوالی و غیرعادی در لاگهای دسترسی
- تغییرات ناگهانی و غیرمنتظره در فایلهای پیکربندی Nginx (معمولاً در /etc/nginx/ یا مسیر مشخصشده در Nginx UI)
- افزایش ناگهانی ترافیک خروجی شبکه از سمت سرور Nginx به سمت آدرسهای IP ناشناس (که حاکی از هدایت ترافیک به سرور مهاجم است)
- وجود لاگهای خطای مرتبط با nginx: configuration file test failed در صورت بروز خطا در پیکربندی اینجکتی
- اجرا شدن پروسه های جدید با کاربر nginx که ارتباط واضحی با پروسه های عادی ندارند
منابع پیشنهادی برای مانیتورینگ و پایش:
- لاگهای دسترسی Nginx UI (معمولاً در خروجی استاندارد Docker یا فایلهای لاگ برنامه)
- لاگهای دسترسی و خطای Nginx (معمولاً در /var/log/nginx/access.log و /var/log/nginx/error.log)
- سیستمهای SIEM برای جمعآوری و تحلیل مرکزی لاگهای Nginx UI و Nginx
- راهکارهای NDR (Network Detection and Response) برای شناسایی ترافیک مشکوک به سمت پورت ۹۰۰۰
- سیستمهای نظارت بر یکپارچگی فایل (FIM) برای پایش تغییرات فایلهای پیکربندی Nginx
- ابزارهای اسکن آسیبپذیری مانند Nuclei با قالب اختصاصی CVE-2026-33032
- ابزارهای مدیریت اطلاعات امنیتی و رویدادها (SIEM) با قابلیت تحلیل رفتار کاربر (UEBA) برای شناسایی الگوهای غیرعادی دسترسی
واکنش به حادثه (Incident Response)
- ایزولهسازی فوری سرور Nginx آسیبدیده از شبکه جهت جلوگیری از حرکت جانبی مهاجم و ادامه نفوذ
- جمعآوری و حفظ لاگهای Nginx UI، Nginx و ترافیک شبکه مرتبط برای فارنزیک
- بازبینی فایلهای پیکربندی Nginx برای شناسایی بلوکهای سرور مخرب (مانند پراکسی معکوس به سرور مهاجم) و حذف آنها
- بازنشانی تمام sessionIDهای فعال و ریستارت سرویس Nginx و Nginx UI
- اعمال پچ امنیتی (ارتقا به نسخه ۲.۳.۶ یا بالاتر) و اصلاح پیکربندی Nginx UI
- بازبینی کلیدهای TLS خصوصی و رمزهای عبور ذخیرهشده در فایلهای پیکربندی Nginx و تغییر آنها در صورت افشا
- اسکن کامل شبکه برای شناسایی سایر سیستمهایی که ممکن است مهاجم از Nginx به آنها دسترسی یافته باشد
- مستندسازی کامل حادثه (زمان وقوع، نشانهها، اقدامات انجامشده، درسآموختهها) و گزارش به مدیریت ارشد و تیم واکنش سریع (CSIRT)
جریان حمله (Attack Flow)
در نمودار زیر(شکل ۱)، جریان کلی بهرهبرداری از این آسیبپذیری نشان داده شده است. در این سناریو، مهاجم با ارسال دو درخواست HTTP ساده (بدون احراز هویت) به اندپوینتهای MCP، ابتدا یک sessionID دریافت کرده و سپس با استفاده از آن، یک فایل پیکربندی جدید به Nginx تزریق کرده و سرویس را مجدداً بارگذاری میکند.

شکل 1: جریان اجرای آسیب پذیری
اثبات مفهوم (PoC) — کاملاً غیرمخرب
- آزمایشگاه تخصصی Vulnerbyte، این آسیبپذیری را در محیط ایزوله و کنترلشده با استفاده از نسخه آسیبپذیر بررسی و اجرا کرده است (شکل ۲).
- یک نمونه Nginx UI با پیکربندی پیشفرض روی پورت ۹۰۰۰ راهاندازی شده است (بدون IPوایتلیست)
- این اثبات مفهوم صرفاً توصیفی و آموزشی بوده و شامل تغییرات مخرب (نظیر بازنویسی فایلهای پیکربندی) نمیشود
- نتایج نشان میدهد که چگونه عدم اعمال میانافزار احراز هویت روی اندپوینت /mcp_message میتواند منجر به دسترسی کامل و بدون نیاز به احراز هویت به تمام ابزارهای مدیریت Nginx شود

شکل 2: اثبات اجرای آسیب پذیری
رفع مسئولیت
این گزارش صرفاً با هدف آموزش، تحلیل فنی و ارتقای امنیت سازمانی تهیه شده است. هرگونه استفاده مخرب یا خارج از چارچوبهای قانونی از محتوای آن ممنوع است.
منابع
https://www.cve.org/CVERecord?id=CVE-2026-33032
https://nvd.nist.gov/vuln/detail/CVE-2026-33032
https://cwe.mitre.org/data/definitions/306.html
https://github.com/0xJacky/nginx-ui/security/advisories/GHSA-h6c2-x2m2-mwhf
https://github.com/keraattin/CVE-2026-33032
https://github.com/Twinson333/cve-2026-33032-scanner
https://vuldb.com/cve/CVE-2026-33032
https://www.sentinelone.com/vulnerability-database/cve-2026-33032/
https://www.cyber.gc.ca/en/alerts-advisories/nginx-ui-security-advisory-av26-360
Nginx UI
CVE-2026-27944 & CVE-2026-33032 – Unauthenticated Access Leading to Full Service Takeover & Sensitive Data Exposure
CVE-2026-27944 – Unauthenticated MCP Endpoint Leading to Full Nginx Takeover
Affects
- Nginx UI
- Versions:
- ≤ 2.3.5
- Components:
- MCP (Model Context Protocol) integration
- Endpoints:
/mcp/mcp_message
Description
CVE-2026-27944 is a critical authentication bypass vulnerability in Nginx UI.
The application exposes two MCP-related endpoints:
/mcp(protected by authentication + IP whitelist)/mcp_message(protected only by IP whitelist)
The issue arises because:
- The
/mcp_messageendpoint does not enforce authentication - The IP whitelist defaults to empty, which is interpreted as allow all
This results in unauthenticated access to MCP functionality, allowing attackers to invoke privileged operations intended only for trusted users.
Through this interface, attackers can:
- Restart Nginx,
- Modify or delete configuration files,
- Trigger configuration reloads.
Attack Vector
Primary Attack Vector:
Remote / Unauthenticated (HTTP Endpoint Exposure)
Attack Scenario:
- An attacker discovers a publicly accessible Nginx UI instance.
- The attacker sends HTTP requests to the
/mcp_messageendpoint. - Due to lack of authentication and permissive IP whitelist:
- The request is accepted.
- The attacker invokes MCP tools via crafted requests.
- The attacker manipulates Nginx configuration and service behavior.
Key Characteristics:
- No authentication required.
- No user interaction required.
- Exploitable over the network via HTTP.
- Relies on misconfigured access control logic.
Conditions Increasing Risk:
- Public exposure of Nginx UI.
- Default configuration unchanged.
- Lack of reverse proxy or firewall protections.
Impact
Successful exploitation allows:
- Full control over Nginx configuration,
- Service disruption or shutdown,
- Traffic redirection or interception,
- Deployment of malicious configurations.
This represents a complete service takeover risk.
Observed Exploitation & Threat Activity
- No confirmed widespread exploitation at disclosure.
- High likelihood of rapid exploitation due to:
- trivial access,
- high impact,
- lack of authentication.
Severity & Metrics
- CVSS v3.1: Critical (9.8)
- Attack Vector: Network
- Privileges Required: None
- User Interaction: None
Relevant CWE:
- CWE-306 – Missing Authentication
- CWE-284 – Improper Access Control
Patch & Vendor Status
- No official patch available at time of publication.
Mitigation & Remediation
Immediate Actions
- Restrict access to Nginx UI via:
- firewall rules,
- VPN,
- IP allowlisting.
- Disable MCP functionality if not required.
Defensive Measures
- Place Nginx UI behind authentication (reverse proxy).
- Monitor for unauthorized configuration changes.
Detection & Hunting
Indicators:
- Requests to
/mcp_messagefrom unknown sources. - Unexpected Nginx restarts or config changes.
CVE-2026-33032 – Unauthenticated Backup Disclosure & Decryption Key Exposure
Affects
- Nginx UI
- Versions:
- < 2.3.3
- Endpoint:
/api/backup
Description
CVE-2026-33032 is a critical information disclosure vulnerability in Nginx UI.
The /api/backup endpoint:
- Is accessible without authentication
- Returns a full system backup
- Includes a response header:
X-Backup-Securitycontaining the decryption key
This allows attackers to:
- Download the backup,
- Immediately decrypt it,
- Access sensitive system data.
Exposed data may include:
- User credentials,
- Session tokens,
- SSL private keys,
- Nginx configurations.
Attack Vector
Primary Attack Vector:
Remote / Unauthenticated (HTTP Endpoint Exposure)
Attack Scenario:
- An attacker identifies an exposed Nginx UI instance.
- The attacker sends a request to
/api/backup. - The server responds with:
- encrypted backup file,
- decryption key in HTTP header.
- The attacker retrieves and decrypts the backup.
- Sensitive data is extracted.
Key Characteristics:
- No authentication required.
- No user interaction required.
- Direct data exposure via HTTP response.
Conditions Increasing Risk:
- Publicly exposed Nginx UI.
- Backup endpoint enabled.
- Lack of monitoring or access restrictions.
Impact
Successful exploitation allows:
- Full disclosure of sensitive system data,
- Credential compromise,
- SSL key exposure (enabling MITM attacks),
- Follow-on attacks using recovered secrets.
This vulnerability results in complete confidentiality compromise.
Observed Exploitation & Threat Activity
- No confirmed widespread exploitation at disclosure.
- High risk due to:
- trivial exploitation,
- immediate data access,
- sensitive material exposure.
Severity & Metrics
- CVSS v3.1: Critical (9.8)
- Attack Vector: Network
- Privileges Required: None
- User Interaction: None
Relevant CWE:
- CWE-522 – Insufficiently Protected Credentials
- CWE-200 – Information Exposure
- CWE-306 – Missing Authentication
Patch & Vendor Status
- Fixed in version 2.3.3
Mitigation & Remediation
Immediate Actions
- Upgrade to Nginx UI 2.3.3 or later.
- Restrict access to
/api/backup.
Defensive Measures
- Block public access to management interfaces.
- Rotate all exposed credentials and keys.
Detection & Hunting
Indicators:
- Requests to
/api/backup. - Unusual data transfer volumes.
- Unauthorized access logs.
Combined Risk Overview
| CVE | Type | Impact | Auth Required | Severity |
|---|---|---|---|---|
| CVE-2026-27944 | Auth bypass → RCE-like control | Full Nginx takeover | No | Critical |
| CVE-2026-33032 | Info disclosure | Full data exposure | No | Critical |
Post-Incident Response
If exploitation is suspected:
- Isolate affected system.
- Rotate all credentials and keys.
- Restore configurations from trusted sources.
- Audit logs for attacker activity.
- Rebuild system if compromise is confirmed.
References
- Nginx UI Security Advisory
- NVD – CVE-2026-27944
- NVD – CVE-2026-33032
- CWE-306: Missing Authentication
بررسی آماری آسیب پذیری CVE-2026-33032 در کشور ایران
محصول آسیب پذیر: nginx-ui (نسخههای 2.3.5 و پیشین)
- میزان استفاده در ایران بر اساس سایت های آمار مرتبط با محصول
بر اساس گزارشهای آماری آوریل ۲۰۲۶، وبسرور Nginx با سهم ۴۲ درصدی، محبوبترین فناوری در میان وبسرورهای دامنه .ir است. Apache با ۲۰ درصد در رتبه دوم و LiteSpeed با ۱۹ درصد در رتبه سوم قرار دارند. این آمار نشاندهنده نفوذ عمیق Nginx در زیرساخت وب ایران است. همچنین در حوزه Reverse Proxy، سهم Nginx تقریباً ۱۰۰ درصد بوده و تقریباً تمام وبسایتهای ایرانی که از پروکسی معکوس استفاده میکنند، بر پایه Nginx اجرا میشوند. با توجه به اینکه nginx-ui به عنوان یک رابط کاربری تحت وب برای مدیریت Nginx طراحی شده، گستردگی استفاده از Nginx در ایران به معنای وجود حجم قابل توجهی از نمونههای nginx-ui در اکوسیستم داخلی است.
- میزان استفاده در ایران بر اساس موتورهای جستجو
تعداد در زمان نگارش گزارش
| موتور جستجو | Dork | تعداد |
| site:.ir “nginx” | 44000 | |
| “nginx” | 31000000 | |
| site:.ir “nginx” “management” | 11000 |
- وجود نمایندگی در کشور ایران
پروژه nginx-ui یک پروژه متنباز و غیرتجاری است که توسط تیم کوچکی از توسعهدهندگان مستقل در بستر GitHub مدیریت میشود و هیچ دفتر رسمی، نمایندگی یا شعبه تجاری در ایران ندارد. دسترسی به این ابزار و پشتیبانی مرتبط با آن صرفاً از طریق مخازن آنلاین (مانند GitHub) و مستندات عمومی امکانپذیر است.
- میزان استفاده بر اساس گزارشات تحقیقات بازار برای این محصول در ایران
وبسرور Nginx با سهم ۴۲ درصدی از کل وبسرورهای دامنه .ir، پرمصرفترین فناوری در این حوزه است. همچنین در زمینه پروکسی معکوس (Reverse Proxy)، سهم Nginx نزدیک به ۱۰۰ درصد بوده و عملاً بازار ایران را در اختیار دارد. این آمار نشان میدهد که Nginx به عنوان قلب زیرساخت وب ایران شناخته میشود.
nginx-ui
هرچند آمار دقیقی از تعداد نصبهای nginx-ui در ایران در دست نیست، اما تخمین زده میشود هزاران نمونه از این ابزار مدیریتی روی وبسرورهای ایرانی نصب شده باشد.
- منابع
- https://nvd.nist.gov/vuln/detail/CVE-2026-33032
- https://www.aguko.com/cat/web-servers/ir
- https://www.aguko.com/cat/reverse-proxy/ir
- https://www.bleepingcomputer.com/news/security/critical-nginx-ui-auth-bypass-flaw-now-actively-exploited-in-the-wild/
- https://github.com/0xJacky/nginx-ui
- https://www.shodan.io/