امروز
Skip Navigation Links

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

به سفارش مرکز ماهر – سازمان فناوری اطلاعات – وزارت ارتباطات و فناوری اطلاعات

 در حال حاضر مهم‌ترین پروتکل رمزنگاری که در سطح اینترنت برای رمزنگاری داده‌های لایه کاربرد و تأمین امنیت ارتباطات استفاده می‌شود، پروتکل SSL/TLS است. امروزه پروتکل SSL/TLS در اغلب سامانه‌های مهم الکترونیکی ازجمله بانکداری الکترونیک، پست الکترونیک و غیره مورد استفاده قرار می‌گیرد. عملاً هر وب‌سایتی که آدرس آن با عبارت HTTPS شروع می‌شود، در حال استفاده از پروتکل SSL/TLS است.

 پیاده‌سازی و استفاده ایمن از این پروتکل دارای جزئیات فنی متعددی است که می‌بایست به‌درستی رعایت شود. در صورت عدم رعایت ملاحظات و نکات امنیتی در پیاده‌سازی این پروتکل، محرمانگی و یکپارچگی داده‌های مبادله شده به خطر می‌افتد. برخی از حملاتی که تابه‌حال بر روی این پروتکل شناسایی شده است به مهاجمین امکان شنود داده‌ها، دستکاری در داده‌ها یا ایجاد اختلال در ارتباط را می‌‎‌دهد.

تحلیل جامع یک سرور که دارای پروتکل SSL/TLS است به‌صورت دستی بسیار زمان‌بر و مشکل است و می‌تواند مستعد خطا باشد. علت این امر تعدد بالای ارزیابی‌های موردنیاز و گزارش‌های مداوم از آسیب‌پذیری‌های امنیتی جدید در این نوع سیستم‌ها است. بر طبق آخرین‌ ارزیابی‌های بین‌المللی صورت‌گرفته، تنها 34٪ از سایت‌های استفاده‌کننده، این مکانیسم‌ها را با سطح امنیتی قابل‌قبول پیاده‌سازی کرده‌اند. بنابراین ارزیابی مداوم و به‌روزرسانی‌های به‌موقع سرورهای استفاده‌کننده‌ی SSL/TLS از اهمیت ویژه‌ای برخوردار است.

در این پروژه که در مرکز پژوهشی آپا، دانشگاه صنعتی امیرکبیر انجام شده، ابزاری توسعه داده شده است که سطح امنیتی یک سرور را بر اساس اعتبار گواهی‌های دیجیتال، پروتکل‌ها و الگوریتم‌های رمزنگاری بکار برده شده و همچنین نقص‌های امنیتی موجود در پیاده‌سازی و پیکربندی سیستم‌های تصدیق اصالت، رتبه‌بندی می‌کند. این پروژه به سفارش مرکز ماهر، سازمان فناوری اطلاعات انجام شده و در حال حاضر مراحل تست نهایی را می‌گذراند.

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

 

 

فاکتورهای مورد ارزیابی توسط ابزار

ردیف

آزمون امنیتی

توضیحات

1

Certificate Validity

مجموعه موارد مربوط به تصدیق اصالت و اعتبار گواهی از جمله تاریخ اعتبار گواهی، درستی امضاء رقمی و نام‌های دامنه مربوط به گواهی بررسی شده و نتایج گزارش داده می‌شود.

2

Certification Paths

زنجیره گواهی‌های صادرکننده‌ی گواهی در حال تحلیل ارزیابی شده و درصورتی‌که صادرکننده‌های نهایی جزء CA های موجود در لیست صادرکننده‌های قابل اعتماد باشند، مسیر گواهی تایید می‌شود.

3

Cipher Suites

هر سرور SSL/TLS مجموعه‌ای از سیستم‌های رمز را پشتیبانی می‌کند که برخی از آنها ضعیف یا ناامن هستند. در این مرحله تمامی Cipher Suite های پشتیبانی شده توسط سرور به دست آورده شده و بر اساس میزان امنیت مهیاکننده رتبه‌بندی می‌شوند.

4

Cipher Strength Analysis

با توجه به الگوریتم‌های رمزنگاری استفاده شده در سرور و طول کلید آن‌ها قدرت الگوریتم‌های رمزنگاری استفاده شده برآورد می‌شود.

5

Revocation Status

علاوه بر تأیید اعتبار گواهی‌ها، لازم است تا لیست‌های ابطال کلید نیز بررسی شوند و درصورتی‌که گواهی معتبر نباشد، اطلاعات مربوطه به کاربر ارائه گردد.

6

Key Exchange

