78
صادق دوستیحمد م و شبکه امنیت داده و شبکهه امنیت داده آزمایشگانشگاه دا شریف صنعتی کامپیوتر مهندسیانشکده د صادق دوستیحمد مhttp://dnsl.ce.sharif.edu 1 / 78 درس10 : SSL وTLS

درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

Embed Size (px)

Citation preview

Page 1: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

امنیت داده و شبکه محمد صادق دوستی

صنعتی شریف دانشگاه آزمایشگاه امنیت داده و شبکه دانشکده مهندسی کامپیوتر

محمد صادق دوستی

http://dnsl.ce.sharif.edu

1 / 78

TLSو SSL: 10درس

Page 2: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 2 امنیت داده و شبکه محمد صادق دوستی

فهرست مطالب

معرفی و تاریخچه

SSL/TLS در سطح باال

TLS در عمل

جزئیاتTLS

Heartbleed

Page 3: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 3 امنیت داده و شبکه محمد صادق دوستی

معرفی کلی

SSL: Secure Sockets Layer

TLS: Transport Layer Security

SSL در شرکتNetscape Communications توسره (.SSLطاهک الجمل؛ پدر )یاف و ب سکع محبوب شد

هدف اصلیSSL امنی وب ،(HTTP )بود.

تکتیبHTTP رویSSL راHTTPS گوییم.

امکوزهSSL تاربکدهای دیگکی نیز دارد.

TLS نسخ استاندارد شدهSSL اس.

Page 4: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 4 امنیت داده و شبکه محمد صادق دوستی

جایگاه در شبکه

SSL/TLS برراالی الیرر انتدرراش در پوررت پکوت ررل الیرر ایTCP/IP اس.

بکخی آن را در زمکه الی تاربکد محسوب می تنند.

SSL/TLS بک مبنای پکوت لTCP اس.

بررک مبنررای نسررخ ایUDP هررم پیرراده شررده اسرر ترر برر آنDatagram Transport Layer Security ( یراDTLS )

.می گویند

نظیرررررک پکوت لهررررراییHTTP ،FTP ،SMTP ،NNTP وXMPP قادرند ازSSL/TLS استفاده تنند.

Page 5: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 5 امنیت داده و شبکه محمد صادق دوستی

معروف پیش فرض پورتهای

SSL/TLSروی پورت عادی پورت پروتکل

HTTP 80 443

XMPP 80 443

SMTP 25 465 587و

NNTP 119 563

FTP 20 990و 989 21و

IMAP 143 993

POP3 110 995

LDAP 389 636

Telnet 23 992

.تفاوت دارد SSHتامال با پکوت ل SSL/TLSروی Telnetپکوت ل :توجه

Page 6: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 6 امنیت داده و شبکه محمد صادق دوستی

STARTTLSفرمان

فکمانSTARTTLS بک پکوت لهای متن آش ار اس ، ت برا افزون ای :مثاا . ارتدا دهنرد TLSامنی خود را ب تمک می تواننداجکای آن SMTP:

S: <waits for connection on TCP port 25>

C: <opens connection>

S: 220 mail.example.org ESMTP service ready

C: EHLO client.example.org

S: 250-mail.example.org offers welcome

S: 250 STARTTLS

C: STARTTLS

S: 220 Go ahead

C: <starts TLS negotiation>

C & S: <negotiate a TLS session>

C & S: <check result of negotiation>

C: EHLO client.example.org

Page 7: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 7 امنیت داده و شبکه محمد صادق دوستی

تاریخچه

توضیح سال پروتکل

SSL 1.0 داخلی ؟؟ Netscape – ب شدت ناامن –منتوک نود

SSL 2.0 1995 ب بهد منسوخ محسوب می شود 2011از –تهدادی ناامنی(RFC 6176)

SSL 3.0 1996 ب بهد منسوخ محسوب 2015از -ب آن وارد اس POODLEحمل

(RFC 7568)می شود

TLS 1.0 1999 بک مبنایSSL 3.0 – قابلی تنزش اتصاش بSSL 3.0 و در نتیج ناامنی

TLS 1.1 2006 ناامنی هایتهدادی از رفع TLS 1.0

