خانه » CVE-2025-2704

CVE-2025-2704

OpenVPN TLS-crypt-v2 Server Mode Remote DoS via Corrupted Packet Replay in Early Handshake

توسط Vulnerbyte Alerts
6 بازدید
هشدار سایبری CVE-2025-2704

چکیده

یک آسیب‌پذیری در سرورهای OpenVPN نسخه 2.6.1 تا 2.6.13 هنگام فعال‌بودن TLS‑crypt‑v2 شناسایی شده است. مهاجمان از راه دور می‌توانند با دستکاری و بازپخش (replay) بسته‌ها در مرحله اولیه تبادل کلید (handshake) سرور را وادار به اجرای ASSERT()کنند؛ در نتیجه فرآیند سرویس متوقف شده و انکار سرویس (DoS) رخ می دهد.

توضیحات

آسیب‌پذیری CVE-2025-2704 ناشی از عدم بررسی مناسب شرایط غیرعادی یا استثنایی مطابق با CWE-754 در مدیریت بسته‌های P_CONTROL_WKC_V1 (نوعی بسته کنترل برای تنظیم کلیدهای TLS-crypt-v2) در سرور OpenVPN است.

هنگامی که سرور یک بسته P_CONTROL_WKC_V1 معتبر دریافت می‌کند، کلیدهای TLS-crypt-v2 را تنظیم می‌نماید؛ اما به دلیل یک غفلت کوچک، اگر بسته دیگری از همان نوع دریافت شود، سرور تلاش می‌کند تنظیم مجدد کلیدها را انجام دهد. در محیط‌های معمولی، این مسئله مشکلی ایجاد نمی کند اما در سناریوهایی که بسته‌ها تکراری و دستکاری‌شده هستند، این فرآیند به حالت غیرمنتظره‌ای می‌رسد و سرور با اجرای ASSERT() (تابعی برای توقف برنامه در صورت نقض فرضیات) متوقف می‌شود که در عمل منجر به انکار سرویس از راه دور می گردد.

برای بهره‌برداری، مهاجم به یک کلید معتبر TLS-crypt-v2 کلاینت نیاز دارد یا باید تبادل کلید معتبر را از طریق مشاهده شبکه (مانند با ابزارهای packet sniffing) استخراج کند. حمله از راه دور و بدون نیاز به احراز هویت اضافی قابل انجام بوده اما تنها در مرحله اولیه تبادل کلید (فاز اولیه اتصال TLS، جایی که کلیدها مبادله می‌شوند) مؤثر است. پیامد آسیب‌پذیری اختلال کامل در دسترسی به VPN است که می‌تواند عملیات سازمانی را مختل کند. این ضعف کلاینت‌های OpenVPN را تحت تأثیر قرار نمی‌دهد و تنها سرورهای با گزینه tls-crypt-v2 فعال آسیب پذیر هستند.

بهره‌برداری از این ضعف به‌سادگی قابل خودکارسازی است؛ مهاجم می‌تواند با اسکریپت‌ها یا ابزارهای خودکار مانند Scapy (ابزاری برای ساخت و ارسال بسته‌های سفارشی شبکه)، از راه دور و بدون تعامل کاربر، بسته‌های معتبر را دستکاری کند (مانند تغییر فیلدهای پیلود) و آن‌ها را در فاز تبادل کلید بازپخش کند. ترکیب خاصی از بسته‌های معتبر و دستکاری شده مانند تکرار P_CONTROL_WKC_V1 با تغییرات جزئی برای فعال‌سازی ضعف کافی است.

این آسیب‌پذیری با انتشار نسخه 2.6.14 به‌طور کامل پچ شده است که شامل اصلاح در مدیریت بسته‌های تکراری WKC_V1 می‌شود. همچنین، این پچ در OpenVPN Access Server در نسخه‌های 2.14.3 و بالاتر اعمال شده است.

CVSS

Score Severity Version Vector String
7.5 HIGH 3.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

لیست محصولات آسیب پذیر

Versions Product
affected from 2.6.1 through 2.6.13 OpenVPN

لیست محصولات بروز شده

Versions Product
2.6.14 OpenVPN

استفاده محصول در ایران

در این جدول، تعداد صفحات ایندکس‌شده در گوگل با دامنه .ir که OpenVPN را ذکر کرده اند، ثبت شده است. این داده صرفاً برای برآورد تقریبی حضور محصولات در وب ایران استفاده شده و نمایانگر میزان نصب دقیق و استفاده واقعی نیست.

Approx. Usage in .ir Domain via Google

(Total Pages)

Search Query (Dork) Product
42,700 site:.ir “OpenVPN” OpenVPN

نتیجه گیری

