دانشگاه صنعتی شریف دانشکده مهندسی کامپیوتر آزمایشگاه امنیت داده و شبکه http://dnsl.ce.sharif.edu درس SSL :10و TLS محمد صادق دوستی 1 / 79 امنیت داده و شبکه محمد صادق دوستی فهرست مطالب معرفی و تاریخچه SSL/TLS در سطح باال TLS در عمل جزئیات TLS Heartbleed 2 / 79 امنیت داده و شبکه محمد صادق دوستی معرفی کلی Secure Sockets Layer SSL: Transport Layer Security TLS: SSL در شررکت Netscape Communicationsتوسرعه یافت و به سرعت محبوب شد (طاهر الجمل؛ پدر .)SSL هدف اصلی ،SSLامنیت وب ( )HTTPبود. ترکیب HTTPروی SSLرا HTTPSگوییم. امروزه SSLکاربردهای دیگری نیز دارد. TLS نسخه استاندارد شده SSLاست. 3 / 79 امنیت داده و شبکه محمد صادق دوستی جایگاه در شبکه SSL/TLS الیررهای برراالی الیرره انتدرراش در پشررته پروتکررل TCP/IPاست. برخی آن را در زمره الیه کاربرد محسوب میکنند. SSL/TLS بر مبنای پروتکل TCPاست. نسررخهای بررر مبنررای UDPهررم پیرراده شررده اسررت کرره برره آن ( Datagram Transport Layer Securityیرا )DTLS میگویند. پروتکلهرررررایی نظیرررررر NNTP ،SMTP ،FTP ،HTTPو XMPPقادرند از SSL/TLSاستفاده کنند. 4 / 79 امنیت داده و شبکه محمد صادق دوستی پورتهای پیشفرض معروف پروتکل پورت عادی پورت روی SSL/TLS 443 80 HTTP 443 80 XMPP 465 25 SMTPو 587 563 119 NNTP 989و 990 20و 21 FTP IMAP POP3 LDAP Telnet 143 110 389 23 993 995 636 992 توجه :پروتکل Telnetروی SSL/TLSکامالً با پروتکل SSHتفاوت دارد. 5 / 79 امنیت داده و شبکه محمد صادق دوستی 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 محمد صادق دوستی امنیت داده و شبکه 6 / 79 تاریخچه پروتکل سال SSL 1.0 ؟؟ SSL 2.0 1995 تعدادی ناامنی – از 2011به بعد منسوخ محسوب میشود ()RFC 6176 SSL 3.0 1996 حمله POODLEبه آن وارد است -از 2015به بعد منسوخ محسوب میشود ()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عدم سازگاری با SSL 2.0 TLS 1.3 7 / 79 توضیح داخلی – Netscapeمنتشر نشد – به شدت ناامن به زودی حذف برخی الگوریتمهای رمز ضعیف – افزودن الگوریتمهای رمز جدید امنیت داده و شبکه محمد صادق دوستی فهرست مطالب معرفی و تاریخچه SSL/TLS در سطح باال TLS در عمل جزئیات TLS Heartbleed 8 / 79 امنیت داده و شبکه محمد صادق دوستی دو مفهوم اساسی SSL/TLS نشست ( :)Sessionتناظری بین کارخواه و کارگزار. ایده :پارامترهای رمزنگاری (از جمله کلید نشست) ی برار تبرادش شوند و پس از آن بتوان با خیاش راحت انواع ارتباط را داشت. علت :تبادش پارامترهای رمزنگاری هزینه زیادی دارد. اتصاش :ارتباطی برای انتداش بستهها بین کارخواه و کارگزار. روی ی نشست میتوان چندین اتصاش داشت. اتصالها نیاز به تبادش پارامترهای رمزنگاری ندارنرد و از پارامترهرای نشست بهره میگیرند. 9 / 79 امنیت داده و شبکه محمد صادق دوستی زیر پروتکلهای SSL/TLS پروتکل SSL/TLSشامل چند زیر پروتکل است: )رکورد( Protocol )دستداد( Protocol Record Handshake )تغییر رمز( Cipher Spec Protocol Change )هشدار( Protocol 10 / 79 امنیت داده و شبکه Alert محمد صادق دوستی زیر پروتکلهای دستداد و رکورد کررارخواه و کررارگزار بررا اسررتفاده از زیررر پروتکررل دسررتداد پارامترهررای رمزنگاری را تبادش میکنند. زیر پروتکل رکورد ،از پارامترهای رمزنگاری استفاده کرده و بررای سرایر زیر پروتکلهای SSL/TLSو پروتکرل الیره کراربرد روی آن خردمات محرمانگی و صحت را فراهم میآورد. زیر پروتکلهای دستداد ،تغییر رمز ،هشدار و الیره براالیی روی پروتکرل رکورد اجرا میشوند؛ همان طور که HTTPروی TCPاجرا میشود. پروتکل رکورد سررآیندهای الزم را بره آنهرا افرزوده و در صرورت لرزوم رمزنگاری انجام میدهد. 11 / 79 امنیت داده و شبکه محمد صادق دوستی اجرای پروتکلها روی زیر پروتکل رکورد 12 / 79 امنیت داده و شبکه محمد صادق دوستی عملیات زیر پروتکل رکورد به دلیل حمله ،CRIMEمعموالً فشردهسازی در TLSانجام نمیشود مرحله Encryptشامل ی Paddingنیز هست. 13 / 79 امنیت داده و شبکه محمد صادق دوستی قالب بستههای زیر پروتکل رکورد 14 / 79 امنیت داده و شبکه محمد صادق دوستی زیر پروتکل تغییر رمز در خالش پروتکل دستداد ،هری از کارخواه و کارگزار پارامترهرای امنیتی مورد نظر خود را میفرستند. پس از پایان کار ،با ارساش ی زیر پروتکل «تغییر رمرز» ،پارامترهرا نهایی میشوند. با دریافت پیغام تغییر رمز ،حالت معلر ( )pendingهرر طررف به حالت جاری ( )currentتبدیل میشود. زیر پروتکل «تغییر رمز» کوچکترین پروتکل امنیت شبکه است. شامل فدط 1بایت با مددار !1 15 / 79 امنیت داده و شبکه محمد صادق دوستی چهار فاز تبادل پارامترهای امنیتی – 1 پیامهای خاکستری اختیاری یا وابسته به موقعیت هستند. 16 / 79 امنیت داده و شبکه محمد صادق دوستی چهار فاز تبادل پارامترهای امنیتی – 2 پیامهای خاکستری اختیاری یا وابسته به موقعیت هستند. 17 / 79 امنیت داده و شبکه محمد صادق دوستی علت وجود پیامهای اختیاری یا وابسته به موقعیت – 1 انواع مدلهای اعتماد: طرفین هیچ کلید مشترکی از هم ندارند ()Anonymous DH طرفین از هم کلید متدارن ( Pre-Shared Keyیا )PSKدارند؛ مشهور به .TLS-PSK کارگزار ،کارخواه ،یا هر دو از هم گواهی دیجیتاش دارند. • مبتنی بر ( RSAدو نوع RSA :فدط برای امضا؛ RSAبرای امضا و رمز) • مبتنی بر ( DSAدو نوع :شامل پارامترهای DH؛ بدون پارامترهای )DH Fixed DH 18 / 79 امنیت داده و شبکه Ephemeral DH محمد صادق دوستی علت وجود پیامهای اختیاری یا وابسته به موقعیت – 2 نوع پروتکل مورد استفاده جهت تبادش کلید: انتداش کلید ( :)Transportمعموالً مبتنی بر RSA تبادش کلید :معموالً مبتنی بر DH استفاده از DHبه دلیل فراهم آوردن امنیت پیشرو ترجیح دارد. DH با امنیت مساوی RSAشدیداً کندتر است. اسررتفاده از DHروی خمهررای بیضرروی ()Elliptic Curves معررروف برره E( ECDHEانتهررایی کوتررهنوشررت Exchange است). 19 / 79 امنیت داده و شبکه محمد صادق دوستی 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 محمد صادق دوستی امنیت داده و شبکه 20 / 79 زیر پروتکل هشدار در صورتی که در حین اجررای پروتکرل SSL/TLSخطرایی رخ دهد ،یا طرفین بخواهند پیامهای کنترلری بفرسرتند ،زیرر پروتکرل هشدار اجرا میشود. شامل دو بایت :سطح هشدار ،و کد هشدار سطح هشدار میتواند ( warningمددار )1یا ( fatalمدردار )2 باشد. سطح هشدار fatalبالفاصله باعث بسته شدن اتصاش میشود. سایر اتصالها روی نشست جراری ممکرن اسرت ادامره یابنرد ،ولری اتصاش جدیدی اجازه تشکیل نخواهد داشت. 21 / 79 امنیت داده و شبکه محمد صادق دوستی نمونههایی از زیر پروتکل هشدار unexpected_message bad_record_mac handshake_failure certificate_revoked certificate_expired close_notify محمد صادق دوستی نمونهای از پیام کنترلی امنیت داده و شبکه 22 / 79 انواع Payloadزیر پروتکل رکورد در یک نگاه 23 / 79 امنیت داده و شبکه محمد صادق دوستی فهرست مطالب معرفی و تاریخچه SSL/TLS در سطح باال TLS در عمل جزئیات TLS Heartbleed 24 / 79 امنیت داده و شبکه محمد صادق دوستی مثال :اطالعات فایرفاکس از رمزنگاری Gmail 25 / 79 امنیت داده و شبکه محمد صادق دوستی واکاوی بیشتر 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 محمد صادق دوستی امنیت داده و شبکه 26 / 79 نقشه راه در ادامه ،سعی میکنیم تا TLSرا در عمل بررسی کنیم. با توجه به گستردگی پروتکل ،امکان بررسری تمرام حالتهرا وجرود ندارد. دو حالت خاص: حالت :1کلید عمومی RSA؛ انتداش کلید با RSA حالت :2کلید عمومی RSA؛ تبادش کلید DH Apache + OpenSSL روی Ubuntuبه عنوان کارگزار Firefox به عنوان کارخواه 27 / 79 امنیت داده و شبکه محمد صادق دوستی جزئیات پیکربندی TLSبا about:configدر فایرفاکس 28 / 79 امنیت داده و شبکه محمد صادق دوستی 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 )mod_ssl( آپاچیSSL فعاشسازی و پیکربندی ماژوش محمد صادق دوستی امنیت داده و شبکه 29 / 79 mod_ssl پیکربندی ماژول : فعاشسازی sudo a2enmod ssl : پیکربندی /etc/apache2/sites-available/default-ssl.conf SSLCertificateFile /etc/apache2/ssl/server.crt SSLCertificateKeyFile /etc/apache2/ssl/server.key : راهاندازی مجدد آپاچی sudo /etc/init.d/apache2 restart محمد صادق دوستی امنیت داده و شبکه 30 / 79 تنظیمات امنیتی در ماژول mod_ssl آنچرره تررا کنررون گفترره شررد ،حررداقل تنظیمررات برررای راهانرردازی HTTPSدر آپاچی بود. برای امنیت بیشتر ،باید تنظیمات دیگری در فایل ssl.conf آپرراچی انجررام داد (پررس از انجررام تنظیمررات آپرراچی بایررد مجرردداً راهاندازی شود). در اسالیدهای بعدی دو تنظیم مهم را بررسی میکنیم: نسخه SSL/TLS الگوریتمهای رمز و پروتکلهای مورد استفاده 31 / 79 امنیت داده و شبکه محمد صادق دوستی نسخه SSL/TLS # The protocols to enable. # Available values: all, SSLv3, TLSv1, TLSv1.1, TLSv1.2 is no longer supported # # SSL v2 SSLProtocol all در حاش حاضر امنترین تنظیم TLSv1.2 ،است. البته الزم است پشتیبانی کارخواهها از این نسخه از پروتکل در نظر گرفته شود. 32 / 79 امنیت داده و شبکه محمد صادق دوستی الگوریتمهای رمز و پروتکلهای مورد استفاده # # # # # # 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 . عالمت تعجب (!) به معنی عدم استفاده است (فع رالً معررادشauthentication یعنرری پروتکررل برردونaNull .)Anonymous DH . در مثاش فوق فدط رمزهای با امنیت متوسط و باال مورد قبولند محمد صادق دوستی امنیت داده و شبکه 33 / 79 مجبور کردن کارگزار به عدم استفاده از DH به طور پی فرض ،کارگزار از پروتکل ECDHبرای تبادش کلیرد استفاده میکند. در جهت حفظ محرمانگی پیشرو در حالت اوش میخواهیم انتداش کلید از طری RSAانجرام شرود؛ به همین دلیل ECDHرا سمت کارگزار غیر فعاش میکنیم. /etc/apache2/mods-enabled/ssl.conf SSLCipherSuite !ECDH:!DH:HIGH:MEDIUM:!aNULL:!MD5 34 / 79 امنیت داده و شبکه محمد صادق دوستی مجبور کردن مرورگر به عدم استفاده از DH همچنین میتوانستیم از فایرفاکس بخواهیم که از DHاستفاده نکند. 35 / 79 امنیت داده و شبکه محمد صادق دوستی حالت – 1تعامل RSAبین کارخواه و کارگزار با استفاده از Wiresharkتعامل را شنود میکنیم. 36 / 79 امنیت داده و شبکه محمد صادق دوستی در صورت اعتماد به کلید عمومی کارگزار و ادامه پروتکل C Client Hello Server Hello Certificate Server Hello Done محمد صادق دوستی S C S C S Client Key New Session Exchange Ticket Change Cipher Change Cipher Spec Spec Enc. Handshake Enc. Handshake Message Message امنیت داده و شبکه 37 / 79 Client Helloروی پروتکل رکورد پروتکل رکورد از نسخه 1.0 از TLSاستفاده کرده است. 38 / 79 امنیت داده و شبکه محمد صادق دوستی داخل پیام Client Hello پروتکل دستداد از نسخه 1.2 از TLSاستفاده کرده است. با محدود کردن رمزهرا در فایرفررراکس ،هررریچ روشرری غیررر از RSA بررررای تبرررادش کلیرررد پیشنهاد نمیشود. 39 / 79 امنیت داده و شبکه محمد صادق دوستی پاسخ کارگزار داخل پیامهای رکورد دقت :کارگزار نسخه 1.2از TLSرا پیشنهاد میدهد. 40 / 79 امنیت داده و شبکه محمد صادق دوستی داخل پیام Server Hello کررارگزار یکرری از رمزهررای پیشررنهاد شررده توسط مرورگر را میپذیرد. 41 / 79 امنیت داده و شبکه محمد صادق دوستی داخل پیام Certificate 42 / 79 امنیت داده و شبکه محمد صادق دوستی داخل پیام Server Hello Done 43 / 79 امنیت داده و شبکه محمد صادق دوستی پاسخ کارخواه داخل پیامهای رکورد کوتررراهترین پروتکرررل امنیتی شبکه! 44 / 79 امنیت داده و شبکه محمد صادق دوستی داخل پیام Client Key Exchange کارخواه Pre-Master Secret ،را تولید نموده ،آن را برا کلیرد عمومی کارگزار رمز و ارساش میکند. 6کلید نشست از روی Pre-Master Secretاستخراج شده و از این پس تدریباً همه چیز رمز شده خواهد بود. سررلاش :آیررا مرریترروان از Wiresharkخواسررت کرره پیامهررا را رمزگشایی کند؟ 45 / 79 امنیت داده و شبکه محمد صادق دوستی رمزگشایی پیامها توسط Wiresharkبا کلید خصوصی کارگزار 46 / 79 امنیت داده و شبکه محمد صادق دوستی رمزگشایی پیامها توسط Wiresharkبا کلید خصوصی کارگزار 47 / 79 امنیت داده و شبکه محمد صادق دوستی کل پروتکل -قبل و بعد از رمزگشایی 48 / 79 امنیت داده و شبکه محمد صادق دوستی پاسخ کارخواه -قبل و بعد از رمزگشایی 49 / 79 امنیت داده و شبکه محمد صادق دوستی پاسخ کارخواه -قبل و بعد از رمزگشایی برررا الصررراق MACو سررپس رمررز کررردن آن، کارخواه به کارگزار اثبات میکند که کلید را دارد. 50 / 79 امنیت داده و شبکه محمد صادق دوستی پاسخ کارگزار -قبل و بعد از رمزگشایی 51 / 79 امنیت داده و شبکه محمد صادق دوستی پاسخ کارگزار -قبل و بعد از رمزگشایی 52 / 79 امنیت داده و شبکه محمد صادق دوستی Session Ticketچیست؟ Session Ticket یکی از توسعههای TLSاست. در RFC 5077تعریف شده است. هدف این است که نیرازی نباشرد کرارگزار بره ازای هرر کرارخواه، اطالعات وضعیت ( )Stateنگه دارد. اطالعات وضعیت کارگزار از طری Session Ticketدر اختیرار کارخواه قرار میگیرد. کارخواه در تماسهای بعدی از آن استفاده میکند. از نظر مفهومی شبیه بلیت در کربروس است. 53 / 79 امنیت داده و شبکه محمد صادق دوستی حالت – 2تعامل DHبین کارخواه و کارگزار در سررمت کررارگزار ،تنظرریم !ECDH:!DHرا حررذف و آپرراچی را مجدداً راهاندازی میکنیم. در سمت کارخواه ،یکی از پروتکلهای مربوط به DHرا فعاش مینماییم (در بخ about:configفایرفاکس). برای سادگی ECDH ،را فعاش نمیکنیم. مجدداً تعامل را با Wiresharkبررسی میکنیم. چرا حتی با داشتن کلید خصوصی کارگزار Wireshark ،نمریتوانرد پیامهای رمز شده را رمزگشایی نماید؟ امنیت پیشرو! 54 / 79 امنیت داده و شبکه محمد صادق دوستی عدم امکان رمزگشایی پیامها حتی با داشتن کلید خصوصی راهکار :اگر بتوان به مرورگر گفت که از Pre-Master Secret کپی بگیرد ،قادریم پیامها را حتی بردون داشرتن کلیرد خصوصری کارگزار رمزگشایی کنیم. چطور؟ 55 / 79 امنیت داده و شبکه محمد صادق دوستی کتابخانه NSSو متغیر محیطی مرورگرهررایی مثررل Firefoxو Chromeبرررای رمزنگرراری از کتابخانرهای برره نررام NSSکرره توسررط Mozillaتوسررعه یافترره استفاده میکنند. کوتهنوشت Network Security Services اطالعات بیشتر: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS میتوان با تنظیم متغیر محیطری ،SSLKEYLOGFILEبره NSS گفت که Pre-Master Secretرا در ی 56 / 79 امنیت داده و شبکه فایل ذخیره کند. محمد صادق دوستی تنظیم متغیر محیطی NSSدر ویندوز 57 / 79 امنیت داده و شبکه محمد صادق دوستی تنظیم متغیر محیطی NSSدر ویندوز 58 / 79 امنیت داده و شبکه محمد صادق دوستی تنظیم متغیر محیطی NSSدر ویندوز 59 / 79 امنیت داده و شبکه محمد صادق دوستی نکات مهم پس از تنظیم متغیر محیطی ،الزم است مرورگر را بسرته و مجردداً باز نمایید. هر برنامه تنها هنگام باز شدن متغیرهای محیطی را میخواند. الزم است مرورگر به فایل تعیین شرده ( )ssl.logدسترسری writeداشته باشد. تنظیم کنترش دسترسی به فایل حاش مجدداً به صفحه HTTPSمد نظرر برویرد و تعرامالت را برا Wiresharkذخیره نمایید. 60 / 79 امنیت داده و شبکه محمد صادق دوستی محتوای فایل ssl.log # SSL/TLS secrets log file, generated by NSS …CLIENT_RANDOM 1723a3ca6b5a… e99d65eeaa5e قالب فایل در نشانی زیر مستند شده است: https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/Key_Log_Format هر خط از فایرل ،یرا برا RSAشرروع مریشرود (انتدراش کلیرد) یرا برا ( CLIENT_RANDOMتبادش کلید .)DH در حالت دوم ،دو عدد بعد از CLIENT_RANDOMمیآید: عدد نخست ( 64بایتی) :نانس کارخواه عدد دوم ( 96بایت) :مددار Pre-Master Secret 61 / 79 امنیت داده و شبکه محمد صادق دوستی تنظیم نشانی فایل ssl.logدر Wireshark 62 / 79 امنیت داده و شبکه محمد صادق دوستی قبل و بعد از رمزگشایی 63 / 79 امنیت داده و شبکه محمد صادق دوستی یافتن کلید مرتبط به هر نشست Wireshark برا کمر مدردار Randomدر پیرام Client Helloمتوجه میشود که از کدام سطر ssl.logباید بررای رمزگشایی استفاده نماید. 64 / 79 امنیت داده و شبکه محمد صادق دوستی یافتن کلید مرتبط به هر نشست Wireshark برا کمر مدردار Randomدر پیرام Client Helloمتوجه میشود که از کدام سطر ssl.logباید بررای رمزگشایی استفاده نماید. 65 / 79 امنیت داده و شبکه محمد صادق دوستی تبادل الگوریتمهای رمز پس از فعالسازی DH Client Hello Server Hello 66 / 79 امنیت داده و شبکه محمد صادق دوستی Server Key Exchange 67 / 79 امنیت داده و شبکه محمد صادق دوستی Client Key Exchange مددار Pre-Master Secretبرابر کلید تبرادش شرده در DH است. 68 / 79 امنیت داده و شبکه محمد صادق دوستی فهرست مطالب معرفی و تاریخچه SSL/TLS در سطح باال TLS در عمل جزئیات TLS Heartbleed 69 / 79 امنیت داده و شبکه محمد صادق دوستی )RFC 5246 (تعریف درmaster secret تولید master_secret = PRF( pre_master_secret, "master secret", ClientHello.random || ServerHello.random) . بایتی است48 مدداریmaster secret )Pseudo-Random Function( یا تابع شبه تصادفیPRF .)seed( و بذر،)label( برچسب، مدداری مخفی:ورودی . مدداری تصادفی به طوش دلخواه:خروجی محمد صادق دوستی امنیت داده و شبکه 70 / 79 PRF در TLSاز HMACبرای ساخت PRFاستفاده میشود. ،TLS 1.2استفاده از SHA-256یرا بهترر را بررای HMAC توصیه میکند. = )PRF(secret, label, seed )P_hash(secret, label || seed 71 / 79 امنیت داده و شبکه محمد صادق دوستی کلید نشست6 استخراج key_block = PRF( master_secret, "key expansion", ServerHello.random || ClientHello.random) اسرتخراجkey_block کلید نشست به ترتیب زیر از روی6 :میشوند Client write MAC secret Server write MAC secret Client write encryption key Server write encryption key Client write encryption IV Server write encryption IV محمد صادق دوستی امنیت داده و شبکه 72 / 79 MAC_write_key مثال از کاربرد MAC = MAC_Algorithm(MAC_write_key, seq_num || TLSCompressed.type || TLSCompressed.version || TLSCompressed.length || TLSCompressed.fragment) محمد صادق دوستی امنیت داده و شبکه 73 / 79 فهرست مطالب معرفی و تاریخچه SSL/TLS در سطح باال TLS در عمل جزئیات TLS Heartbleed 74 / 79 امنیت داده و شبکه محمد صادق دوستی آسیبپذیری خونریزی قلبی ()Heartbleed ی آسیبپذیری بسیار معرروف کره در سراش 2014در نررمافرزار OpenSSLکشف شد. تأثیر روی میلیونها کارگزار HTTPSدر دنیا! آسیب پذیری در پیادهسازی پروتکرل Heartbeat؛ توسرعهای از TLSتعریف شده در .RFC 6520 این پروتکل برای بررسی و زنده نگهداشتن اتصاش است. آسیبپذیری از نوع سرریز بافر است. از 2011در کد OpenSSLوجود داشته است. 75 / 79 امنیت داده و شبکه محمد صادق دوستی چگونگی سوء استفاده از آسیبپذیری Heartbleed 76 / 79 امنیت داده و شبکه محمد صادق دوستی چگونگی سوء استفاده از آسیبپذیری Heartbleed 77 / 79 امنیت داده و شبکه محمد صادق دوستی چگونگی سوء استفاده از آسیبپذیری Heartbleed 78 / 79 امنیت داده و شبکه محمد صادق دوستی پایان صفحه درس: http://ce.sharif.edu/courses/94-95/1/ce442-1/ مراجعه حضوری جهت رفع اشکاش :شنبهها 15الی 16 (طبده پنجم دانشکده ،درب شیشهای جنب آسانسور) یا در زمانهای دیگر با قرار قبلی یا به وسیله رایانامهdousti@ce : 79 / 79 امنیت داده و شبکه محمد صادق دوستی
© Copyright 2026 Paperzz