بلاگ آزمایشگاه امنیت وایت لب بلاگ آزمایشگاه امنیت وایت لب

ضرورت استفاده از سنجاق گواهینامه (certificate pinning)

| زمان مطالعه : 2 دقیقه
ضرورت استفاده از سنجاق گواهینامه (certificate pinning)

سنجاق کردن گواهینامه یعنی در دسترس قرار دادن یک نمونه از گواهینامه، در برنامه ای خاص برای بررسی و تایید آن گواهینامه در فرآیند اتصال به کارگزار.

در واقع اینکار روشی برای تصدیق هویت بین مشتری و کارگزار است. در این مقاله به بررسی دلایلی که استفاده از سنجاق کردن گواهینامه را ضروری کرده‌اند می‌پردازیم.

با پیشرفت روزافزون فناوری های مرتبط با اینترنت و همچنین افزایش استفاده از دستگاه‌های هوشمند همراه، موضوع امنیت این سیستم‌ها و امنیت کاربر در این حوزه اهمیت پیدا کرده است. این پیشرفت ها باعث شده برنامه‌های متفاوتی از قبیل: شبکه های اجتماعی، شبکه های مالی و پرداخت و هویت مجازی بسیار اهمیت پیدا کرده و کاربران زیادی را درگیر خود کنند و در نتیجه اطلاعات حساس کاربران در این فضا تبادل شده و یقینا افرادی جهت سواستفاده از این اطلاعات دست به کار شده و اقدام به سرقت اطلاعات می‌کنند. در‌ شبکه های همراه موبایل(Cellular network) خطر چنین وقایعی کمتر‌ به نظر می‌رسد با این‌حال نمی‌توان آن را نادیده گرفت اما در شبکه‌های Wi-Fi

احتمال سرقت اطلاعات حساس بسیار بالاست. از مهم ترین حملاتی که در این شرایط انجام می‌شود می‌توان به حملات مرد میانی(MITM) اشاره کرد. در ساده ترین حالت ،در شرایطی که اتصال امن باشد اما سنجاق گواهینامه انجام نشده باشد در طی یک فرآیند خاص امکان سرقت اطلاعات شخصی وجود دارد. در سطوح بعدی در صورتی که فرد حمله کننده اطلاعاتی هر چند جزیی از برنامه های موجود روی دستگاه هدف داشته باشد می‌تواند با طراحی بردار‌‌های حمله متفاوت، علاوه بر سرقت اطلاعات خاص ،عملیاتی هدفمند را بر دستگاه مورد نظر پیاده سازی کند. در نظر بگیرید یک برنامه خاص برای سیستم عامل اندروید وجود دارد که سرویسی آسیب پذیر را در دستگاه ایجاد می‌کند که امکان مشاهده فایل‌ ها را به مهاجم می‌دهد. اگر این فرد را در یک شبکه با تعداد کاربران زیاد در نظر بگیرید، چنین حمله‌ای می‌تواند یک نشت اطلاعاتی بزرگ در نظر گرفته شود. یا در حالتی دیگر در نظر‌ بگیرید مهاجم می‌تواند فایلی خاص را در دستگاه شخص هدف برای استفاده های مدنظر خود ایجاد کند.
در‌ نمونه های پیشرفته تر ، ارتباطات ناامن برنامه های سیستمی در یک سیستم عامل را در نظر می‌گیریم. در‌ یک مثال ساده اگر اطلاعاتی خاص برای بررسی بروزرسانی برنامه ها در کانالی ناامن رد و بدل شود فرد مهاجم با تغییر داده ها می‌تواند فایلی خاص را به عنوان بروزرسانی در سیستم هدف نصب کرده و دستگاه را مال خود کند.
مثال های فوق صرفا جهت آشنایی با خطرات محتمل در صورت عدم استفاده از سنجاق گواهینامه مطرح شدند. هرچند استفاده از سنجاق گواهینامه به همراه اتصالی امن می‌تواند در پیشگیری از بسیاری خطرات موثر باشد اما مسائلی مانند اشتباهات منطقی توسعه دهنده، پیشرفت نفوذگران، نوآوری در روش های نفوذ، عدم پشتیبانی و بروزرسانی نرم‌افزار و… می‌تواند منجر به نقض امنیت و حریم خصوصی کاربران شود.