این آسیب‌پذیری با شدت بالا در سرورهای OpenVPN، ریسک انکار سرویس از طریق دستکاری بسته‌های TLS-crypt-v2 در مرحله تبادل کلید را افزایش می‌دهد و می‌تواند دسترسی کاربران معتبر به شبکه‌های VPN را مختل کند. اجرای اقدامات زیر برای جلوگیری از بهره‌برداری و کاهش ریسک ضروری است:

  • به‌روزرسانی فوری: سرورهای OpenVPN Community Edition را به نسخه 2.6.14 یا بالاتر و Access Server را به نسخه 2.14.3 یا بالاتر به روزرسانی کنید. پچ‌ها در وب‌سایت رسمی OpenVPN و مخزن GitHub موجود هستند.
  • غیرفعال‌سازی موقت: تا زمان به‌روزرسانی، گزینه tls-crypt-v2 را در فایل‌های پیکربندی سرور (conf) کامنت یا حذف نمایید تا بدون تأثیر بر عملکرد کلی VPN، سطح ریسک کاهش یابد.
  • نظارت بر ترافیک: از ابزارهایی مانند Wireshark یا Snort (سیستم تشخیص نفوذ مبتنی بر قوانین) برای مانیتورینگ بسته‌های مشکوک در فاز تبادل کلید استفاده کرده و الگوهای دستکاری یا بازپخش بسته ها را با قوانین سفارشی مسدود کنید.
  • فیلترینگ شبکه: دسترسی به پورت‌های OpenVPN (معمولاً UDP 1194) را با فایروال‌هایی مانند iptables یا pfSense محدود کنید و محدودیت نرخ درخواست (rate limiting) را برای جلوگیری از DoS اعمال نمایید.
  • ایزوله‌سازی سرور: سرورهای VPN را در محیط‌های ایزوله مانند ماشین های مجازی یا کانتینرهای Docker اجرا کنید و از خوشه‌بندی پشتیبان (failover clustering) برای حفظ در دسترس‌پذیری در صورت کرش استفاده نمایید.
  • تست امنیتی: سرورها را با ابزارهایی مانند OpenVAS یا Nessus اسکن کنید تا نسخه‌های آسیب‌پذیر شناسایی شوند و روش Fuzzing (تزریق بسته‌های تصادفی) را برای ارزیابی مقاومت تبادل کلید اعمال نمایید.
  • آموزش مدیران: تیم‌های IT را در مورد ریسک‌های DoS در پروتکل‌های VPN و اهمیت به‌روزرسانی‌های امنیتی OpenVPN آموزش دهید.

اجرای این اقدامات، به‌خصوص به‌روزرسانی سریع و نظارت مستمر بر ترافیک، ریسک بهره‌برداری از این آسیب‌پذیری را به‌طور چشمگیری کاهش داده و امنیت اتصالات VPN مبتنی بر OpenVPN را به‌صورت قابل‌توجهی افزایش می‌دهد.

امکان استفاده در تاکتیک های Mitre Attack

Initial Access (TA0001)
مهاجم بسته‌های TLS‑crypt‑v2 ساختگی یا از قبل ضبط‌شده (replayed) را به سرویس OpenVPN که پورت‌های UDP/TCP مربوطه باز هستند و tls‑crypt‑v2 فعال است ارسال می‌کند

Defense Evasion (TA0005)
بهره‌بردار با استفاده از بسته‌های replay و تغییرات ظاهراً کوچک در محتوای بسته‌ها (tampering) قادر است الگوهای تشخیص ساده را دور بزند و رفتار غیرمعمول را به‌عنوان ترافیک عادی پنهان کند

Impact (TA0040)
اثرات فنی اصلی شامل از‌دست‌رفتن کامل سرویس VPN (Availability: High)، اختلال در عملیات کاربران و کسب‌وکار و بالقوه افشای جزئی metadata در شرایط خاص است

منابع

  1. https://www.cve.org/CVERecord?id=CVE-2025-2704
  2. https://www.cvedetails.com/cve/CVE-2025-2704/
  3. https://community.openvpn.net/openvpn/wiki/CVE-2025-2704
  4. https://vulmon.com/vulnerabilitydetails?qid=CVE-2025-2704
  5. https://vuldb.com/?id.303087
  6. https://www.mail-archive.com/openvpn-announce@lists.sourceforge.net/msg00142.html
  7. http://www.openwall.com/lists/oss-security/2025/04/02/5
  8. https://nvd.nist.gov/vuln/detail/CVE-2025-2704
  9. https://cwe.mitre.org/data/definitions/754.html

همچنین ممکن است دوست داشته باشید

پیام بگذارید

send
سوالی دارید؟
می تونید از من بپرسید 👋 ×