پروتکل‌های تبادل کلید اهمیت زیادی در امنیت SSL/TLS دارند و نسخه‌های جدید بکار برده شده دارای امکانات پیشرفته‌ هستند که در این ارزیابی پشتیبانی از آن‌ها بررسی شده و سطح امنیت پروتکل تبادل کلید سرور برآورد می‌شود.

7

Supporting Protocols

در این ارزیابی ابزار سعی می‌کند با استفاده از نسخه‌های مختلف SSL/TLS با سرور تعامل کند و بر اساس نتایج دریافتی، امکان پشتیبانی از آن پروتکل را مشخص کند. بدین منظور پروتکل‌های SSLv2، SSLv3، TLS 1.0، TLS 1.1 و TLS 1.2 بررسی می‌شوند. با توجه به اینکه برخی از این پروتکل‌ها دارای آسیب‌پذیری‌های شناخته شده هستند، در صورت پشتیبانی از آنها هشدارهای مناسب نمایش داده می‌شود.

8

Heartbeat Extension

افزونه ضربان قلب یک پروتکل جدید برای TLS/DTLS است که قابلیت زنده نگه داشتن[1] بدون انجام تعاملات اولیه را مهیا می‌کند. ابزار ما با استفاده از تعاملات مرتبط پشتیبانی از این پروتکل را در سرور بررسی می‌کند.

9

Debian Weak keys

یک باگ امنیتی در بسته دبیان OpenSSL است که باعث تولید گواهی‌های SSH, SSL با کلیدهای بسیار ضعیف می‌شود. در صورتی که گواهی‌های مورد تحلیل از نسخه‌های آسیب‌پذیر استفاده کرده باشند، ابزار یک هشدار جدی به منظور بروزرسانی بسته مربوطه به کاربر ارائه می‌کند.

10

Heartbleed Vulnerability

یک آسیب‌پذیری جدی در کتابخانه رمزنگاری OpenSSL است. این ضعف امکان سرقت داده‌های محافظت شده توسط SSL/TLS را ممکن می‌سازد. حمله کننده می‌تواند از طریق اینترنت حافظه سیستم‌های حفاظت شده توسط نسخه‌های آسیب‌پذیر نرم افزار OpenSSL را بخواند. در این ارزیابی وجود آسیب‌پذیری Heartbleed بررسی شده و در صورت آسیب‌پذیر بودن سرور، هشدارهای مربوطه نمایش داده می‌شود.

11

RC4 Support

بدلیل وجود CBC suite آسیب‌پذیر در RC4 مربوط به نسخه TLS 1.0 و قبل از آن، از سال 2011 استفاده گسترده‌ای از RC4 صورت گرفت بطوریکه حدود 50٪ از ترافیک TLS از آن استفاده می‌کنند. اما در سال 2013 مشخص شد که دارای نقاط ضعف قابل بهره برداری است. بنابراین بهتر است که از RC4 استفاده نشود.

12

Forward Secrecy

با استفاده از Forward Secrecy اطمینان حاصل می‌شود که در صورتی یک کلید جلسه از یک مجموعه از کلیدهای طولانی مدت در معرض خطر قرار گرفته باشد، نمی‌تواند در آینده مورد سوء استفاده قرار بگیرد. در این ارزیابی وجود محرمانگی روبه‌جلو بررسی می‌شود.

13

Strict Transport Security (HSTS)

این مکانیزم استفاده اجباری از HTTPS را در سرورهای وب امکان‌پذیر می‌سازد. در صورتی که سرور درحال تحلیل از نوع وب سرور باشد، وجود مکانیزم HSTS بررسی می‌گردد.

14

Uses common DH primes

پروتکل Diffie-Hellman یکی از الگوریتم‌های متداول برای تبادل کلید است که یک مجموعه زوج کلید شناخته شده از این الگوریتم وجود دارد که در صورت استفاده شدن در سرورها، هیچ گونه امنیتی را برآورده نمی‌کند. در این آزمایش زوج کلیدهای سرورهای درحال تحلیل بررسی می‌شوند و در صورتی که جزء موارد عمومی شناخته شده باشند، یک هشدار جدی برای تغییر کلیدها به کاربر داده می‌شود.

15

POODLE Attack

یک نوع حمله Man-in-the-Middle است که با بهره‌برداری از آن حمله کننده می‌تواند با تعداد محدودی درخواست SSL/TLS یک پیام جعلی را رمز کند. ابزار ما وجود این آسیب‌پذیری‌ را در سرور تشخیص داده و به تحلیلگر گزارش می‌دهد.

 

 

شکل 1: نمایی از رابط کاربری ابزار

 

 

Skip Navigation Links

راهنما

آمار بازدید سایت