حمله D(HE)at (نقص 20 ساله در پروتکل دیفی هلمن؛ گرمای بیش از حد CPU )

حمله D(HE)at (نقص 20 ساله در پروتکل دیفی هلمن؛ گرمای بیش از حد CPU )

تاریخ ایجاد

محققان نوع جدیدی از حمله انکار سرویس (DoS) را کشف کرده‌‏اند که به عنوان حمله D(HE)at شناخته می شود. این حمله از نیازهای محاسباتی پروتکل توافق کلید دیفی هلمن، به ویژه نوع زودگذر آن (DHE) با کمترین تلاش مهاجم برای غلبه بر سرورها بهره‌برداری می‏کند.
پروتکل توافق کلید دیفی هلمن در یک کانال ناامن میان دو یا بیش‌‌‌‌‌‌‌‌‌تر موجودیت به منظور توافق طرفین برای رسیدن به یک کلید مشترک صورت می‌‌‌‌‌‌‌‌‌گیرد. موجودیت‌‌‌‌‌‌‌‌‌ها بعد از ساخت این کلید مشترک، از آن برای رمزگذاری و رمزگشایی پیام‌‌‌‌‌‌‌‌‌های مبادله شده خود استفاده می‌‌‌‌‌‌‌‌‌کنند.
این حمله به دلیل توانایی آن در گرم کردن بیش از حد CPU با وادار کردن قربانی به انجام محاسبات سنگین توان ماژولار است که در مبادله کلید Diffie-Hellman در پروتکل‌های رمزنگاری مانند  TLS، SSH، IPsec  و OpenVPN  استفاده می‌شود.

در شرایط عادی، موجودیت‌‌‌‌‌‌‌‌‌های پروتکل توافق کلید دیفی هلمن عملیات محاسباتی مشابهی انجام می‌‌‌‌‌‌‌‌‌دهند.

شکل1: پروتکل توافق کلید دیفی-هلمن


طبق شکل 1، موجودیت‌‌‌‌‌‌‌‌‌های آلیس و باب هرکدام دو عملیات توان‌‌‌‌‌‌‌‌‌رسانی انجام می‌‌‌‌‌‌‌‌‌دهند. حمله D (HE)at زمانی رخ می‌‌‌‌‌‌‌‌‌دهد که موجودیتِ شروع کننده پروتکل (در این‌‌‌‌‌‌‌‌‌جا باب)، به جای محاسبه مقدار A، یک مقدار تصادفی برای آلیس ارسال کند. در این صورت باب(بدخواه) هیچ عملیات محاسباتی انجام نخواهد داد اما آلیس(قربانی) دو بار عملیات توان‌‌‌‌‌‌‌‌‌رسانی انجام می‌‌‌‌‌‌‌‌‌دهد. با تکرار این کار، آلیس بار محاسباتی زیادی متحمل خواهد شد.

شکل2: نمونه حمله D (HE)at در پروتکل TLS1.3 یا SSH


طبق شکل 2، کلاینت مخرب هیچ محاسبه‌‌‌‌‌‌‌‌‌ای انجام نمی‌‌‌‌‌‌‌‌‌دهد اما سرور قربانی دو عملیات توان‌‌‌‌‌‌‌‌‌رسانی انجام می‌‌‌‌‌‌‌‌‌دهد.
برخی موارد این حمله را تشدید می‌‌‌‌‌‌‌‌‌کند که در ادامه به آن اشاره شده است:
•    طول توان: هرچه مقدار عددی که در توان قرار می‌‌‌‌‌‌‌‌‌گیرد بزرگ‌‌‌‌‌‌‌‌‌تر باشد مسلما توان محاسباتی بیش‏تری لازم است. برخی کتابخانه‌‌‌‌‌‌‌‌‌های رمزنگاری از نماهای طولانی استفاده می‌‌‌‌‌‌‌‌‌کنند که منجر به بار محاسباتی بیش‌‌‌‌‌‌‌‌‌تر می‌‌‌‌‌‌‌‌‌شود. (CVE-2022-40735)
•    اعتبارسنجی کلیدعمومی: برای جلوگیری از حملات محدود کردن زیرگروه کوچک، سرورها باید مرتبه کلید عمومی را تایید کنند. با این حال برخی کتابخانه‌‌‌‌‌‌‌‌‌ها این اعتبار سنجی را بدون توجه به استفاده از یک گروه اول امن انجام می‌‌‌‌‌‌‌‌‌دهند. (CVE-2024-41996)
•    اندازه پارامترها: برخی از کتابخانه‌‌‌‌‌‌‌‌‌ها مانند OpenSSL به طور پیش‌‌‌‌‌‌‌‌‌فرض بزرگترین اندازه پارامتر موجود را دارند که اگر به درستی توسط سرورهای برنامه پیکربندی نشوند، می‌‌‌‌‌‌‌‌‌تواند مورد بهره‌برداری قرار بگیرد.
روش مقابله با حمله D(HE)at
•    به‌‌‌‌‌‌‌‌‌روزسانی پروتکل‌‌‌‌‌‌‌‌‌ها: برای مثال استفاده از پروتکل جدید TLS 1.3
•    پیکربندی کتابخانه‌‌‌‌‌‌‌‌‌ها: تنظیمات کتابخانه‌‌‌‌‌‌‌‌‌ها برای استفاده از نماهای کوچک‌‌‌‌‌‌‌‌‌تر و اندازه پارامترهای کوتاه‌‌‌‌‌‌‌‌‌تر
•    پیاده‌‌‌‌‌‌‌‌‌سازی محدودیت نرخ: محدودیت نرخ بر روی تعداد درخواست Handshake به سرور از طرف یک کلاینت مشخص
•    مانیتورینگ و هشداردهی: راه‌‌‌‌‌‌‌‌‌اندازی سیستم‌‌‌‌‌‌‌‌‌های مانیتورینگ برای تشخیص الگوهای ناهنجار مربوط به درخواست‌‌‌‌‌‌‌‌‌های Handshake که منجر به حمله خواهند شد.

منبع خبر:


https://cybersecuritynews.com/dheat-attack