یک آسیب‌پذیری بحرانی در OpenSSL کشف‌شده است که بیش از ۱۱ میلیون وب‌سایت و سرویس ایمیل که توسط پروتکل قدیمی و منسوخ لایه انتقال یعنی SSLv2 حفاظت می‌شوند را در معرض حمله قرار می‌دهد.

به گفته‌ی تیم امنیتی که از پژوهشگران ۱۵ دانشگاه و جامعه‌ی امنیت اطلاعات تشکیل‌شده، این حفره‌ی امنیتی بحرانی OpenSSL که با عنوان DROWN نام‌گذاری شده است، یک حمله‌ی ارزان‌قیمت محسوب می‌شود که می‌تواند اطلاعات حساس ارتباطات HTTPS شامل کلمه عبور و اطلاعات حساب‌های بانکی و… را واضح کند. نکته‌ی دیگر این است که این حمله می‌تواند در عرض چند ساعت و حتی در بعضی موارد بدون درنگ انجام شود.

ما این حمله را در بین نسخه‌های متفاوت OpenSSL که به CVE-2016-0703 آسیب‌پذیر هستند، در کمتر از یک دقیقه با استفاده از یک PC انجام داده‌ایم؛ حتی نوع تعمیم‌یافته‌ی این حمله برای سرویس‌دهنده‌های SSLv2 ای که این آسیب‌پذیری مشخص را هم ندارند، انجام‌پذیر است و می‌تواند ظرف کمتر از ۸ ساعت با هزینه‌ی ۴۴۰ دلار انجام پذیرد.

حمله‌ی DROWN چیست و چگونه از SSLv2 برای حمله به TLS استفاده می‌کند؟

واژه‌ی DROWN مخفف کلمات “Decrypting RSA with Obsolete and Weakened eNcryption” است.

DROWN یک حمله‌ی بین پروتکلی است که از ضعف پیاده‌سازی SSLv2 استفاده می‌کند و می‌تواند نشست‌های TLS به‌دست‌آمده از کاربران را به‌صورت غیرفعال ترجمه کند.

درحالی‌که در نسخه‌های اخیر به‌صورت پیش‌فرض اجازه‌ی استفاده از SSLv2 داده نمی‌شود، گاهی اوقات مدیران به‌منظور بهبود کارایی برنامه به‌صورت ناخواسته این تنظیمات را تغییر می‌دهند.

پژوهشگران امنیتی اعلام کرده‌اند: “اگر گواهی سایت شما یا کلید آن بر سرویس‌دهنده‌ی وبی که از SSLv2 پشتیبانی کند وجود داشته باشد یا بر روی سرویس‌دهنده‌های دیگری مانند سرویس‌دهنده ایمیل SMTP,IMAP, POP و یا سرویس‌دهنده‌های HTTPS ثانویه‌ که برای برخی برنامه‌های وب استفاده می‌شوند وجود داشته باشد، شما در معرض خطر قرار دارید.”

حمله‌ی DROWN به مهاجم اجازه می‌دهد که با ارسال بسته‌های خاصی به سرویس‌دهنده و یا سرویس‌دهنده‌های دیگری که همان گواهی در آن‌ها مشترک باشد، یک حمله‌ی موفق Man in the Middle را علیه ارتباطات HTTPS انجام دهد.

DROWN

میزان خطر حمله‌ی DROWN

بیش از ۳۳ درصد سرویس‌دهنده‌های HTTPS نسبت به حمله‌ی DROWN آسیب‌پذیر هستند. این حمله حدود ۱۱٫۵ میلیون سرویس‌دهنده را در سراسر دنیا در معرض خطر قرار داده است. برخی از سایت‌های برتر Alexa مانند Yahoo ,Alibaba ,Weibo ,Sina ,BuzzFeed ,Flicker, 4Shared, Samsung نسبت به حمله‌ی DROWN آسیب‌پذیر هستند.

علاوه بر پیاده‌سازی منبع باز OpenSSL، محصولات Microsft IIS 7 و نسخه‌های قدیمی‌تر آن و نسخه‌های ۳٫۱۳ و قدیمی‌تر کتابخانه رمزنگاری Network Security Services(NSS) موجود در بسیاری از سرویس‌دهنده‌ها نیز نسبت به این حمله آسیب‌پذیر هستند.

 چک کردن آسیب‌پذیری DROWN

از طریق وب‌سایت DROWN attack test site می‌توانید آسیب‌پذیری وب‌سایت‌ها نسبت به DROWN را بررسی کنید.

خبر خوب اینکه پژوهشگران، این آسیب‌پذیری را کشف کرده‌اند و یک وصله برای رفع آن در به‌روزرسانی جدید OpenSSL ارائه‌شده است و خبر بد اینکه حمله‌ی DROWN در زمان کمتر از یک دقیقه می‌تواند بهره‌برداری ‌شود و اکنون‌که این باگ منتشرشده می‌تواند توسط هکرها برای حمله به سرویس‌دهنده‌ها مورداستفاده قرار بگیرد.

حفاظت در برابر حمله

به کاربران OpenSSL 1.0.2 قویاً توصیه می‌شود که نسخه‌ی خود را به نسخه‌ی OpenSSL 1.0.2g ارتقا دهند و کاربران OpenSSL 1.0.1 نیز توصیه می‌شوند که به نسخه‌ی OpenSSL 1.0.1s ارتقا دهند؛ و اگر از نسخه‌ی دیگری از OpenSSL برای امنیت استفاده می‌کنید، بهتر است از نسخه‌های ذکرشده در بالا استفاده کنید.

برای محافظت از خودتان در برابر حمله‌ی DROWN باید مطمئن شوید که SSLv2 غیرفعال است و همچنین مطمئن شوید که کلید خصوصی شما در سرویس‌دهنده‌های دیگری که از SSLv2 استفاده می‌کنند وجود نداشته باشد.

کسانی که به حمله‌ی DROWN آسیب‌پذیر هستند الزامی به دریافت گواهی دیجیتال جدید ندارند اما بهتر است برای جلوگیری از خطرات بعدی، این کار را انجام دهند.

از فایروال برای فیلتر کردن ترافیک SSLv2 استفاده کنید. از آنجایی که این حمله نیاز به حدود ۱۰۰۰ دست تکانی SSL دارد، مدیران شبکه می‌توانند با لاگ ها را برای یافتن تلاش‌های تکراری ایجاد ارتباط نظارت کنند. البته اطلاعات موردنیاز برای انجام حمله از طریق man in the middle و یا سایر حملات نیز به دست می‌آیند.

منابع

http://thehackernews.com/2016/03/drown-attack-openssl-vulnerability.html

https://www.kb.cert.org/vuls/id/583776