TLS 1.2 2008 رمز ب افزودن بکخی الگوریتمهایTLS 1.1

TLS 1.3 افزودن الگوریتمهای رمز جدید –رمز ضهیف حذف بکخی الگوریتمهای ب زودی

Page 8: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 8 امنیت داده و شبکه محمد صادق دوستی

فهرست مطالب

معرفی و تاریخچه

SSL/TLS در سطح باال

TLS در عمل

جزئیاتTLS

Heartbleed

Page 9: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 9 امنیت داده و شبکه محمد صادق دوستی

SSL/TLSدو مفهوم اساسی

نشست(Session:) بین تارخواه و تارگزار تناظکی.

یک بار تبرادش ( از جمل تلید نوس )پارامتکهای رمزنگاری : ایده

.شوند و پس از آن بتوان با خیاش راح انواع ارتباط را داش

هزین زیادی داردپارامتکهای رمزنگاری تبادش : علت.

و تارگزارارتباطی بکای انتداش بست ها بین تارخواه :اتصا.

روی یک نوس می توان چندین اتصاش داش.

ندارنرد و از پارامتکهرای تبادش پارامتکهای رمزنگاری نیاز ب اتصالها

.نوس بهکه می گیکند

Page 10: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 10 امنیت داده و شبکه محمد صادق دوستی

SSL/TLSزیر پروتکلهای

پکوت لSSL/TLS شامل چند زیک پکوت ل اس:

Record Protocol (رتورد)

Handshake Protocol (دستداد)

Change Cipher Spec Protocol (تغییک رمز)

Alert Protocol (هودار)

Page 11: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 11 امنیت داده و شبکه محمد صادق دوستی

پروتکلهای دستداد و رکوردزیر

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

.را تبادش می تنندرمزنگاری

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

و پکوت رل الیر تراربکد روی آن خردمات SSL/TLSزیک پکوت لهای

.را فکاهم می آورد صح و محکمانگی

پکوت لهای دستداد، تغییک رمز، هودار و الیر براالیی روی پکوت رل زیک

.اجکا می شود TCPروی HTTPرتورد اجکا می شوند؛ همان طور ت

الزم را بر آنهرا افرزوده و در صرورت لرزوم سرکآیندهای پکوت ل رتورد

.رمزنگاری انجام می دهد

Page 12: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 12 امنیت داده و شبکه محمد صادق دوستی

پروتکل رکورد زیر اجرای پروتکلها روی

Page 13: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 13 امنیت داده و شبکه محمد صادق دوستی

پروتکل رکوردزیر عملیات

، مهموال CRIMEب دلیل حمل انجام TLSدر فوکده سازی

نمی شود

شامل یک Encryptمکحل Padding نیز هس.

Page 14: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 14 امنیت داده و شبکه محمد صادق دوستی

قالب بسته های زیر پروتکل رکورد

Page 15: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 15 امنیت داده و شبکه محمد صادق دوستی

زیر پروتکل تغییر رمز

در خالش پکوت ل دستداد، هکیک از تارخواه و تارگزار پارامتکهرای

.می فکستندامنیتی مورد نظک خود را

پارامتکهرا ، «تغییک رمرز »پس از پایان تار، با ارساش یک زیک پکوت ل

.نهایی می شوند

با دریاف پیغام تغییک رمز، حال مهلر(pending ) هرک طرکف

.تبدیل می شود( current)ب حال جاری

توچ تکین پکوت ل امنی شب اس « تغییک رمز»زیک پکوت ل.

1بای با مددار 1شامل فدط!

Page 16: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 16 امنیت داده و شبکه محمد صادق دوستی

1 –چهار فاز تبادل پارامترهای امنیتی

پیامهای خاتستکی اختیاری یا .وابست ب موقهی هستند

Page 17: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 17 امنیت داده و شبکه محمد صادق دوستی

2 –چهار فاز تبادل پارامترهای امنیتی

پیامهای خاتستکی اختیاری یا .وابست ب موقهی هستند

Page 18: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 18 امنیت داده و شبکه محمد صادق دوستی

1 –علت وجود پیامهای اختیاری یا وابسته به موقعیت

انواع مدلهای اعتماد:

