موضوع مقاله: هارت‌بلید | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # هارت‌بلید | مقدمه: هارت‌بلید یک اشکال نرم‌افزاری در کتابخانه رمزنگاری متن باز اپن‌اس‌اس‌ال است که به مهاجم اجازه خواندن حافظه رایانه‌ای که در حال اجرای این نرم‌افزار است را می‌دهد. | ## بخش 1: هارت‌بلید | این مشکل امنیتی می‌تواند در هر تپش اکستنشن Heartbeat اپن‌اس‌اس‌ال، تا ۶۴ کیلو بایت اطلاعات از حافظهٔ مربوط به همین نرم‌افزار در RAM رایانه را در اختیار مهاجم قرار دهد. سازوکار این حفره امنیتی به این صورت است که شخص مهاجم یک در خواست هارت بیت (تپش قلب) دستکاری شده را به سروری که در حال اجرای اپن‌اس‌اس‌ال است می‌فرستد و منتظر پاسخ سرور می‌ماند. از آنجایی که مشکل کنترل طول متغیر در برنامه‌نویسی اپن‌اس‌اس‌ال ویرایش‌های اشاره شده در بالا وجود دارد، برنامه نمی‌تواند صحت درخواست مهاجم را ارزیابی نماید و این مسئله موجب می‌شود که برنامه به درخواست مهاجم پاسخ دهد و ۶۴ کیلوبایت از حافظه برنامه را به شکل تصادفی بخواند و برای مهاجم ارسال نماید. حال اگر این عمل تکرار شود اطلاعاتی از جمله نام کاربری و پسورد سرور یا پسورد مدیران یا اطلاعات کاربران یا هر اطلاعات امنیتی دیگری مانند کوکی‌ها نیز به دست خواهند آمد. این مشکل امنیتی از تاریخ ۳۱ دسامبر ۲۰۱۱ در کد برنامه وجود داشته‌است و بعد از انتشار نسخه پایدار برنامه (ویرایش ۱٫۰٫۱) در تاریخ ۱۴ مارس ۲۰۱۲ به شکل گسترده‌ای در وب سرورهای دنیا انتشار یافته‌است. آسیب‌شناسی خواندن بخشی تصادفی از حافظه سرور می‌تواند اطلاعات حساسی را در اختیار مهاجم قرار دهد و در پی آن امنیت سرور و کاربران در حال استفاده از آن را به خطر بیندازد. شخص مهاجم کنترلی بر روی اینکه چه داده‌هایی در این ۶۴ کیلوبایت توسط سرور به او تحویل داده می‌شود ندارد و سرور تنها در پاسخ به درخواست مهاجم به شکل تصادفی داده‌هایی را در اختیار وی می‌گذارد. | ## بخش 2: هارت‌بلید | هرچند این باگ تهدید جدی برای ارتباط امن ایجاد شده توسط اپن‌اس‌اس‌ال محسوب می‌شود، اما همچنین می‌تواند درخواست‌ها و اطلاعات رمزگذاری نشده کاربر را نیز در اختیار نفوذگران قرار دهد، این اطلاعات می‌توانند شامل پست‌های کاربر، کوکی‌ها و پسوردهای کابران سرور باشد که درصورتی که مهاجم به آن‌ها دستیابی داشته باشد می‌تواند به انجام عملیات استراق نشست کاربر بپردازد و به اطلاعات حساب کاربران و شاید مدیران آن وب سرور دستیابی پیدا کند. در زمان شناسایی این حفره امنیتی (هفتم آوریل ۲۰۱۴)، چنین تخمین زده شد که می‌بایست حدود ۱۷ درصد، معادل نیم میلیون عدد، از وب سرورهایی که توسط مراجع صدور گواهی دیجیتال برای آن‌ها گواهی امنیتی SLL صادر شده‌است، در برابر این نوع از حمله آسیب‌پذیر باشند.بنیاد مرزهای الکترونیکی، ارز تکنیکا، و رمز نگار آمریکایی بروس شِنایر، همگی در توصیف این حفره امنیتی از واژه "catastrophic" به معنی "فاجعه آفرین" استفاده کردند. ستون نگار امنیت سایبری مجله فوربز، جوزف اشتاینبرگ، در توصیف این اشکال امنیتی می‌نویسد که "از زمانی که بانکداری الکترونیکی در اینترنت به راه افتاد، هیچ اشکال امنیتی مانند این باگ دارای چنین پتانسیل تخریبی نبوده‌است." ویرایش‌های آسیب‌پذیر OpenSSL OpenSSL 1.0.2-beta OpenSSL 1.0.1 تا ویرایش OpenSSL 1.0.1f سیستم عامل‌هایی که مورد خطر و دارای این باگ هستند اگر پچ مربوط به اشکال امنیتی CVE-2014-0160 در این سیستم عامل‌ها نصب نشده باشد، این سیستم عامل‌ها می‌توانند در برابر این حمله آسیب‌پذیر باشند. هرچند بروز رسانی یا برطرف کردن این اشکال امنیتی به روش‌های فوق این اشکال را برطرف می‌سازد، اما اگر برنامه OpenSSL و سرویس‌های مرتبط با آن یا نرم‌افزارهایی که از آن استفاده می‌کنند متوقف نشوند و دوباره راه‌اندازی نگردند(restart)، کد مخرب همچنان در حافظه سیستم باقی‌مانده و نفوذگران همچنان می‌توانند به اطلاعات حساس سرور دستیابی داشته باشند. علاوه بر این برای بازیابی امنیت سیستم می‌بایست تمامی اطلاعات حساس مانند کلیدها، رمزها، کوکی‌ها، و توکن‌ها (token) قدیمی پاک و تعویض شوند. اطلاعاتی که باید تعویض شوند شامل: کلیدهای امنیتی عمومی و خصوصی که احتمال به سرقت رفتن آن‌ها می‌رود. تمامی پسوردهای موجود بر روی سرورهایی که احتمال مورد حمله قرار گرفتن آن‌ها می‌رود باید تعویض شوند. | ## بخش 3: هارت‌بلید | بعد از شناسایی این حفره امنیتی برنامه‌ها و اپلیکیشن‌هایی برای شناسایی این باگ ایجاد شدند که مدیران سرورها می‌توانند از آن‌ها برای تشخیص این حفره بر روی سرورهای خود استفاده نمایند و سپس به روش فوق اقدام به از بین بردن این باگ نمایند. عکس العمل‌ها در روز شناسایی این حفره، کارشناسان امنیتی پروژه تور در وبلاگ خود به کاربران دنیای اینترنت توصیه کردند که «به تمامی افرادی که نگران امنیت سایبری خود هستند توصیه می‌شود تا در چند روز آینده از ورود به اینترنت خودداری کنند، تا زمانی که مشکل به شکل کامل شناسایی و برطرف شود». مدیران پلت فورم‌ها، مانند مدیران بنیاد ویکی‌مدیا، در پی شناسایی این باگ به کاربران خود توصیه نمودند تا رمزهای کاربری خود را عوض کنند. در کنار سایت‌های خارجی نام برده سایت‌های ایرانی بسیاری نیز دارای این باگ بوده‌اند و تلاش‌ها در زمینه از بین بردن این باگ ادامه دارد. تئو درات، بنیان‌گذار و مدیر پروژه‌های اپن‌اس‌اس‌اچ و اوپن‌بی‌اس‌دی سازندگان اپن‌اس‌اس‌ال را برای مد نظر قرار ندادن استانداردهای امنیتی برنامه‌نویسی به زبان C و کتابخانه استاندارد سی مورد انتقاد قرار داد و خطاب به آن‌ها چنین گفت: «تولیدکنندگان اپن‌اس‌اس‌ال احساس مسئولیت کافی ندارند». | ## جمع‌بندی | برنامه‌نویسی که این قسمت از اپن‌اس‌اس‌ال را برنامه‌نویسی کرده و این اشکال امنیتی در اپن‌اس‌اس‌ال به دنبال کدنویسی او ایجاد شده‌است، Robin Seggelmann, چنین ابراز داشت که او تنها در حین برنامه‌نویسی «کنترل و چک کردن متغییری که طول و تعدادی رکورد داشته‌است را یادش رفته‌است» و هرگونه سوء نیت و تعمدی را نسبت به ایجاد این اشکال امنیتی در برنامهٔ اپن‌اس‌اس‌ال رد کرده‌است.