Certificate Pinning چیست؟ یک تکنیک امنیتی است که در واقع بین کلاینت و سرور قرار میگیرد. به عبارت دیگر یک مکانیسم امنیتی است که در زمینه احراز هویت اتصالات Client و سرور در زمینه ارتباط امن از طریق HTTPS یا سایر پروتکلهای TLS استفاده میشود. حمله سال 2011 به DigiNotar که یک شرکت صدور گواهینامه دیجیتال بود نشان داد حتی با وجود گواهینامه مجرمان سایبری میتوانند راههایی برای نفوذ به سیستمها و صدور گواهیهای SSL تقلبی بیابند.
هدف اصلی Certificate Pinning چیست؟
هدف اصلی آن افزایش امنیت ارتباط بین کلاینت و سرور با کاهش خطر MITM میباشد.
عملکرد Certificate Pining چگونه است؟
خیلی ساده میتوان کرد:
هنگامی که کلاینت یک درخواست HTTPS به سرور ارسال میکند سرور یک گواهینامه به کلاینت ارائه میکند.که توسط یک مرجع گواهی (Certificate Authority یا CA) معتبر امضا شده است. کلاینت اعتبار این گواهینامه را بررسی کرده و در صورت معتبر بودن، ارتباط امن برقرار میشود.
در تکنیک Certificate Pinning، اپلیکیشن یا مرورگر به جای اعتماد به هر گواهینامهای که توسط هر مرجع گواهی معتبر صادر شده باشد، تنها به یک یا چند گواهینامه خاص که از قبل مشخص شدهاند، اعتماد میکند. این گواهینامهها به اصطلاح "پین" (Pin) میشوند.
معایب:
پیچیدگی نگهداری: پین کردن گواهی مستلزم آن است که مشتریان فهرستی از گواهینامه های قابل اعتماد یا کلیدهای عمومی را حفظ کنند. با این حال، این لیست باید به طور مداوم به روز شود تا تغییرات در گواهی های سرور را منعکس کند. از آنجایی که گواهینامه ها دارای تاریخ انقضا هستند و مرتباً تمدید می شوند، روند به روز نگه داشتن گواهی های پین شده می تواند دشوار، مستعد خطای انسانی باشد و ممکن است منجر به اختلال در خدمات شود.
کاهش انعطافپذیری: در محیطهای پویا و مبتنی بر ابر که گواهیهای سرور به طور مکرر تغییر میکنند (به عنوان مثال، شبکههای تحویل محتوا یا میکروسرویسها)، پین کردن گواهی میتواند چالشهای عملیاتی ایجاد کند. انعطافناپذیری گواهیهای پینشده میتواند مانع از انتقال روان در طول بهروزرسانی سرور شده و مدیریت گواهی را پیچیده کند. خطر قطع اتصالات: پین کردن یک گواهی به یک برنامه کاربردی خطر از دست دادن اتصال را در صورت به خطر افتادن یا منقضی شدن گواهی پین شده ایجاد می کند.
این می تواند منجر به وقفه در سرویس برای کاربران شود تا زمانی که برنامه مشتری با گواهی پین شده جدید به روز شود. عدم مقیاسپذیری: پین کردن گواهی میتواند برای برنامهها یا خدمات در مقیاس بزرگ که نیاز به برقراری ارتباط با سرورهای متعددی دارند، که هر کدام گواهی خاص خود را دارند، غیرعملی باشد. مدیریت انبوهی از گواهیهای سنجاقشده دشوار میشود و ممکن است مزایای پین کردن گواهی را تضعیف کند.
مدرس و مشاور شبکه و امنیت
من مازیار ارجمند حدود ۱۲ سال است در حوزه شبکه و امنیت در حال کار میباشم. در همین یکسال هم میباشد که در کنار کار در این حوزه به بحث داوری تخصصی حوزه فناوری و اطلاعات مشغول به فعالیت هستم. نویسنده کتاب های: تحلیل صفر تا 100 بسته در شبکه مترجم کتاب های : کتاب راهنمای تیم آبی
زمان پاسخ گویی روز های شنبه الی چهارشنبه ساعت 9 الی 18
فقط به موضوعات مربوط به محصولات آموزشی و فروش پاسخ داده می شود