طکفین هیچ تلید موتکتی از هم ندارند(Anonymous DH)

طکفین از هم تلید متدارن(Pre-Shared Key یاPSK ) دارند؛

.TLS-PSKموهور ب

تارگزار، تارخواه، یا هک دو از هم گواهی دیجیتاش دارند.

(بکای امضا و رمز RSAفدط بکای امضا؛ RSA: دو نوع) RSAمبتنی بک • (DH؛ بدون پارامتکهای DHشامل پارامتکهای : دو نوع) DSAمبتنی بک •

Fixed DH Ephemeral DH

Page 19: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 19 امنیت داده و شبکه محمد صادق دوستی

2 –علت وجود پیامهای اختیاری یا وابسته به موقعیت

نوع پکوت ل مورد استفاده جه تبادش تلید:

انتقا کلید(Transport:) مهموال مبتنی بکRSA

مهموال مبتنی بک :تباد کلیدDH

استفاده ازDH ب دلیل فکاهم آوردن امنی پیوکو تکجیح دارد.

DH با امنی مساویRSA شدیدا تندتک اس.

اسررتفاده ازDH بیضرروی خمهررایروی(Elliptic Curves )

Exchange توترر نوشرر انتهررایی ECDHE (Eمهررکوف برر

(.اس

Page 20: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 20 امنیت داده و شبکه محمد صادق دوستی

Pre-Master Secret

تلیدی ت در پکوت ل دستداد تبادش می شرود، مدرداری بر نرامPre-

Master Secret اس.

با استفاده ازPre-Master Secret شر مدردار مخفری محاسرب ، :می شود

Client write MAC secret

Server write MAC secret

Client write encryption key

Server write encryption key

Client write encryption IV

Server write encryption IV

Page 21: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 21 امنیت داده و شبکه محمد صادق دوستی

زیر پروتکل هشدار

در صورتی ت در حین اجرکای پکوت رلSSL/TLS خطرایی رخزیرک پکوت رل دهد، یا طکفین بخواهند پیامهای تنتکلری بفکسرتند،

.هودار اجکا می شود

سطح هودار، و تد هودار: شامل دو بایت

سطح هودار می تواندwarning ( 1مددار ) یاfatal ( 2مدردار ) .باشد

سطح هودارfatal بالفاصل باعث بست شدن اتصاش می شود.

روی نوس جراری مم رن اسر ادامر یابنرد، ولری اتصالهاسایک

.اتصاش جدیدی اجازه تو یل نخواهد داش

Page 22: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 22 امنیت داده و شبکه محمد صادق دوستی

از زیر پروتکل هشدار نمونه هایی

unexpected_message

bad_record_mac

handshake_failure

certificate_revoked

certificate_expired

close_notify از پیام تنتکلی نمون ای

Page 23: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 23 امنیت داده و شبکه محمد صادق دوستی

زیر پروتکل رکورد در یک نگاه Payloadانواع

Page 24: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 24 امنیت داده و شبکه محمد صادق دوستی

فهرست مطالب

معرفی و تاریخچه

SSL/TLS در سطح باال

TLS در عمل

جزئیاتTLS

Heartbleed

Page 25: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 25 امنیت داده و شبکه محمد صادق دوستی

Gmailاز رمزنگاری فایرفاکساطالعات : مثال

Page 26: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 26 امنیت داده و شبکه محمد صادق دوستی

بیشتر واکاوی

TLS_ECDHE_RSA_WITH_AES_128_GCM_

SHA256, 128 bit keys, TLS 1.2

ECDHE: Elliptic Curve DH Exchange

RSA: Gmail Public Key Type

AES 128: Symmetric Key Cipher

GCM: Mode of Encryption

SHA256: Hash Algorithm (for MAC)

TLS 1.2: TLS Version

Page 27: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 27 امنیت داده و شبکه محمد صادق دوستی

نقشه راه

تا می تنیمدر ادام ، سهیTLS را در عمل بکرسی تنیم.

با توج ب گستکدگی پکوت ل، ام ان بکرسری تمرام حالتهرا وجرود .ندارد

دو حال خاص:

عمومی تلید : 1حالتRSA انتداش تلید با ؛RSA

عمومی تلید : 2حالتRSA تبادش تلید ؛DH

Apache + OpenSSL رویUbuntu ب عنوان تارگزار

Firefox ب عنوان تارخواه

Page 28: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 28 امنیت داده و شبکه محمد صادق دوستی

فایرفاکسدر about:configبا TLS پیکربندیجزئیات

Page 29: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 29 امنیت داده و شبکه محمد صادق دوستی

Apache + OpenSSL تنظیمات

تولید گواهی دیجیتاش تارگزار توسطOpenSSL:

sudo mkdir /etc/apache2/ssl

sudo openssl req -x509 -nodes -days 1095 -newkey

rsa:2048 -out /etc/apache2/ssl/server.crt -keyout

/etc/apache2/ssl/server.key

در پورتتنظیم/etc/apache2/ports.conf:

Listen 443

ماژوش پی کبندیو فهاش سازی SSL آپاچی(mod_ssl)

Page 30: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 30 امنیت داده و شبکه محمد صادق دوستی

mod_ssl ماژول پیکربندی

فهاش سازی:

sudo a2enmod ssl

پی کبندی:

/etc/apache2/sites-available/default-ssl.conf

مجدد آپاچی راه اندازی:

sudo /etc/init.d/apache2 restart

SSLCertificateFile /etc/apache2/ssl/server.crt

SSLCertificateKeyFile /etc/apache2/ssl/server.key

Page 31: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 31 امنیت داده و شبکه محمد صادق دوستی

mod_ssl ماژولامنیتی در تنظیمات

راه انرردازیبررکای تنظیمرراتآنچرر تررا تنررون گفترر شررد، حررداقل

HTTPS در آپاچی بود.

فایل در دیگکی تنظیماتبکای امنی بیوتک، بایدssl.conf

آپرراچی بایررد مجررددا تنظیمرراتپررس از انجررام )آپرراچی انجررام داد

(.شود راه اندازی

می تنیمدر اسالیدهای بهدی دو تنظیم مهم را بکرسی:

نسخSSL/TLS

رمز و پکوت لهای مورد استفاده الگوریتمهای

Page 32: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 32 امنیت داده و شبکه محمد صادق دوستی

SSL/TLSنسخه

# The protocols to enable.

# Available values:

# all, SSLv3, TLSv1, TLSv1.1, TLSv1.2

# SSL v2 is no longer supported

SSLProtocol all

تنظیم امن تکیندر حاش حاضک ،TLSv1.2 اس.

از این نسخ از پکوت ل در تارخواه هاالبت الزم اس پوتیبانی

.نظک گکفت شود

Page 33: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 33 امنیت داده و شبکه محمد صادق دوستی

رمز و پروتکلهای مورد استفاده الگوریتمهای

# SSL Cipher Suite:

# List the ciphers that the client is

# permitted to negotiate. See the

# ciphers(1) man page from the openssl

# package for list of all available options.

# Enable only secure ciphers:

SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5

ب مهنی عدم استفاده اس ( !)عالم تهجب.

aNull یهنرری پکوت ررل برردونauthentication ( مهررادش فهررالAnonymous DH.)

قبولندبا امنی متوسط و باال مورد رمزهایدر مثاش فوق فدط.

Page 34: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 34 امنیت داده و شبکه محمد صادق دوستی

DHمجبور کردن کارگزار به عدم استفاده از

ب طور پی فکض، تارگزار از پکوت لECDH بکای تبادش تلیرد

.استفاده می تند

در جه حفظ محکمانگی پیوکو

در حال اوش می خواهیم انتداش تلید از طکیRSA انجرام شرود؛

.را سم تارگزار غیک فهاش می تنیم ECDHب همین دلیل

/etc/apache2/mods-enabled/ssl.conf

SSLCipherSuite !ECDH:!DH:HIGH:MEDIUM:!aNULL:!MD5

Page 35: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 35 امنیت داده و شبکه محمد صادق دوستی

DHعدم استفاده از مرورگر به مجبور کردن

بخواهیم ت از فایکفاتسهمچنین می توانستیم ازDH استفاده ن ند.

Page 36: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 36 امنیت داده و شبکه محمد صادق دوستی

بین کارخواه و کارگزار RSAتعامل – 1حالت

با استفاده ازWireshark می تنیمتهامل را شنود.

Page 37: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 37 امنیت داده و شبکه محمد صادق دوستی

در صورت اعتماد به کلید عمومی کارگزار و ادامه پروتکل

C S

Client Hello

Server Hello

Certificate

Server Hello

Done

C S

Client Key

Exchange

Change Cipher

Spec

Enc. Handshake

Message

C S

New Session

Ticket

Change Cipher

Spec

Enc. Handshake

Message

Page 38: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 38 امنیت داده و شبکه محمد صادق دوستی

Client Hello روی پروتکل رکورد

1.0پکوت ل رتورد از نسخ .استفاده تکده اس TLSاز

Page 39: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 39 امنیت داده و شبکه محمد صادق دوستی

Client Helloداخل پیام

با محدود تکدن رمزهرا ، هررریچ فایکفررراتسدر

RSAروشرری غیررک از برررکای تبرررادش تلیرررد

.پیونهاد نمی شود

1.2پکوت ل دستداد از نسخ .استفاده تکده اس TLSاز

Page 40: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 40 امنیت داده و شبکه محمد صادق دوستی

پاسخ کارگزار

داخل پیامهای

رتورد

از 1.2تارگزار نسخ : دق TLS را پیونهاد می دهد.

Page 41: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 41 امنیت داده و شبکه محمد صادق دوستی

Server Helloداخل پیام

تررارگزار ی رری از رمزهررای پیوررنهاد شررده .توسط مکورگک را می پذیکد

Page 42: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 42 امنیت داده و شبکه محمد صادق دوستی

Certificateداخل پیام

Page 43: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 43 امنیت داده و شبکه محمد صادق دوستی

Server Hello Doneداخل پیام

Page 44: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 44 امنیت داده و شبکه محمد صادق دوستی

پاسخ کارخواه

داخل پیامهای

توتررراهتکین پکوت رررل رتورد !امنیتی شب

Page 45: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 45 امنیت داده و شبکه محمد صادق دوستی

Client Key Exchangeداخل پیام

،تارخواهPre-Master Secret را تولید نموده، آن را برا تلیرد

.عمومی تارگزار رمز و ارساش می تند

6 تلید نوس از رویPre-Master Secret استخکاج شده و

.از این پس تدکیبا هم چیز رمز شده خواهد بود

آیررا مرری ترروان از :ساالاWireshark خواسرر ترر پیامهررا را

رمزگوایی تند؟

Page 46: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 46 امنیت داده و شبکه محمد صادق دوستی

با کلید خصوصی کارگزار Wiresharkرمزگشایی پیامها توسط

Page 47: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 47 امنیت داده و شبکه محمد صادق دوستی

با کلید خصوصی کارگزار Wiresharkرمزگشایی پیامها توسط

Page 48: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 48 امنیت داده و شبکه محمد صادق دوستی

قبل و بعد از رمزگشایی -کل پروتکل

Page 49: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 49 امنیت داده و شبکه محمد صادق دوستی

قبل و بعد از رمزگشایی -پاسخ کارخواه

Page 50: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 50 امنیت داده و شبکه محمد صادق دوستی

قبل و بعد از رمزگشایی -پاسخ کارخواه

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

Page 51: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 51 امنیت داده و شبکه محمد صادق دوستی

قبل و بعد از رمزگشایی -پاسخ کارگزار

Page 52: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 52 امنیت داده و شبکه محمد صادق دوستی

قبل و بعد از رمزگشایی -پاسخ کارگزار

Page 53: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 53 امنیت داده و شبکه محمد صادق دوستی

Session Ticket چیست؟

Session Ticket توسه هایی ی از TLS اس.

درRFC 5077 تهکیف شده اس.

،هدف این اس ت نیرازی نباشرد ترارگزار بر ازای هرک ترارخواه

.نگ دارد( State)اطالعات وضهی

اطالعات وضهی تارگزار از طکیSession Ticket در اختیرار .تارخواه قکار می گیکد

تارخواه در تماس های بهدی از آن استفاده می تند.

اس تکبکوساز نظک مفهومی شبی بلی در.

Page 54: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 54 امنیت داده و شبکه محمد صادق دوستی

بین کارخواه و کارگزار DHتعامل – 2حالت

در سررم تررارگزار، تنظرریم!ECDH:!DH را حررذف و آپرراچی را .مجددا راه اندازی می تنیم

در سم تارخواه، ی ی از پکوت لهای مکبوط بDH می نماییمرا فهاش

(.فایکفاتس about:configدر بخ )

،بکای سادگیECDH نمی تنیمرا فهاش.

مجددا تهامل را باWireshark بکرسی می تنیم.

،چکا حتی با داشتن تلید خصوصی تارگزارWireshark نمری توانرد پیامهای رمز شده را رمزگوایی نماید؟

امنی پیوکو!

Page 55: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 55 امنیت داده و شبکه محمد صادق دوستی

عدم امکان رمزگشایی پیامها حتی با داشتن کلید خصوصی

اگررک بتروان برر مکورگررک گفرر ترر از :راهکااارPre-Master

Secret ت ی بگیکد، قادریم پیامها را حتری بردون داشرتن تلیرد

.خصوصی تارگزار رمزگوایی تنیم

چطور؟

Page 56: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 56 امنیت داده و شبکه محمد صادق دوستی

متغیر محیطی و NSSکتابخانه

مثررل مکورگکهرراییFirefox وChrome بررکای رمزنگرراری از

توسرره یافترر Mozillaترر توسررط NSSبرر نررام تتابخانر ای

.استفاده می تنند

توت نوشNetwork Security Services

اطالعات بیوتک:

https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS

می توان با تنظیم متغیک محیطریSSLKEYLOGFILE بر ،NSS

.را در یک فایل ذخیکه تند Pre-Master Secretگف ت

Page 57: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 57 امنیت داده و شبکه محمد صادق دوستی

در ویندوز NSSتنظیم متغیر محیطی

Page 58: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 58 امنیت داده و شبکه محمد صادق دوستی

در ویندوز NSSتنظیم متغیر محیطی

Page 59: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 59 امنیت داده و شبکه محمد صادق دوستی

در ویندوز NSSتنظیم متغیر محیطی

Page 60: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 60 امنیت داده و شبکه محمد صادق دوستی

نکات مهم

پس از تنظیم متغیک محیطی، الزم اس مکورگک را بسرت و مجرددا

.باز نمایید

هک بکنام تنها هنگام باز شدن متغیکهای محیطی را می خواند.

الزم اس مکورگک ب فایل تهیین شرده(ssl.log ) دستکسری

write داشت باشد.

تنظیم تنتکش دستکسی ب فایل

حاش مجددا ب صفحHTTPS مد نظرک بکویرد و تهرامالت را برا

Wireshark ذخیکه نمایید.

Page 61: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 61 امنیت داده و شبکه محمد صادق دوستی

ssl.logمحتوای فایل

قالب فایل در نوانی زیک مستند شده اس:

US/docs/Mozilla/Projects/NSS/Key_Log_Format-developer.mozilla.org/enhttps://

هک خط از فایرل، یرا براRSA یرا برا ( انتدراش تلیرد )شرکوع مری شرودCLIENT_RANDOM ( تبادش تلیدDH.)

در حال دوم، دو عدد بهد ازCLIENT_RANDOM می آید:

تارخواه نانس(: بایتی 64)عدد نخس

مددار (: بای 96)عدد دومPre-Master Secret

# SSL/TLS secrets log file, generated by NSS

CLIENT_RANDOM 1723a3ca6b5a… e99d65eeaa5e…

Page 62: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 62 امنیت داده و شبکه محمد صادق دوستی

Wiresharkدر ssl.logتنظیم نشانی فایل

Page 63: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 63 امنیت داده و شبکه محمد صادق دوستی

قبل و بعد از رمزگشایی

Page 64: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 64 امنیت داده و شبکه محمد صادق دوستی

یافتن کلید مرتبط به هر نشست

Wireshark برا تمرک مدردارRandom در پیرامClient

Hello متوج می شود ت از تدام سطکssl.log باید برکای

.رمزگوایی استفاده نماید

Page 65: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 65 امنیت داده و شبکه محمد صادق دوستی

یافتن کلید مرتبط به هر نشست

Wireshark برا تمرک مدردارRandom در پیرامClient

Hello متوج می شود ت از تدام سطکssl.log باید برکای

.رمزگوایی استفاده نماید

Page 66: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 66 امنیت داده و شبکه محمد صادق دوستی

DHتبادل الگوریتمهای رمز پس از فعال سازی

Client Hello

Server Hello

Page 67: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 67 امنیت داده و شبکه محمد صادق دوستی

Server Key Exchange

Page 68: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 68 امنیت داده و شبکه محمد صادق دوستی

Client Key Exchange

مددارPre-Master Secret بکابک تلید تبرادش شرده درDH

.اس

Page 69: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 69 امنیت داده و شبکه محمد صادق دوستی

فهرست مطالب

معرفی و تاریخچه

SSL/TLS در سطح باال

TLS در عمل

جزئیاتTLS

Heartbleed

Page 70: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 70 امنیت داده و شبکه محمد صادق دوستی

(RFC 5246تعریف در ) master secretتولید

master_secret = PRF(

pre_master_secret,

"master secret",

ClientHello.random ||

ServerHello.random)

master secret اس بایتی 48مدداری.

PRF یا تابع شب تصادفی(Pseudo-Random Function)

مدداری مخفی، بکچسب :ورودی(label) و بذر ،(seed.)

مدداری تصادفی ب طوش دلخواه: خروجی.

Page 71: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 71 امنیت داده و شبکه محمد صادق دوستی

PRF

درTLS ازHMAC بکای ساخPRF استفاده می شود.

TLS 1.2 استفاده از ،SHA-256 یرا بهترک را برکایHMAC

.توصی می تند

PRF(secret, label, seed) =

P_hash(secret, label || seed)

Page 72: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 72 امنیت داده و شبکه محمد صادق دوستی

کلید نشست 6استخراج

key_block = PRF(

master_secret,

"key expansion",

ServerHello.random ||

ClientHello.random)

6 تلید نوس ب تکتیب زیک از رویkey_block اسرتخکاج :می شوند

Client write MAC secret

Server write MAC secret

Client write encryption key

Server write encryption key

Client write encryption IV

Server write encryption IV

Page 73: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 73 امنیت داده و شبکه محمد صادق دوستی

MAC_write_keyمثال از کاربرد

MAC = MAC_Algorithm(MAC_write_key,

seq_num ||

TLSCompressed.type ||

TLSCompressed.version ||

TLSCompressed.length ||

TLSCompressed.fragment)

Page 74: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 74 امنیت داده و شبکه محمد صادق دوستی

فهرست مطالب

معرفی و تاریخچه

SSL/TLS در سطح باال

TLS در عمل

جزئیاتTLS

Heartbleed

Page 75: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 75 امنیت داده و شبکه محمد صادق دوستی

(Heartbleed)آسیب پذیری خونریزی قلبی

در نرکم افرزار 2014یک آسیب پذیکی بسیار مهرکوف تر در سراش

OpenSSL توف شد.

تأثیک روی میلیونها تارگزارHTTPS در دنیا!

آسیب پذیکی در پیاده سازی پکوت رلHeartbeat از توسره ای ؛TLS تهکیف شده درRFC 6520.

اتصاش اس نگهداشتنزنده بکرسی و این پکوت ل بکای.

آسیب پذیکی از نوع سکریز بافک اس.

در تد 2011ازOpenSSL وجود داشت اس.

Page 76: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 76 امنیت داده و شبکه محمد صادق دوستی

Heartbleedچگونگی سوء استفاده از آسیب پذیری

Page 77: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 77 امنیت داده و شبکه محمد صادق دوستی

Heartbleedچگونگی سوء استفاده از آسیب پذیری

Page 78: درس 10: SSL و TLS - SHARIF UNIVERSITY OF …ce.sharif.edu/courses/95-96/1/ce442-1/resources/root/...سا بش ینما ل توکپ نیکت چوت »زمر کییغت« ل توکپ

78 / 78 امنیت داده و شبکه محمد صادق دوستی

Heartbleedچگونگی سوء استفاده از آسیب پذیری