در حال بارگذاری...
بررسی اینکه آیا اعتبارنامههای کاربر از طریق کانال رمزنگاریشده (HTTPS) انتقال مییابند یا خیر.
اهداف این درس
تست انتقال اعتبارنامهها از کانال رمزنگاریشده شامل بررسی این موضوع است که آیا نام کاربری، رمز عبور و سایر اطلاعات حساس از طریق HTTPS انتقال مییابند یا خیر.
اگر اعتبارنامهها از طریق HTTP بدون رمزنگاری ارسال شوند، هر کسی که به شبکه دسترسی داشته باشد میتواند آنها را بخواند. حملات Man-in-the-Middle میتوانند اعتبارنامهها را در شبکه سرقت کنند.
هشدار
حتی اگر سایت از HTTPS استفاده کند، ممکن است فرم ورود در صفحه HTTP باشد یا اعتبارنامهها از طریق AJAX بدون HTTPS ارسال شوند.
بررسی کنید که آیا صفحه ورود و فرم احراز هویت از HTTPS استفاده میکنند.
1# بررسی تغییر مسیر HTTP به HTTPS2curl -I http://target.com/login34# بررسی header HSTS5curl -I https://target.com | grep -i strict-transport67# بررسی گواهینامه SSL8echo | openssl s_client -connect target.com:443 2>/dev/null | openssl x509 -noout -datesبررسی کنید که آیا فرم ورود اعتبارنامهها را از طریق HTTPS ارسال میکند.
نسخههای TLS، الگوریتمهای رمزنگاری و تنظیمات گواهینامه را بررسی کنید.
| نسخه | وضعیت | توضیح |
|---|---|---|
| SSL 2.0 | ناامن | آسیبپذیریهای جدی |
| SSL 3.0 | ناامن | آسیبپذیری POODLE |
| TLS 1.0 | ناامن | آسیبپذیری BEAST |
| TLS 1.1 | ناامن | منسوخ شده |
| TLS 1.2 | امن | پیشنهاد شده |
| TLS 1.3 | امنترین | آخرین نسخه |
انتقال اعتبارنامهها بدون رمزنگاری میتواند منجر به سرقت نام کاربری و رمز عبور توسط مهاجمان شود.
توصیه عملی
از ابزار SSL Labs برای بررسی تنظیمات SSL/TLS سایت خود استفاده کنید.
هرگز اعتبارنامهها را از طریق HTTP ارسال نکنید.
از HSTS برای اجبار HTTPS استفاده کنید.
گواهینامه SSL/TLS باید معتبر و بهروز باشد.
از نسخههای امن TLS (1.2 یا بالاتر) استفاده کنید.
کدام پروتکل برای انتقال اعتبارنامهها امن است؟
چرا انتقال اعتبارنامهها از طریق HTTP خطرناک است؟
در HTTP، اعتبارنامهها بهصورت متن ساده ارسال میشوند و هر کسی که به شبکه دسترسی داشته باشد میتواند آنها را بخواند.
HSTS چیست و چرا مهم است؟
HSTS headerی است که مرورگر را مجبور میکند فقط از HTTPS استفاده کند و از حملات Downgrade جلوگیری میکند.