انتقال امن HTTP به HTTPS به کمک پروتکل‌ HSTS - حلقه ارتباطی ابر آروان

ابر آروان

زیرساخت یکپارچه ابری

۱۹ خرداد ۱۳۹۴

انتقال امن HTTP به HTTPS به کمک پروتکل‌ HSTS

امروزه اهمیت استفاده از پروتکل های امن برای هیچکس پنهان نیست. تقریباً حساسیت به استفاده از پروتکل HTTPS به جای HTTP در تراکنش های مالی و وارد کردن رمزهای عبور مهم بین کاربران نهادینه شده است. آروان به راحتی و تنها با چند کلیک امکان استفاده پروتکل امن را برای شما فراهم می کند. علاوه بر ارائه ساده پروتکل HTTPS امکانات پیشرفته تری هم هست که سرعت و امنیت این پروتکل را تقویت می کند. در این مقاله تلاش می کنیم به بررسی پروتکل HSTS بپردازیم، وظیفه اصلی این پروتکل انتقال یا همان Redirect امن وب سایت و کلیه لینک ها از HTTP به HTTPS است.

شما لازم نیست نگران هیچکدام از این مفاهیم باشید، آروان تمام مخاطرات امنیتی را لحاظ می کند و به شما کمک می کند تا تنها با یک کلیک تمام ویژگی های پیشرفته را فعال نمایید.

پروتکل HTTP Strict Transport Security (HSTS)

اغلب کاربران به صورت پیش فرض از طریق پروتکل HTTP به سرورها متصل می شوند. در شرایطی که استفاده از پروتکل امن اجباری باشد، باید این درخواست ها به صورت اتوماتیک به HTTPS تغییر مسیر دهند. استفاده از روش های عادی می تواند مخاطرات امنیتی بسیاری را به همراه داشته باشد.

HSTS RFC 6797

Strict Transport Security و یا به اختصار HSTS مجموعه سیاست های امنیتی است که به صورت امن به وب سایت ها اجازه می دهد تنها از طریق پروتکل HTTPS قابل دسترس باشند و یا به کاربران اجازه می دهد تنها با سایت هایی با پروتکل امن ارتباط برقرار بکنند. این سیاست ها در یک وب سایت از طریق ارسال یک Header به عنوان Strict-Transport-Security به کاربر ابلاغ می شود.

واکنش مرورگر به HSTS

پس از ارسال اولین درخواست توسط کاربر، سرور یک header حاوی سیاست های پروتکل HSTS را ارسال می کند. این header می تواند چیزی شبیه به این این باشد:

Strict-Transport-Security: max-age=2628000; includeSubDomains;

به این معنی که این دامنه و کلیه زیر دامنه های آن تا 2628000 ثانیه دیگر (1ماه) تنها از طریق پروتکل HTTPS قابل دسترس خواهند بود. در اینجا مرورگر 2 عمل مهم را انجام می دهد:

  1. به صورت خودکار تمام لینک های غیر امن را به لینک های امن تغییر می دهد. به طور مثال http://www.arvancloud.com/ssl/test به https://www.arvancloud.com/ssl/test تغییر می کند.
  2. اگر مرورگر نتواند از امنیت لینک اطمینان حاصل کند، پیغام خطایی نمایش داده می شود و اجازه دسترسی به وب سایت داده نمی شود.

HSTS دقیقا از چه مشکلات امنیتی جلوگیری می کند

  1. حملات man-in-the-middle که می تواند به واسطه استفاده از پروتکل HTTP ( در تایپ کردن به عادت این پروتکل و یا پیشنهاد پیش فرض مرورگر ها) رخ دهد.
  2. وب سایت های HTTPS که به اشتباه برخی از لینک هایشان HTTP است.
  3. حملات man-in-the-middle که از اشتباه کاربران مبتنی بر قبول certificate های غیر معتبر استفاده می کنند.

راه گوگل و preload

فرض کنید یک کاربر با یک سیستم/سیستم عامل نو برای اولین بار و در یک محیط نا امن (در کنار نفوذگرانی که به کمین نشسته اند) می خواهد به یک سایت متصل شود. در همین اولین ارتباط و دریافت سیاست های امنیتی HSTS یک خطر امنیتی وجود دارد. گوگل برای پروژه کرومیوم تصمیم گرفت تا اسامی سایت هایی که همیشه می بایست فقط از طریق پروتکل HTTPS متصل شوند را hardcode کند (ایجاد را ببینید). البته شما نیز می توانید نام سایت خود را به این لیست اضافه کنید. کافی است به آدرس https://hstspreload.appspot.com بروید و نام دامنه خود را وارد کنید. و البته فراموش نکنید که شرایط آن را باید داشته باشید. این شرایط به شرح زیر است:

  1. یک certificate معتبر داشته باشید.
  2. تمام ترافیک های HTTP را به HTTPS انتقال دهید.
  3. تمام زیردامنه ها نیز تنها از طریق HTTPS قابل دسترس باشند.
  4. Header درستی جهت تنظیمات برای کاربران ارسال شود.

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

خوب است بدانید که غیر از گوگل کروم، فایرفاکس، اپرا، سافاری و به زودی ماکروسافت اینترنت اکسپلورر نیز از همین لیست گوگل استفاده می کنند.

لیست مرورگران پشتیبانی کننده HSTS

  1. گوگل کروم از نسخه 4.0.211.0
  2. فایرفاکس از نسخه 4
  3. اینترنت اکسپلورر 11 و ماکروسافت اج ( همزمان با سیستم عامل ویندوز 10)
  4. اپرا از نسخه 12
  5. سافاری از زمان ارائه سیستم عامل OS X Mavericks از ژانویه 2013
× برای اطلاع از آخرین اخبار و مقالات آروان عضو خبرنامه ما شوید