طی سال گذشته شاهد کشف چند آسیبپذیری خطرناک بودیم که کل فضای سایبری را تحتالشعاع خود قرار داد و جنجال زیادی به راه انداخت. این بار نیز پروتکلهای رمزنگاری جنجال به پا کرده و باز هم شاهد یک باگ امنیتی خطرناک از جنس ssl/tls هستیم. در واقع بعد از باگheartbleed که سال گذشته فضای مجازی را تحت تاثیر قرار داد و موجب افشای اطلاعاتی وسیعی شد، این بار شاهد یک باگ دیگر در این پروتکل رمزنگاری هستیم که البته مربوط به20 سال گذشته است، اما بهتازگی کشف شده است. اما قبل از پرداختن به این باگ مختصری در مورد معماری این پروتکل امنیتی توضیح میدهیم و سپس به شرح باگ می پردازیم.
شبکه از لایههای متعددی تشکیل شده و هر پروتکل و سیستم رمزنگاری لایهای خاص را تحت تاثیر قرار میدهد.
برای برقراری امنیت در سرویسهای اینترنتی در هر سه لایه Network, Transport و Application امکان رمزنگاری اطلاعات وجود داشته؛ برای مثال پروتکل IP/Sec در لایه Network، پروتکل TLS در لایه Transport و پروتکل PGP در لایه Application رمزنگاری اطلاعات صورت میگیرد.
این شبکه دارای چند نسخه بوده که در حال حاضر آخرین نسخه آن تیاسال است.
نسل جدید این پروتکل (TLS) Transport Layer Security نام دارد. در واقع TLS بعد از SSL 3version معرفی شد که در حال حاضر نسخه آن 2/1 است.
پروتکل SSL بهوسیله موسسه Netscape طراحی شده و TLS امروزه دارای استاندارد RFC5246 توسط بنیاد IETF است. (در واقع TLS v1.0 همان SSL v3.1 بود که تغییر نام داد.)
پروتکلهای TLSو SSL، پروتکلهای امنیتی استفاده شده در لایه انتقال شبکهها هستند و در شبکههای سیار و سیمی میتوانند پیادهسازی شوند. این پروتکل یک ارتباط انتها به انتها را رمزنگاری میکند. هدف از تعریف و اجرای TLS در لایه انتقال، ایمن کردن تراکنشهای ارتباطی در لایه کاربرد است. این پروتکل امنیتی میتواند در کنار پروتکلهای ارتباطی، همانندHTTP،FTP،SMTP،NNTP مورد استفاده قرار گیرد. برای مثال، مفهوم HTTPS یادآور این مطلب است که در ارتباط با HTTP از پروتکل ارتباطی TLS در لایه انتقال بهره بردهایم.
به این ترتیب پروتکلهای لایه بالاتر به همراه این پروتکل یک ارتباط ایمن را به همراه مکانیزمهای موجود در TLS پدید میآورد. مکانیزمهای درنظر گرفتهشده این پروتکل، شامل رمزنگاری به منظور ایجاد محرمانگی در ارتباط و الگوریتمهای صحت به منظور ایجاد یکپارچگی و تضمین حفظ صحت داده در روند انتقال آن به مقصد است.
علاوه بر مکانیزمهای گفته شده، تایید هویت نهادهایی که قصد شرکت در ارتباط را دارند، نیز در این پروتکل منظور شده است.
پروتکل TLS تایید هویت یکطرفه یا دوطرفه (تایید هویت کاربر به شبکه و تایید هویت شبکه به کاربر) را برای دسترسی رمزشده به شبکهها فراهم میکند. این عمل با استفاده از الگوریتمی صورت میگیرد که کاربر و شبکه، هردو در مورد آن توافق کردهاند.
بخشهایی همچون حفاظت از بسته داده، محدود و بهینه کردن اندازه بسته و انتخاب یک الگوریتم سریع، به استانداردTLS افزوده شده است. کیفیت ارتباط بین دو طرف بستگی به نوع الگوریتمهای توافق شده بین آنها دارد. این توافق قبل از اجرای TLS، و با تبادل پیام بین دو طرف بهوجود میآید.
شرح آسیبپذیری
این باگ پروتکل TLS را تحت تاثیر قرار داده که اجازه میدهد تا هکر حمله شنود اطلاعات یا man-in-the-middle را در مرورگر و در سرور اجرا کرده و از این آسیبپذیری رمزنگاری برای اجرای حملات بروتفورس بهرهبرداری کند. این حفره نیز مانند هارتبلید خطرناک است. پس از منتشر شدن باگ LogJam، مرورگرها در حال بررسی و اصلاح این آسیبپذیری هستند؛ اما تا برطرفسازی کامل آن، بسیاری از سرورها نسبت به این باگ خطرناک، آسیبپذیر میمانند. در واقع این باگ از طریق مرورگر و فریب کاربر عمل میکند.
LogJam، به نفوذگر امکان میدهد هدف را به این شکل فریب دهد که در ظاهر با یک سرور امن که قصد استفاده از یک کلید کوتاه را دارد، در ارتباط است. این اقدام موجب تضعیف ارتباط و تسریع در فرایند رمزگشایی ارتباط میشود. حدود ۲۰ سال است که باگ LogJam در پروتکلTLSپنهان مانده و بهتازگی کشف شده است.
چه افرادی در معرض خطرند؟
باید گفت همه افرادی که از مرورگرهای بهروز نشده استفاده میکنند، در معرض خطر بوده و همچنین سایتهایی که از پروتکلhttps استفاده میکنند نیز در معرض آسیب هستند. در ضمن این باگ فقط روی نسخه بینالمللی TLS عمل میکند که از کلیدهای 512 بیتی استفاده میکنند و روی نسخه آمریکایی که از طول 1024 و بیشتر استفاده میکنند تاثیری ندارد. در واقع آمریکا عمدا از انتشار تکنولوژی 1024 و بیشتر در دنیا ممانعت بهعمل آورد تا تنها خود توان استفاده از آن را داشته باشد. در دهه۱۹۹۰، دولت آمریکا سعی داشت تا از فروش محصولاتی که از فناوریهای پیشرفته رمزنگاری استفاده میکنند، جلوگیری کند. از طرف دیگر، تولیدکنندگان چنین محصولاتی مایل بودند به بازارهای جهانی وارد شوند. برای همین قانونی وضع شد که میزان پیچیدگی رمزنگاری را برای محصولات صادراتی تعیین میکرد. به این میزان اصطلاحا Export-Grade گفته میشد. طبیعی بود Export-Grade برای رمزنگاری در محصولات صادراتی باید پایینتر و ضعیفتر از روش رمزنگاری محصولاتی باشد که در داخل خاک آمریکا مصرف میشد.
به خاطر قانون Export-Grade بسیاری از تولیدکنندگان نرمافزار به افزودن گزینهای در محصولات خود اقدام کردند تا بتوانند نسخههای وطنی و صادراتی از تولیدات خود داشته باشند. پس از لغو این قانون، این گزینه از محصولات نرمافزاری حذف نشد و تنها غیرفعال باقی ماند. از جمله این نرمافزارها، برنامه «متنآزاد» OpenSSL و برنامه Schannel مایکروسافت بود. همچنین TLS Libraryها هم میتوانستند این مشکل را داشته باشند. بنابراین تمامی سرویسدهندگانی که از TLS 512 bit استفاده میکنند میتوانند در معرض آسیب باشند. به گفته کارشناسان حدود هشت درصد سایتهایی که از این پروتکل استفاده میکنند دارای باگ هستند.
در پایان باید گفت با توجه به افزایش باگهای پروتکل TLS و راهکارهای وابسته، نیاز به راهکار جدید در زمینه رمزنگاری اطلاعات احساس میشود و باید با مراقبت بیشتری از این نوع تکنولوژی استفاده کرد؛ یا اینکه طول کلید را به2048 بیت افزایش داد. برای کسب اطلاعات بیشتر میتوانید به آدرس https://weakdh.org/ مراجعه کنید.
نظرات کاربران