برای مطالعه قسمت قبل آموزش رایگان دوره CEH اینجا کلیک کنید.
زیرساخت کلید عمومی
زیرساخت کلید عمومی (PKI) چارچوبی متشکل از سختافزار، نرمافزار و خطمشیهایی است که برای مدیریت، ایجاد، ذخیره و توزیع کلیدها و گواهیهای دیجیتال استفاده میشود. اگرچه PKI برای گروههای کوچک لازم نیست، اما با بزرگتر شدن گروهها، تبادل کلیدها دشوار میشود. برای پاسخ به این نیاز، PKI توسعه داده شد. چارچوب PKI از مولفههای زیر ساخته شده است:
■ certificate authority : در رمزنگاری یک مرجع صدور گواهی دیجیتال (certificate authority) یا (certification authority) یا (CA) یک شخص حقیقی یا حقوقی است که گواهیهای دیجیتال (گواهیهای کلید عمومی) را صادر میکند. گواهی دیجیتال تضمین میکند که موضوع گواهی مورد نظر ما به اسم همان صاحبی است که در آن گفته شده است. این گواهی به دیگران (کسانی که بر اساس این گواهی کار خود را انجام میدهند) اجازه میدهد که به امضاءها و بیانیههایی که بر اساس کلید خصوصی گواهی یاد شده تولید شدهاند اطمینان کنند. در این مدلِ ارتباط با اعتماد، یک مرجع صدور گواهی دیجیتال (CA) شخص ثالث مورد اطمینانی است که از سوی هر دو سمت گواهی (موضوع یا همان صاحب گواهی و شخص اعتمادکننده به گواهی) معتمد به حساب میآید. گواهیها مشخصههایی از طرحهای گواهی دیجیتال (PKI) هستند.
■ Certificate revocation list : بهطور معمول برای اعلام عدم اعتبار گواهی از فهرست گوایهای باطل شده (CLR) استفاده میشود. تاریخ ابطال، شماره سریال گواهیهای نامعتبر به همراه امضا صادرکننده در فهرست گواهینامه نامعتبر قرار میگیرد. از فهرست فوق ضمن آنکه برای تایید صحت امضا استفاده میشود، گزارش مشکلات مربوطه به گواهینامهها نیز در آن قرار میگیرد. هنگام درخواست گواهی دیجیتال، هر کاربری میتواند CRL را بررسی کند تا صحت گواهی را بررسی کند. یک گواهی به خطر افتاده یا گواهی که قبل از انقضا اطلاعات آن باطل شده است توسط CRL گزارش میشود.
■ Registration authority : مرجع ثبت (CA) با هدف کم کردن بارکاری فهرست ابطال گواهی استفاده میشود. RA نمیتواند یک گواهینامه تولید کند، اما میتواند درخواستهایی را بپذیرد، هویت مالک را تأیید کند و اطلاعات را برای تولید گواهی به CA منتقل کند.
■ Certificate server : پایگاه دادهای متشکل از گواهیهای ذخیره شده است.
■ X.509 standard: استاندارد پذیرفته شده برای گواهینامههای دیجیتال است. یک گواهی X.509 شامل مولفههای زیر است:
■ Version
■ Serial number
■ Algorithm ID
■ Issuer
■ Validity
■ Not before
■ Not after
■ Subject
■ Subject public key info
■ Public key algorithm
■ Subject public key
■ Issuer unique identifier (optional)
■ Subject unique identifier (optional)
■ Extensions (optional)
مدلهای قابل اعتماد
سازمانهای کوچک به راحتی میتوانند به ارتباطات درون و برون سازمانی اعتماد کنند، اما هنگامی که شما نیاز به برقراری ارتباط در سازمانهای بزرگ با مشتریان خارجی یا اشخاص ثالث دارید، تهیه یک مدل کاری قابل اعتماد مهم است. سازمانها معمولاً خطمشیهای تجاری و امنیتی خود را بر مبنای یکی از چندین مدل تایید اعتماد مطرح Single-Authority Trust، Hierarchical Trust یا Web of Trust را دنبال میکنند.
پروتکلها، برنامهها و حملات
انواع مختلفی از راهحلهای رمزنگاری را میتوان در لایههای مختلف از کاربردی گرفته تا لایه فیزیکی استفاده کرد. غالباً، یک آزمایش تست نفوذ پروتکلهایی که آشکارا ناامن هستند، را نشان میدهد. پروتکلهایی شبیه به پروتکل انتقال فایل (FTP)، پروتکل انتقال پست الکترونیکی ساده (SMTP)، پروتکل انتقال ابر متن (HTTP) و Telnet از جمله این موارد هستند. همه این برنامهها اطلاعات را به شکل متن قابل خواندن منتقل میکنند. تمام برنامهها و پروتکلهای مورد بحث در این بخش را میتوان با راهحلهای ایمنتری جایگزین کرد. به همین دلیل یک هکر اخلاقمدار باید این مشکلات را شناسایی کند و به سازمانها در ساخت زیرساختهای امنتر پیشنهادهای کارآمدی را ارائه کند.
■ Secure/Multipurpose Internet Mail Extensions : توسعه چند منظوره پست الکترونیک اینترنت/امن (S/MIME) استانداردی برای رمزنگاری با کلید عمومی و امضایی از داده MIME است. S/MIME، خدمات امنیتی رمزنگاری را برای برنامههای پیام الکترونیکی فراهم میکند که از آن جمله میتوان به احراز هویت، یکپارچگی پیام، عدم انکار مبدأ (با استفاده از امضاهای دیجیتال)، حفظ حریم خصوصی و امنیت داده (با استفاده از رمزنگاری) اشاره کرد.S/MIME دو مولفه ارزشمند امضا دیجیتال و رمزنگاری کلید عمومی را به ایمیل استاندارد اضافه میکند.
■ Pretty Good Privacy : شبیه PKI است، اما CA ندارد. رمزگذاری در پیجیپی از ترکیب پشتهم تابع درهمساز رمزنگارانه، فشردهسازی دادهها، الگوریتم کلید متقارن و رمزنگاری کلید عمومی استفاده میکند. هر مرحله از یکی از چند الگوریتم پشتیبانی شده بهره میبرد. کلیدهای عمومی همواره به یک نام کاربری یا آدرس یک ایمیل مرتبط هستند. پیچیپی بیشتر برای حفاظت و افزایش امنیت موارد زیر استفاده میشود:
امضای دیجیتال دادهها
رمزگذاری و رمزنگاری متنها
ایمیلها
پروندههای دیجیتال
پوشههای دیجیتال
دیسک سخت و مولفههای آن
در مکانیزم فوق کاربران کلیدهای خود را امضا و منتشر میکنند. PGP کلید عمومی را در فایلی بهنام pubring.pkr ذخیره میکند. کلیدهای در این فایل قابلیت اشتراکگذاری دارند. کلید مخفی کاربر در فایلی بهنام secring.skr قرار میگیرد. اگر هکری این فایل را به دست آورد قادر به شنود ارتباط کاربر خواهد بود. PGP را میتوان برای حفظ امنیت ایمیل و رمزنگاری دادهها استفاده کرد. این برنامه برای ارائه مکانیزم رمزگذاری سطح بالا برای کاربرانی که اطلاعات خیلی حساسی ندارند طراحی شده است.
■ Secure Shell (SSH): پروتكل فوق اجازه میدهد دو کامپیوتر از راه دور و به شکل ایمن به یکدیگر دسترسی داشته باشند. SSH بهطور پیشفرض یک اتصال رمزگذاری شده بین یک سرویس دهنده SSH و یک سرور SSH روی 22 برقرار میکند. مراحل مورد نیاز برای تنظیم یک جلسه SSH در شکل زیر نشان داده شده است.
Transport Layer Security: پروتکل امنیتی لایه انتقال (Transport Layer Security)، بر پایه لایه سوکتهای امن(Secure Sockets Layer) که یکی از پروتکلهای رمزنگاری است برای تأمین امنیت ارتباطات از طریق اینترنت بنا و برای اطمینان از هویت طرف مقابل و تبادل کلید متقارن از گواهی X.509 و رمزنگاری نامتقارن استفاده میکند. بسیاری از وبسایتها برای فراهم کردن بستری مناسب جهت حفظ کردن اطلاعات محرمانه کاربران مانند شماره کارت اعتباری از این پروتکل استفاده میکنند. SSL یک پروتکل مستقل از لایه کاربرد است (Application Independent)، بنابراین، پروتکلهایی مانند FTP، HTTP، تلنت و شبکه راه دور قابلیت استفاده از آن را دارند.
IPsec: Internet Protocol security عبارت است از مجموعهای از چندین پروتکل که برای ایمنسازی پروتکل اینترنت در ارتباطات به وسیله احراز هویت و رمزگذاری در هر بسته (packet) در یک سیر داده به کار میرود. این پروتکل محصول مشترک مایکروسافت و سیسکو سیستمز است که در نوع خود جالب توجه است. IPsec بر خلاف دیگر پروتکلهای امنیتی نظیر SSL, TSL, SSH که در لایه انتقال (لایه ۴) به بالا قرار دارند در لایه شبکه یا همان لایه ۳ مدل مرجع OSI کار میکند یعنی لایه که آی پی در آن قرار دارد که باعث انعطاف بیشتر این پروتکل میشود بهطوریکه میتواند از پروتکلهای لایه ۴ نظیر تی سی پی و یو دی پی محافظت کند. مزیت بعدی IPsec به نسبت بقیه پروتکلهای امنیتی نظیر اس اس ال این است که نیازی نیست برنامه بر طبق این پروتکل طراحی شود. خانواده پروتکل IPSec شامل دو پروتکل است. یعنی سرآیند احراز هویت یا AH یا همان authentication header وESP هر دوی این پروتکلها از IPSec مستقل خواهد بود.
پروتکل AH
بهطور خلاصه پروتکل AH در واقع تأمینکننده سرویسهای امنیتی زیر است:
تمامیت داده ارسالی
تصدیق هویت مبدأ داده ارسالی
رد بستههای دوباره ارسال شده
این پروتکل برای تمامیت داده ارسالی از HMAC استفاده میکند و برای انجام این کار مبنای کارش را مبتنی بر کلید سری قرار میدهد که بار داده بسته و بخشهایی تغییرناپذیر سرآیند IP شبیه IP آدرس خواهد بود. بعد از اینکار این پروتکل سرآیند خودش را به آن اضافه میکند.
■ Point-to-Point Tunneling Protocol : توسط گروهی متشکل از شرکتهایی همچون مایکروسافت، 3Com و Ascend طراحی شده است. پروتکل PPTP از دو مؤلفهانتقال که وظیفه حفظ ارتباط مجازی را برعهده دارد و و رمزگذاری که اصل محرمانگی را تضمین میکند ساخته شده است. پروتکل فوق بهطور گسترده در ارتباط با VPN استفاده میشود.
■ Encrypting File System: مکانیزم رمزنگاری طراحی شده توسط مایکروسافت است که به شکل یک مولفه از پیش ساخته شده در سیستمعامل ویندوز برای رمزنگاری فایلها و پوشهها استفاده میشود.
■ BitLocker: بیتلاکر الگوریتمی است که بر مبنای ماژول TPM کار کرده و یک الگوی رمزنگاری قدرتمند برای محافظت از هارددیسکهای ثابت یا قابل حمل ارائه میکند. برای فعال کردن مکانیزم فوق باید مجوز مدیریتی داشته باشید. با این حال، حتی با نصب BitLocker یک مهاجم ممکن است با اجرای یک بوت سرد بتواند سیستم را با مشکل جدی روبرو کند. برای پیادهسازی این نوع حمله مهاجم باید به سیستم دسترسی داشته باشد تا بتواند دادههای درون حافظه اصلی را استخراج کند. برای اطلاعات بیشتر در مورد این حمله به این آدرس مراجعه کنید.
رمزگذاری و ابزارهای شکستن الگوهای رمزگذاری
حمله به سیستمهای رمزنگاری موضوع جدیدی نیست. اگر یک هکر تصور کند اطلاعات ارزشمندی روی یک سامانه یا شبکه سازمانی وجود دارد، سعی میکند آن اطلاعات را به دست آورد. حملات رمزنگاری میتوانند از روشهای مختلفی برای دور زدن مکانیزمهای رمزنگاری استفاده کنند. هکر ممکن است روی ضعف در کدنویسی، الگوریتم رمزگذار یا پروتکل تمرکز کند یا حتا ممکن است به مکانیزم مدیریت کلید حمله کند. حتا اگر هکر نتواند دادهها را رمزگشایی کند، ممکن است بتواند اطلاعات دقیقی در ارتباط با نحوه نظارت بر جریان ترافیک شبکه بهدست آورد. به همین دلیل برخی از سازمانها سیستمهایی را برای رمزگذاری مداوم ترافیک شبکه به کار میگیرند. اینکار بیشتر توسط سازمانهای نظامی انجام میشود تا مانع پیادهسازی موفقیتآمیز حملات استنتاجی شوند. استنتاج زمانی رخ میدهد که یک حمله کننده متوجه شود روزنهای شود که اجازه میدهد برخی از رویدادهای تولید شده توسط سامانهها را شنود کند. بهطور مثال، برخی سازمانها غذای کارکنان خود از بیرون سازمان تهیه میکنند. حال اگر هکری زمان و میزان تحویل غذا را زیر نظر بگیرد، متوجه میشود کارمندان در چه زمانهایی مشغول اضافهکاری هستند و بر مبنای این اطلاعات قادر به پیادهسازی حملات هدفمند خواهد بود. انواع دیگر حملات پیرامون رمزنگاری شامل حملات شناخته شده به متون ساده، حملات مرد میانی و حملات متن ساده انتخابی هستند. جزییات هر یک از این حملات به شرح زیر است:
■ Known plain-text attack: در این مدل حمله هکر به متن ساده و سایفر بهکار گرفته شده در یک یا چند پیام نیاز دارد. ترکیب این دو پارامتر با یکدیگر به هکر اجازه استخراج کلید رمزنگاری و بازیابی فایلهایی که به شکل رمزنگاری فشرده شدهاند را میدهد.
■ Cipher-text only attack: در این حمله هکر باید پیام رمزنگاری شده و الگوریتمی که پیام را رمزنگاری کرده را بهدست آورد. بهطور مثال، نسخه اصلی WEP از الگوریتم RC4 استفاده میکند، در نتیجه اگر مدت زمان لازم برای شنود فراهم باشد هکر قادر به استخراج کلید WEP خواهد بود. در حملات سایفر هکر نیازی ندارد تا متن ساده را در اختیار داشته باشد و دسترسی به اطلاعات آماری در بیشتر موارد کافی است.
■ Man-in-the-middle attack: این حمله بر مبنای توانایی هکر در قرار گرفتن میان دو نقطه ارتباطی استوار است. زمانیکه اینکار انجام شود، هکر میتواند از رویکرد حمله مبتنی استنتاجی یا حمله cipher-text-only برای استخراج کلیدهای مبادله شده یا تنظیم یک حمله بازپخشی استفاده کند.
■ Replay attack: این مدل از حملات زمانی رخ میدهد که هکر سعی در تکرار یا ایجاد تغییر در مکانیزم انتقال رمزنگاری دارد. این حملات میتوانند مانع از بهکارگیری توکنهای مربوط به نشست شوند.
■ Side-channel attack: این مدل حملات زمانی رخ میدهد که هکر میتواند برخی مشکلات مربوط به سامانهها شبیه به زمیزان مصرف برق، پارازیت و.... را مشاهده کند. این حملات ارتباط با حملات سنتی شبیه به جستوجوی فراگیر یا بازپخشی ندارند. هکر اطلاعات بهدست آمده را تحلیل کرده و سعی میکند چگونگی عملکرد سامانه رمزنگاری را حدس بزند.
■ Chosen plain-text attack: حملات متن ساده انتخابی زمان رخ میدهد که هکر میتواند اطلاعات رمزنگاری شده را انتخاب کرده و یک کپی از دادههای رمزنگاری شده بهدست آورد. هدف از بهکارگیری این مدل حملات پیدا کردن الگوهای موجود در خروجی سامانههایی است که ممکن است یک آسیبپذیری را ترمیم نکرده باشند یا رخنه کوچکی در آنها باشد که باعث کشف کلید رمزنگاری شود.
■ Chosen cipher-text attack: این مدل حملات زمانی اتفاق میافتند که هکر میتواند سایفر متنی با هدف خراب کردن انتخاب کند و سپس به تحلیل خروجی متن بپردازد. نسخههای اولیه RSA که از SSL استفاده میکنند در برابر این مدل حملات آسیبپذیر بودند.
قبل از آنکه تصمیم بگیرید به سراغ شکستن الگوریتمهای رمزنگار بروید به این موضوع توجه داشته باشید که انجام اینکار مستلزم داشتن سامانههای قدرتمند و صرف زمان کافی است. البته در برخی موارد ممکن است این زمان کوتاه باشد. بهطور مثال جان گیمور و پل کوشر موفق شدند در مدت زمان 56 ساعت الگوریتم DES را رمزگشایی کنند، اما سامانههایی که این دو نفر استفاده میکردند بیش از 125 هزار دلار قیمت داشت. به بیان سادهتر، اگر قیمت دلار را 20 هزار تومان تصور کنیم هر یک از آنها سامانهای به ارزش بیش از دو میلیارد تومان داشتند.
در شماره آینده مبحث فوق را ادامه میدهیم.
برای مطالعه رایگان تمام بخشهای دوره CEH روی لینک زیر کلیک کنید:
ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را میتوانید از کتابخانههای عمومی سراسر کشور و نیز از دکههای روزنامهفروشی تهیه نمائید.
ثبت اشتراک نسخه کاغذی ماهنامه شبکه
ثبت اشتراک نسخه آنلاین
کتاب الکترونیک +Network راهنمای شبکهها
- برای دانلود تنها کتاب کامل ترجمه فارسی +Network اینجا کلیک کنید.
کتاب الکترونیک دوره مقدماتی آموزش پایتون
- اگر قصد یادگیری برنامهنویسی را دارید ولی هیچ پیشزمینهای ندارید اینجا کلیک کنید.
نظر شما چیست؟