دوستان گرامی؛
این بخش نو ترجمه کتاب CCNA Security است؛ در انتها در قالب PDF تدوین و در اختیار اعضای محترم فروم قرار داده خواهد شد. جهت پیوستگی مطالب لطفاً سوالات خود را در تاپیک جدید اعلام فرمایید.
موضوعات مشابه:
دوستان گرامی؛
این بخش نو ترجمه کتاب CCNA Security است؛ در انتها در قالب PDF تدوین و در اختیار اعضای محترم فروم قرار داده خواهد شد. جهت پیوستگی مطالب لطفاً سوالات خود را در تاپیک جدید اعلام فرمایید.
موضوعات مشابه:
ویرایش توسط EVERAL : 2018-09-08 در ساعت 06:54 PM
!It's possible to change your life at any time
Chapter 1 Networking Security Concets
هدف از امنیت شبکه شامل موارد زیر میباشد:
- Confidentiality
به معنی محرمانگی Data است طوری که دیتا توسط افراد غیرمجاز قابل دسترسی نباشد که برای این منظور از الگورتیم های Encryption استفاده میشود.
- Integrity
به معنی صحت دیتا می باشد طوری که دیتا در مسیر شبکه توسط افراد غیرمجاز تغییر نکند که برای این منظور بایستی از الگوریتم های Integrity استفاده شود.
- Availability
به معنی در دسترس بودن اطلاعات و سرویس های تحت شبکه می باشد یکی از حملاتی که معمولاً Availability دیتا و سرویس های شبکه را تحت تاثیر قرار می دهد حمله Denial Of Service یا DOS است.
در امینت شبکه این 3 هدف به مثلت CIA معروف هستند.
اصطلاحات امنیتی یا Secutiry Terms:
- Asset
کلیه دارایی های است که ما قرار است آنها را Protect کنیم مانند یک فایل یا دستگاه.
- Vulnerability
نقاط ضعفی است که در Asset ها وجود دارد که از طریق آن نقاط ضعف می شود به آن Asset در یک سازمان Attack کرد.
- Threads
هر چیزی که بتواند از نقاط ضعف یک Asset استفاده کند تا باعث یک دسترسی غیر مجاز به یک Asset را باعث شود؛ برای این منظور از ابزارهای Exploit استفاده می کنند.
- Risk
احتمال اینکه یک تهدید یا Threads منجر به دسترسی غیر مجاز شود را Risk می گویند.
- Countermeasure
روش های مقابله با تهدید و Exploit می باشد که به آن Mitigation نیز گفته می شود.
Classifying Assets یا دسته بندی Asset ها:
ما بر اساس دسته بندی Asset ها می توانیم Policy های متفاوتی را نیز پیاده سازی کنیم برای نمونه؛ فرض کنید شما یک VPN را پیاده سازی کرده اید که ترافیک میان دو نقطه را امن کند آن دیتایی که در VPN قرار دارد بسته به اینکه در چه Asset قرار دارد ممکن است با توجه به اهمیتش از پروتکل رمزگذاری که در VPN استفاده می شود متقاوت باشد.
معیارهایی که برای دسته بندی Asset ها وجود دارد شامل موارد زیر می باشد:
- Value
ارزش Asset میباشد.
- Age
عمر Asset میباشد.
- Replacement Cost
در صورتی که Asset از بین برود هزینه جابه جایی آن Asset چقدر می باشد.
Classification Roles را می توان به 3 دسته زیر تقسیم کرد:
- Onwer
مالک آن Asset میباشد.
- Custodian
مسئول آن Asset میباشد.
- User
کاربر آن Asset میباشد.
که با توجه به Role که برای یک Asset در نظر گرفته می شود Policy مربوط به آن نیز متفاوت خواهد بود. تقسیم بندی دیگری که برای Asset ها انجام می شود شامل موارد ذیل می باشد:
- RED
این دسته از Asset ها به هیچ عنوان نبایستی در شبکه Share شوند به عبارت دیگر Share شدن این اطلاعات تهدیدات مربوط به آن Asset را بالا میبرد.
- AMBER
این دسته از Asset ها می توانند میان Member های همان سازمان Share شوند.
- White
این دسته از Asset ها عمومی هستند و می توانند در هر جایی Share شوند.
Classification Vulnerability
- نقض در Policy
- ایراد در طراحی
- ضعف در پروتکل
- پیکربندی اشتباه
- نقاط ضعف در نرم افزار
- دانش انسانی
- نرم افزارهای مخرب
- نقاط ضعف در سخت افزار
- دسترسی فیزیکی به منابع شبکه
اکثر شرکت های سازنده تجهیزات شبکه مانند سیسکو تمامی Vulnerability های خود را در Public DataBase ها با عنوان Common Vulnerability and Exposure یا CVE بروزرسانی یا Update می کنند.
یک دیتابیسی با عنوان National Vulnerability Database وجود دارد که Standard Vulnerability ها را نگهداری و بروز می کند.
Countermeasure Classification:
برای مقابله با Vulnerability ها می توان از دسته بندی زیر استفاده کرد:
- Administration
در این دسته بندی با استفاده از Policy ها و Procedure ها و Guideline ها و Standard ها می توان با یک تهدید مقابله کرد.
- Physical
در این دسته بندی با استفاده از کنترل امنیت فیزیکی می توان با یک تهدید مقابله کرد.
- Logical
در این دسته بندی با استفاده از راه حل های Logical مانند استفاده از Firewall و VPN و IPS می توان با یک تهدید مقابله کرد.
Risk Management:
مدیریت Risk به معنی حذف Risk و یا کاهش Risk می باشد که معمولا احتمال اینکه شما بتوانید Risk را حذف کنید کم می باشد ولی می توانید آن را کاهش دهید.
کاهش Risk را می توان از طریق انتقال Risk به شخص متخصص دیگری انجام داد و یا با استفاده از روش های مقابله با آن مانند فایروال ها نسبت به کاهش آن اقدام نمود و یا گاهی ممکن است یک Risk را بپذیریم.
انواع هکرها را می توان به صورت زیر دسته بندی کرد:
- تروریستی
- مجرم
- دولتی
- کارمندان ناراضی
- رقبا
- و هر کسی که بتواند به Asset ما به صورت غیرمجاز دسترسی داشته باشد.
روش های هک را می توان به صورت زیر دسته بندی کرد:
- Scanning: یا شناسایی که مقدمه برای هر حمله می باشد و برای شناسایی آدرس ها و سرویس های تحت شبکه و ساختار شبکه مقصد می باشد.
- Social Engineering: روش های مهندسی اجتماعی است که هم می تواند از طریق متدهای صحبت کردن اتفاق بیفتد و هم می تواند با استفاده از ابزار آن را پیاده کرد مانند Phishing و یا Email Sppfing.
- Privilege Escalation: در این روش هکر می تواند سطح دسترسی خود را برروی سیستم قربانی بالا ببرد.
- Backdoor: اجرای یک Code برروی سیستم قربانی است که به هکر این امکان را می دهد تا در هر زمانی بتواند به سیستم قربانی دسترسی داشته باشد.
Attack Vector:
یک حمله یا Attack همیشه از بیرون یک سازمان انجام نمی شود و ممکن است حمله از داخل یک سازمان انجام شود. امروزه بحثی که در اکثر سازمان ها و شرکت ها وجود دارد این است که کارمندان بتوانند از تجهیزات شخصی خود که در منزل استفاده می کنند بتوانند در محیط کار نیز استفاده کنند؛ به عبارت دیگر یک کارمند بتواند از موبایل و یک Notebook خود در محیط کار خود هم استفاده کند که به آن Bring Your own Device
یا BYOD گفته میشود که دیگر در این روش یک سازمان برای تجهیزات مورد استفاده برای یک کارمند هزینه نمی کند و برای یک سازمان نیز مقرون به صرفه خواهد بود در این حالت نیز کارمندان با این روش راحتر می باشند که به اطلاعات خود از طریق یک Device دسترسی داشته باشند اما این روش چالش های بسیار جدی را در یک سازمان ایجاد می کند که برای این منظور شرکت Cisco راه حلی را با عنوان Network Admission Control یا NAC و ( Identity Service Engine(ISE را معرفی کرده است که برای کنترل دسترسی افراد به منابع شبکه می باشد.
- - - ادامه - -
Man-in-the-Middle Attack:
حمله ای می باشد که خرابکار میان ارتباط دو نفر قرار می گیرد و ترافیک را شنود می کند که در لایه 2 با استفاده از حمله ARP Poisoning به راحتی انجام میشود که با استفاده از Dynamic Arp Inspection می توان جلوی این حمله را گرفت یا امکان اینکه کامپیوتر شما به صورت Root Bridge در شبکه Switching قرار گرفته شود تا تراقیک یک سازمان از کامپیوتر شما عبور کند تا امکان شنود اطلاعات میسر گردد؛ با استفاده از Root Guard در STP می توان جلوی این حمله را گرفت و یا در لایه 3 خرابکار می تواند از یک Ruge Router استفاده کند و مسیرها را تغییر دهد که با استفاده از Routing Authentication می توان جلوی این حمله را گرفت با استفاده از Encryption که برروی پروتکل های SSH و یا HTTPS انجام می شود می توان جلوی حملات Man-in-the-Middle Attack را گرفت.
Other Attack Method:
- Covert Channel : به حملاتی گفته می شود که از طریق Tunneling انجام می شود و با استفاده از آنها می توان Firewall ها و سنسورهای امنیتی را By Pass کرد.
- Trust Exploitation: به حملاتی گفته می شود که یک هکر با نفوذ به نقاط Trust شبکه مانند وب سرورها و یا DMZ به نقاط دیگر شبکه دسترسی پیدا می کند.
- Brute Force Attack: در این حمله یک هکر با استفاده از تست پسوردهای مختلف سعی می کند به یک سیستم دسترسی پیدا کند.
- Botnet: به حملاتی گفته می شود که در آن هکر می تواند از طریق کامپیوترهایی که قبلا آلوده شده اند و تحت کنترل یک هکر هستند یک حمله مانند DDOS انجام شود.
- DOS and DDOS: به هر حمله ای که باعث شود تا یک سرویس از کار بیفتد( DOS(Denial of Service گفته می شود و زمانی که این حمله از چندین نقطه انجام شود به آن Distributed DOS گفته می شود.
اصول های امنیتی که بایستی در طراحی شبکه اعمال شود شامل موارد زیر می باشد:
- Rule of Least Privilege: شما باید حداقل دسترسی ها را به افراد اختصاص دهید.
- Defense In Depth: شما بایستی در چندین لایه امنیت را پیاده سازی کنید برای نمونه از Firewall هم در Edge و هم در داخل شبکه استفاده کنید.
- Separation of Duties: شما بایستی وظایف هر شخص را مشخص کنید و سعی کنید به صورت گردشی و در زمان های مختلف این وظایف را بین افراد عوض کنید.
- Auditing: شما بایستی تمامی دسترسی ها به شبکه را Log و Record کنید تا دسترسی های غیرمجاز شناسایی شود که این کار بایستی توسط AAA انجام شود.
!It's possible to change your life at any time
CAN) Campus Area Network):
به مجموعه تجهیزاتی گفته می شود که در یک نقطه جغرافیایی قرار گرفته اند و می تواند شامل LAN، DC و یا Internet Edge باشد.
WAN) Campus Area Network):
به ارتباط میان چندین LAN در نقاط مختلف گفته می شود که معمولاً با استفاده از VPN می توان آنها را امن کرد.
Data Center :
به مکانی گفته می شود که معمولاً سرورهای ما قرار می گیرند.
Network Security for a Virtualization Environment
از آنجایی که امروزه برروی سرورهای فیزیکی از مقوله مجازی استفاده می شود امنیت مربوط به این محیط ها به عنوان یکی از چالشی ترین موارد امنیتی به حساب می آید که برای این منظور شرکت سیسکو یکسری راه حل مانند VASA و یا Nexus 1000v را در محیط های مجازی معرفی می کند.
!It's possible to change your life at any time
اهدافی که معمولاً یک هکر به دنبال آن می باشد شامل موارد زیر است:
- Financial یا مالی:
هدف هکر نفوذ بهبه سیستم مالی یک شرکت و یا فروش اطلاعات مربوط به آن سازمان می باشد.
- Disruption یا خرابکارانه:
هدف هکر از کار انداختن سرویس های یک شرکت می باشد.
- Geopolitical یا سیاسی:
هدف هکر مقابله با سیاست های یک کشور می باشد.
Distributed Denial Of Service Attack:
به حملاتی گفته می شود که برای از کار انداختن سرویس های یک سازمان استفاده می شود. در این حملات معمولاً هکر از یکسری Zombie استفاده می کند Zombie ها در واقع کامپیوترهای تحت کنترل هکر می باشند که یک هکر توسط آنها می تواند به یک مقصد خاص حمله کند و سرویسی را از کار بندازد.
حملات DDOS به سه دسته زیر تقسیم می شوند:
- Direct:
حملات DDOS است که مستقیماً توسط هکر و یا Zombie ها به سمت مقصد یا قربانی انجام می شود.
Reflected: در این حمله Attacker از Source Address مربوط به Victim استفاده می کند و ترافیک سنگینی را با Source Address قربانی به سمت Zombie ها ارسال می کند و Zombie ها پاسخ به این ترافیک را به Victim ارسای یا Reflect می کنند به عبارت دیگر در این حمله Zombie ها نقش Reflector را دارند. یکی از معروفترین این حملات Ping به سمت Broadcast می باشد که در صورتی که Source Address مربوط به ping را آدرس مربوط به قربانی قرار دهید تمامی Replay ها از شبکه به سمت قربانی خواهد بود.
- Amplification:
به حملاتی گفته می شود که Request آنها کوچک ولی Replay آنها بزرگ می باشد برای مثال DNS Query یک Request کوچک می باشد در حالی که Replay آن شامل اطلاعات بیشتری است.
در شکل زیر می توانید نحوه اجرای این نوع حملات را مشاهده کنید.
Social Engineering Methods:
به حملاتی گفته می شود که از طریق روش های مهندسی اجتماعی انجام می شود این حملات از طریق متدهای صحبت کردن و هم از طریق ابزار قابل پیاده سازی می باشد.
روش های معمول Social Engineering را می توان به صورت زیر دسته بندی کرد:
- Phishing:
این حمله معمولاً از طریق یک Email و یک منبع قانونی و معتبر مانند یک بانک و یا شرکت برای تغییر حساب کاربری و یا اطلاعات استفاده می شود که در درون این ایمیل معمولا یک هکر از آدرس یک وب سایت و یا فایل استفاده می کند در این حمله در صورتی که شما وب سایت مورد نظر را باز کنید و اطلاعات خود را وارد کنید هکر به تمامی اطلاعات شما دسترسی خواهد داشت.
- Malvertising:
Malicious Advertising برروی Trusted Website ها می باشد به عبارت دیگر شما می توانید تبلیغات خود را در سایت های معروف تبلیغاتی قرار دهید و در صورتی که قربانی برروی تبلیغات شما کلیک کند قربانی را به وب سایت دیگری منتقل می کند که برای دزدیدن اطلاعات قربانی می باشد.
Phone Scams:
در این حمله هکر با تماس با یکی از کارمندان یک شرکت او را متقاعد می کند که یکسری از اطلاعات را به او بدهد.
روش های جلوگیری در برابر حملات Social Engineering:
- Training
آموزش پرسنل و افراد بهترین راه جلوگیری از این نوع حملات می باشد.
- Password Management
استفاده از پسوردهای پیچیده و Complex
-Two-Factor Authentication
استفاده از دو روش برای Authentication
- Antivirus/Antiphishing
استفاده از نرم افزارهای Antivirus و Antiphishing
- Information Classification
برای از بین بردن اطلاعات بایستی مطئن شوید که اطلاعات قابل بازیابی نباشند.
- Physical Security
بررسی Background Check افراد قبل از استخدام
Malware Identification Tools:
به هر نوع نرم افزار مخربی Malware می گویند شناسایی این نرم افزارها مشکل می باشد بدلیل اینکه معمولا این نرم افزارها درون نرم افزارهای معمولی و کاربردی قرار می گیرند و چون معمولاً این نرم افزارها Encrypte می شوند به راحتی قابل شناسایی نمی باشند.
برای شناسایی Malware ها می توانید از ابزارهای زیر استفاده کنید:
- Packet Capture
با استفاده از SPAN و RSPAN و Wireshark شما می توانید ترافیک شبکه را Capture و مانیتور کنید.
-SNORT
یکی از قدیمی ترین سیستم Open Source در زمینه IPS و IDS می باشد که در حال حاضر تحت عنوان Source Fire تحت مالیکت شرکت سیسکو می باشد و فایروال های شرکت سیسکو تحت عنوان FirePower با امکان Source Fire قابل ارائه می باشند که برای شناسایی Malware استفاده می شوند.
- Netflow
استفاده از پروتکل های مانیتورینگ Netflow که امکان شناسایی و آنالیز ترافیک شبکه را به شما می دهند.
- IPS Events
با استفاده از Alarm ها و Event ها یی که توسط سیستم های IPS تولید می شوند.
Advanced Malware Protection:
یکی از ابزارهای تخصصی برای شناسایی این Malware ها استفاده از Cisco Advance Malware Protection یا AMP می باشد که جزئی از Cisco Fire Power است.
NGIPS:
با استفاده از Cisco FirePOWER Next Generation IPS شما می توانید Malware ها را شناسایی کنید NGIPS ها به صورت Centrally توسط Cisco FireSIGHT مدیریت می شوند و می توانند شامل قابلیت هایی مانند AMP و Application Visibility and Control و URL Filtering باشد.
Data Loss and Exfiltration Methods:
ما معمولاً اطلاعاتی که وارد سازمان می شوند را بررسی می کنیم و اطلاعاتی که از سازمان خارج می شوند را بررسی نمی کنیم که این روند می تواند باعث چالش های امنیتی شود و حتما بایستی ترافیک های ورودی و خروجی سازمان را بررسی کنیم.
انواع اطلاعاتی که معمولاً برای هکرها جذاب می باشد:
-Intellectual Property
هر نوع دیتا و یا Document که Property و یا مشخصات یک سازمان را نمایان کند و توسط افراد یک سازمان ایجاد شده باشد.
- Personally Identifiable Information
هر نوع اطلاعاتی که مربوط به افراد می باشد مانند نام و تاریخ تولد و آدرس.
- Credit/Debit Card
اطلاعات مربوط به حساب های کاربری و مالی یک شرکت.
ویرایش توسط EVERAL : 2018-09-10 در ساعت 10:19 AM
!It's possible to change your life at any time
(Cisco Configuration Profesional(CCP:
یکی از نرم افزارهای شرکت سیسکو CCP است که با استفاده از آن شما می توانید روترهای خود را به صورت گرافیکی پیکربندی کنید.
برای استفاده از نرم افزار CCP شما نیاز به Java و Flash Player دارید.
در ابتدا بایستی نرم افزار CCP را برروی کامپیوتر خود نصب کنید.
پس از نصب برنامه CCP بایستی تنظیمات مورد نیاز برای GNS3 را انجام دهید. برای این منظور ما از IOS Router 7200 استفاده می کنیم و بایستی این روتر را در GNS3 به کامپیوتر خود متصل کنیم.
پس از انتخاب IOS و اضافه نمودن به GNS3 بایستی سناریوی خود را ایجاد کنید. (فرآیند نصب و راه اندازی را google کنید، در صورتی داشتن سوال جهت اجرایی نمودن برنامه موضوع را از طریق تاپیک جدید اعلام فرمایید).
!It's possible to change your life at any time
Chapter 3 Implementing AAA in Cisco IOS
یکی از مکانیزم های امنیتی در شبکه AAA می باشد AAA مخفف Authentication و Authorization و Accounting است؛ Authentication به معنی که چه کسی و Authorization به معنی اینکه به چه چیزی و Accounting به معنی ثبت و ضعیت دسترسی کاربر می باشد.
مکانیزم AAA دو کاربرد زیر را دارد:
- Device Access:
این نوع پیاده سازی بیشتر برای دسترسی به تجهیزات شبکه مانند روتر و سوئیچ و ... توسط مدیران شبکه کاربرد دارد و برای مشخص کردن هویت افراد و سطح دسرتسی آنها و ثبت دسترسی آنها در زمان های مختلف استفاده می شود.
- Network Access:
این نوع پیاده سازی بیشتر برای دسترسی کاربران به شبکه استفاده می شود کاربران معمولاً از سه طریق زیر به شبکه متصل می شوند:
1- از طریق Wire
2- از طریق Wireless
3- از طریق VPN
در این نوع پیاده سازی مشخص می شود چه کاربری به چه سرویسی از شبکه دسترسی داشته باشد و تمامی دسترسی های آن نیز ثبت می شود. برای پیاده سازی AAA ما نیاز به Component های زیر داریم:
- AAA Client:
به تمامی تجهیزاتی که در شبکه وجود دارد و قرار است Admin و یا کاربر به آنها دسترسی داشته باشد AAA Client می گویند.
- AAA Server:
به سروری که به صورت Central عملیات AAA را انجام می دهد AAA Server می گویند که برای پیاده سازی AAA Server ما می توانیم از ACS استفاده کنیم.
-Supplicant:
به Admin یا کاربری که قرار است به سرویس ها و یا تجهیزات شبکه از طریق AAA متصل شود Supplicant می گوییم.
-AAA Protocol:
به پروتکل ارتباطی در مکانیزم AAA می گویند که می توان از پروتکل های Tacacs+ و یا Radius استفاده کرد.
مکانیزم AAA را می توان به دو صورت زیر پیاده سازی کرد:
1- Local:
در این روش AAA مستقیما برروی تجهیزات و به صورت Local پیاده سازی می شود و دیتابیس مربوط به آن نیز برروی خود تجهیز شما قرار داد.
2- External:
در این روش AAA به صورت Central و از طریق AAA Server پیاده سازی می شود در این حالت دیتابیس مربوط به Username ها به صورت External و برروی خود AAA Server قرار دارد البته در این روش می توان از Active Directory نیز به عنوان External Database در کنار AAA Server استفاده کرد.
ACS Platform:
تا قبل از نسخه 5 شما می توانستید ACS را برروی Platform ویندوز نصب و پیاده سازی کنید ولی از نسخه 5 به بعد ACS از سیستم عامل لینوکس Centos استفاده می کند و به صورت یک Appliance و به صورت فایل ISO و یا OVA برای نصب در محیط های مجازی VMware قابل دسترس میباشد.
What is ISE ؟
ISE) Identity Service Engine) یک Appliance برای مکانیزم های AAA Server و Posture Assesment می باشد به عبارت دیگر ISE یک جایگزین مناسب برای Solution مربوط به ACS می باشد با استفاده از ISE شما می توانید هم عملیات AAA را انجام دهید و هم می توانید وضعیت یک سیستم را از لحاظ ویروس و Service Pack ها نیز بررسی کنید.
یک Appliance ISE می تواند از پروتکل های TACACS+ و RADIUS برای مکانیزم AAA استفاده کند.
مقایسه میان پروتکل های TACACS+ و RADIUS:
TACACS+ یک پروتکل سیسکویی است در حالی که RADIUS یک پروتکل استاندارد می باشد. در پروتکل RADIUS فقط از Packet های Authentication و Accounting استفاده میکند و Packet Authorization را ندارد در حالی که TACACS+ از هر 3 نوع Packet استفاده می کند.
در پروتکل RADIUS عملیات Authorization را از طریق Authentication و در یک مرحله انجام می دهد.
از لحاظ Authorization پروتکل TACACS+ بیشتر برای Device Access استفاده می شود در حالی که RADIUS بیشتر در Network Access استفاده می شود و در مکانیزم Authentication تقاوت زیادی با هم ندارند.
پروتکل RADIUS از پروتکل UDP در Layer 4 استفاده می کند در حالی که TACACS+ از پروتکل TCP در Layer 4 استفاده می کند. در پروتکل RADIUS فقط پسوردهایی که میان AAA Server و Client منتقل می شود Encrypt می شود در حالی که در پروتکل TACACS+ تمامی Packet های آن Encrypt می شود.
پروتکل RADIUS وضعیت Accounting بهتر و جزئیتری نسبت به TACACS+ دارد.
!It's possible to change your life at any time
Configuring Router to Interoperate with an ACS Server
در این مرحله بایستی تنظیمات مربوط به AAA را هم در سمت Client و هم در سمت Server انجام دهیم به عبارت دیگر ما بایستی AAA Server را به Client معرفی کنیم و به AAA Server هم بایستی Client را معرفی کنیم.
نصب ACS Server 5.8:
در ابتدا بایستی یک ماشین مجازی با مشخصات زیر ایجاد کنیم و سپس بایستی ACS ISO را به ماشین مجازی Bind کنیم:
در این مرحله بایستی برروی ماشین مجازی راست کیلک کرده و سپس آن را روشن یا Power on کنید.
در این مرحله در کنسول ماشین مجازی بایستی گزینه 1 را برای نصب ACS انتخاب کنید و سپس دکمه Enter را بزنید.
در این مرحله بایستی کلمه Setup را در قسمت Login تایپ و سپس دکمه Enter را بزنید.
در این مرحله باید تنظیمات زیر را انجام دهید:
- Hostname
-IP Address
- Mask
- Default Gateway
- Domain Name
- Name Server
- NTP Server
- Enable SSH
- Username and Password
بعد از مشاهده صفحه Loging مراحل نصب ACS به پایان رسیده است.
در این مرحله شما می توانید با استفاده از Username admin و پسوردی که در زمان نصب مشخص کرده اید به کنسول CLI ACS متصل شوید.
برای مشاهده Configuration ACS شما می توانید از دستور زیر استفاده کنید.
شما میتوانید از دستور زیر برای بررسی وضعیت سرویس های ACS استفاده کنید.
در این مرحله برای متصل شدن به صفحه کنسول GUI ACS بایستی از آدرس زیر و Username و Password که در زمان نصب وارد کرده اید استفاده کنید.
!It's possible to change your life at any time
پیاده سازی سناریو AAA از طریق پروتکل TACACS+
در ابتدا بایستی سناریو زیر را از طریق نرم افزار gns3 ایجاد کنید.
در این مرحله بایستی تنظیمات مربوط به IP Address را برروی روتر انجام دهید و تست Connectivity بگیرید.
در این مرحله بایستی تست Connctivity را با روتر انجام دهید.
در این مرحله باستی AAA را برروی روتر فعال کنید.
کد:R2(config)#aaa new-model
در این مرحله بایستی متدهای Authentication را مشخص کنید.
در این مرحله بایستی متدهای Authorization را مشخص کنید.
کد:R2(config)#aaa authentication login Auth group tacacs+ local
کد:R2(config)#aaa authorization exec Author group tacacs+ local
در این مرحله بایستی متد Accounting را مشخص کنید.
کد:R2(config)#aaa accounting exec Acc start-stop group tacacs
در این مرحله باستی IP و پسورد مربوط به TACACS+ را مشخص کنید.
در این مرحله بایستی یک Username و Password به صورت Local برروی روتر تعریف شود این Username and Password برای زمانی استفاده می شود که Failover رخ دهد.کد:R2(config)#tacacs-server host 192.168.1.158 key cisco
در این مرحله بایستی AAA را تحت Line vty روتر فعال کنیم.کد:R2(config)#username admin password ciscoکد:R2(config)#line vty 0 15 R2(config-line)#login authentication Auth R2(config-line)#authorization exec Author R2(config-line)#accounting exec Acc
در این مرحله بایستی وارد کنسول مدیریتی ACS شوید برای این منظور بایستی از IP Address ACS مبتنی بر وب استفاده کنید؛ دقت کنید برای وصل شدن به صفحه کنسول ACS بایستی از HTTPS و بهتر است از Internet Explorer استفاده کنید.
در این مرحله بایستی با Username acsadmin و پسوردی که در زمان نصب مشخص کرده اید به کنسول ACS خود متصل شوید.
ویرایش توسط EVERAL : 2018-09-12 در ساعت 08:52 PM
!It's possible to change your life at any time
در این مرحله باید Lacation Device های خود را مشخص و ایجاد کنید.
در این مرحله باید Device Type های خود را مشخص و ایجاد کنید.
در این مرحله باید AAA Client های خود را به ACS معرفی کنید.
در این مرحله باید مشخصات زیر را برای AAA Client تعریف کنید.
- Name
- Location
- Device Type
- IP Address
- +Enable TACACS
- Define Secret Password
در این مرحله باید Identity Group های خود را بر طبق Policy های یک سازمان تعریف کنید، برای مثال ما قصد داریم یک Identity Group برای Admin و یک Identity Group برای Assistance تعریف کنیم.
!It's possible to change your life at any time
در این مرحله بایستی User name و Password خود را تعریف کنیم.
در قسمت Assistance نیز به روش بالا User Name و Password را ایجاد کنید.
در این مرحله بایستی سطح دسترسی به روتر را مشخص کنیم این قسمت تنظیمات مربوط به Authorization می باشد که شامل سطح دسترسی و مجموعه ای از دستوراتی می باشد که یک User می تواند آن را برروی روتر ایجاد کند.
در این قسمت بایستی Privilege Level را تحت Shell Profile تعریف کنیم.
در این قسمت یک Shell Profile دیگر با Privilege Level 1 ایجاد می کنیم.
خروجی کارهای اعمال شده Share Profile به صورت زیر نمایش داده میشود.
!It's possible to change your life at any time
در این قسمت بایستی Authorization Policy را تعریف کنیم در ابتدا بایستی شرایطی که می خواهیم در Authorization لحاظ شود را مشخص کنیم.
در این مرحله بایستی یک Authorization Policy ایجا کنیم.
در این مرحله مطابق با روش بالا یک Authorization Policy دیگر برای Priv1 ایجاد میکنیم.
خروجی به شکل زیر نمایش داده میشود.
در این مرحله شما میتوانید AAA را برروی روتر با استفاده از دستور زیر تست کنید.
در این مرحله بایستی دسترسی از Client به روتر را از طریق ACS بررسی کنیم.
در این مرحله بایستی وضعیت Accounting را برروی ACS بررسی کنیم.
برای مشاهده جزئیات هر Account برروی گزینهDetails کلیک کنید.
- - - ادامه - - -
در این قسمت بایستی از Command های زیر برای فعال کردن RADIUS Authentication برروی روتر استفاده کنیم:
در این مرحله باید در ACS و در قسمت Network Access قابلیت RADIUS را برری AAA Client خود فعال کنیم:
در این مرحله برای تست Authentication از طریق پروتکل RADIUS از دستور زیر برروی روتر استفاده می کنیم:
در این مرحله برای تست Loing و Accounting به روتر از طریق نرم افزار Putty متصل می شویم:
در این مرحله بایستی وضعیت Accounting RADIUS را بررسی کنیم:
ویرایش توسط EVERAL : 2018-09-17 در ساعت 04:36 PM
!It's possible to change your life at any time
امروزه سازمانها تمایل دارند که برای کارمندان خود کامپیوتر و یا Notebook خریداری نکنند و از کامپیوتر و یا Notebook شخصی یک کارمند هم برای استفاده شخصی و هم برای استفاده سازمانی استفاده کنند که باعث کاهش هزینههای یک سازمان میشود و کارمندان نیز بدلیل اینکه تمامی کارهایشان را برروی یک کامپیوتر انجام میدهند تمایل بیشتری به پیادهسازی BYOD در یک سازمان دارند.
پیادهسازی BYOD باعث چالشهای امنیتی زیر میشود:
- پایین بودن امنیت کامپیوترهای شخصی
- دزدیدن اطلاعات یک سازمان
شما با استفاده از BYOD Solution میتوانید از Notebook شخصی خود در یک سازمان استفاده کنید بدون اینکه چالش امنیتی برای یک سازمان ایجاد شود.
دلایلی نیاز یک سازمان به پیادهسازی BYOD Solution:
- Wide Variety of Consumer Devices
امروزه تنوع Deviceهایی که یک شخص از آنها استفاده میکند زیاده شده است با استفاده از BYOD کارمندان یک سازمان میتوانند از موبایل، تبلت و یا Notebook شخصی خود در یک سازمان استفاده کنند.
- Blurred Lines Between work and Play
با استفاده از BYOD دیگر مرزی برای ساعات کاری وجود ندارد و هر شخص میتواند در منزل و یا سازمان و یا هتل کار یک شرکت کار سازمان را انجام دهد و مهم این است که کار باید انجام شود و برای یک سازمان نتیجه و خروجی کار اهمیت دارد.
- Connect me anytime,anywhere
شما با استفاده از BYOD میتوانید از هر جا و در هر زمانی به سرویسهای یک سازمان دسترسی داشته باشید تا بتوانید اهداف یک سازمان را انجام دهید.
BYOD Architecture Framework
در معماری BYOD کاربران میتوانند از طریق Device مبتنی بر شبکههای Unterusted نظیر شبکههای 4G و یا Public Wireless به شبکه یک سازمان متصل شوند و یا میتوانند از طریق شبکههای Campus LAN و یا شبکههای Branch و یا از طریق شبکههایی که در Home دارند به شبکه یک سازمان متصل شوند.
BYOD Solution Components
یک BYOD Solution شامل Componentهای زیر است:
- BYOD Devices
شامل Deviceهایی مانند Notebook، Tablet و Samrtphone.
- Wireless Access Point
شامل APهایی که در Campus LAN و یا Branch Office و یا Home قرار میگیرند و دسترسی شما را به شبکه یک سازمان فراهم میکنند.
- (Wireless LAN Controller (WLC
این تجهیزات بعنوان یک Central Point برای Configuration و Management و Monitoring شبکههای وایرلس میباشند.
- (Identity Service Engine (ISE
قسمت اصلی BYOD Solution میباشد که هم عملیات AAA و هم عملیات NAC را در شبکههای BYOD انجام میدهند.
- Cisco Anyconnect Secure Mobility Client
نرمافزاری است که قابلیت Wire و Wireless و VPN را برای شما فراهم میکند یکی از نرمافزارها برای دسترسی به شبکه میباشد، شما میتوانید این نرمافزار را برروی موبایل و تبلت و یا کامپیوتر نصب و استفاده کنید.
-(Integrated Service Router (ISR
این روترها معمولاً در قسمت Edge شبکههای Branch قرار میگیرند.
- (Aggregation Service Router (ASR
این روترها معمولاً در قسمت Edge شبکههای Central Office قرار میگیرند.
- (Cloud Web Security (CWS
یک Appliance امنیتی برای آن دسته از BYOD Endpointهایی میباشد که میخواهند از طریق یک Internet Websiteهایی که از طریق Public Wireless Hotspot و یا 3G و یا 4G فراهم شده است به شبکه یک سازمان دسترسی داشته باشند. CWS با استفاده از دیتابیسی که دارد میتواند وضعیت امنیتی این سایتها را قبل از دسترسی یک کاربر به شبکه یک سازمان بررسی کند.
- (Adaptive Security Appliance (ASA
با استفاه از ASA شما میتوانید قابلیت Firewalling و IPS را در شبکههای BYOD پیادهسازی کنید بعلاوه ASA قابلیت VPN Server را هم برای ما ایفاء میکند.
- RSA Secure ID
با استفاده از RSA Secure ID یا One Time Password شما میتوانید در هر زمانی که میخواهید به شبکه یک سازمان متصل شوید و از یک Password مجزا استفاده کنید؛ به عبارت دیگر قابلیت OTP Authentication را درشبکههای BYOD ایجاد و تامین میکند.
- (Active Directory (AD
برای کنترل دسترسی به سرورها و Applicationها در شبکههای BYOD نیز استفاده میشود.
- (Certificate Authority (CA
یک مکانیزم امنیتی است که از Certificate برای پیادهسازی امنیت شبکههای BYOD استفاده میکند که معمولاً از این Certificateها برای Authentication کاربرهای BYOD استفاده میشود.
- (Mobile Device Managment (MDM
برای مدیریت و مانیتورینگ Mobile Deviceهایی که قرار است در شبکههای BYOD استفاده شوند؛ بکار میرود.
یک MDM شامل قابلیتهای زیر میباشد:
- Enforcement of a PIN Lock
شما را مجبور به استفاده یک PIN برای ورود به صفحه مویایل خود میکند.
- Enforcement of Strange Password
شما را مجبور به استفاده از پسوردهای Complex برروی مویایل خود میکند.
- Detection of Attempts to JailBreak or Root BYOD Device
در صورتی که کاربری اقدام به JailBreak کردن IOS Phone و یا Root کردن Android Phone خود کند MDM فوراً دسترسی فرد را به شبکه BYOD محدود میکند.
- Enforcement of Data Encryption
با استفاده از MDM تمامی اطلاعات به صورت Encrypte برروی موبایل ذخیره میشوند.
- (Administration and Execution of data Loss Prevention (DLP
با استفاده از قابلیت DLP که در MDM وجود دارد از پاک شدن ناگهانی که ممکن است توسط کاربر رخ دهد جلوگیری میکند.
MDM Deployment Option
برای پیادهسازی MDM شما میتوانید از دو روش زیر استفاده کنید:
- On-Premise MDM Deployment
در این روش شما میتوانید MDM را در قسمت Internet Edge در داخل یک سازمان قرار دهید.
- Cloud-Base MDM Deployment
در این روش شما میتوانید سرویس MDM را از یک Cloud Service Provider برروی بستر اینترنت اجاره کنید.
مباحث مربوط به پیادهسازی BYOD خارج از دوره CCNA Secutiry میباشد و در دوره CCNP Security SISAS پیادهسازی میشود.
!It's possible to change your life at any time
( VPN (Virtual Private Network
VPN به معنی ایجاد یک بستر اختصاصی برروی بستر عمومی است.
Type Of VPN
- IPSEC
یک نوعی از VPN میباشد که در لایه 3 مدل OSI پیادهسازی میشود و علاوه بر ارتباط میان سایتها امنیت را نیز برای ما تامین میکند که به دو صورت Site-to-Site و Remote Access قابل پیادهسازی میباشد.
- SSL
یکی از انواع VPNهایی میباشد که امروزه از آن زیاد استفاده میشود که برروی پروتکل TCP کار میکند و به صورت Remote Access قابل پیادهسازی میباشد.
- MPLS
ایجاد ارتباط میان سایتهای یک سازمان از طریق یک Service Provider میباشد که میتوان به MPLS VPN و VPLS اشاره کرد که به صورت پیش فرض هیچ Encryption ندارند و برای امنیت این نوع VPN بایستی از IPSEC برروی MPLS VPN استفاده کرد.
Two Main Types of VPNs
- Remote Access VPN
نوعی از پیادهسازی VPN میباشد که در آن هدف برقراری ارتباط کاربران از بستر Public با شبکه یک سازمان به صورت Secure میباشد مانند کاربران بانکها.
برای پیادهسازی Remote Access VPN شما میتوانید از IPSEC و یا SSL استفاده کنید که معمولاً از SSL برای پیادهسازی Remote Access VPN استفاده میشود.
- Site-to-Site VPN
نوعی از پیادهسازی VPN است که در آن هدف برقراری ارتباط میان سایتهای یک سازمان میباشد که برای پیادهسازی این نوع VPN از IPSEC استفاده میشود.
Main Benefits of VPN:
- Confidentiality
به معنی محرمانگی است که با استفاده از این قابلیت ترافیک داخل یک VPN قابل شنود نمیباشد و دیتاهای ما را با استفاده از الگوریتمهای Encryption رمزگذاری میکند به عبارت دیگر افراد غیرمجاز نمیتوانند اطلاعات ما را شنود کنند.
الگوریتمهای Encryption به دو دسته زیر تقسیمبندی میشوند:
Symmetric
در این نوع الگوریتم عملیات Encryption و Decryption با استفاده از یک کلید انجام میشود که برای اینکه هر دو طرف VPN از یک کلید مشابه استفاده کنند وظیقه Component ای است به نام Key Managment که مدیریت کلیدها را در یک VPN بر عهده دارد.
Asymmetric
در این الگوریتم از دو کلید برای عملیات Encryption و Dycryption استفاده میشود به عبارت دیگر از یک کلید برای عملیات Encryption و از کلید دیگر برای عملیات Decryption استفاده میشود.
- Data Integrity
به معنی صحت دیتا استت که با استفاده از این قابلیت ترافیک داخل VPN قابل تغییر توسط افراد غیرمجاز نمیباشد، قابلیت مذکور توسط الگوریتمهای Integrity انجام میشود.
- Authentications
به معنی احراز هویت است که با استفاده از متدهای Authentication قابل پیادهسازی در VPN میباشد.
عملیات Authentication میتواند از طریق روشهای زیر قابل انجام باشد:
1- Pre-Shared Key
2- Public and Private Key
3- User Authentication
- Antireplay Protection
یکی از قابلیتهای امنیتی مبتنی بر VPN است و هدف آن جلوگیری از دسترسی افراد غیرمجاز به دیتاهای امن شده و ارسال دوباره آن به ساختار VPN میباشد؛ عمدتاً این کار توسط Hackerها انجام میشود و هدف آنها ارسال ترافیک رمز شده به سمت یک سازمان برای بالا بردن Process تجهیزات میباشد.
Cryptography Basic Components
- Ciphers
یک Cipher مجموعهای از Ruleها است که به الگوریتم نیز معروف میباشد، Cipher چگونگی انجام عملیات Encryption و Decryption را مشخص میکند.
یک Cipher به دو صورت زیر انجام میشود:
1- Symmetric
2- Asymmetric
انواع روشهای یک Cipher را میتوان به صورت زیر دستهبندی کرد:
- Subsitution
در این روش از جابهجایی یا Subsitution کاراکترها با یکدیگر استفاده میشد که این روش به راحتی قابل شکستن میباشد.
در شکل زیر میتوانید عملکرد الگوریتم Subsitution را مشاهده کنید:
- Polyalphabetic
این روش مشابه روش Substitution میباشد با این تفاوت که به جای جایگزین کردن یک کاراکتر از چندین کاراکتر استفاده میشود که امنیت بالاتری نسبت به روش Substitution دارد.
در شکل زیر میتوانید عملکرد الگوریتم Polyalphabetic را مشاهده کنید.- Transposition
در این روش از جابجایی کاراکترها با هم در یک دیتا استفاده میشود.
در شکل زیر میتوانید عملکرد الگوریتم Transposition را مشاهده کنید.
روشهایی که در الگوریتمهای Symmetric اتفاق میافتد مبتنی بر روشهای بالا میباشد با این تفاوت که از یک کلید در Process رمزنگاری استفاده میشود.
- Keys
یک کلید اشاره به ساختاری دارد که با استفاده از آن میتوان کاراکترهای یک دیتا را Reassamble کرد به عبارت دیگر نحوه چیدمان کاراکترها را در یک دیتای رمز شده را مشخص میکند و هر چه Size کلید بیشتر باشد امنیت بالاتری خواهد داشت و احتمال شکسته شدن آن هم توسط Hackerها پایینتر خواهد بود.
Block and Stream Ciphers
- Block Cipher
این نوع الگوریتمها با استفاده از یک کلید یک Block از دیتا را به یک Block از دیتای Encrypt شده تبدیل میکنند که به آن Symmetric Key هم گفته میشود.
الگوریتمهایی که به صورت Block Cipher عمل میکنند شامل موارد زیر میباشند:
- (Advanced Encryption Standard (AES
- (Triple Digital Encryption Standard (3DES
- Blowfish
- (Digital Encryption Standard(DES
- (International Data Encryption Algorithm (IDEA
- Stream Cipher
این نوع الگوریتمها عملیات Encryption را به صورت بیت به بیت انجام میدهند در این روش بیت رمز شده در تولید کلید بیت بعدی تاثیر دارد و کلید بعدی را ایجاد میکند به عبارت دیگر در این روش به ازای هر بیت ما یک کلید جدید خواهیم داشت که این کلید از نتیجه بیت رمز شده قبلی ایجاد میشود به هین دلیل به آن Symmetric Key Chpher میگویند.
در شکل زیر میتوانید تفاوت میان Stream and Block Cipher را مشاهده کنید.
!It's possible to change your life at any time
Symmetric and Asymmetric Algorithm
الگوریتمهای Symmetric از روشهای Substitution و Transportation برای رمزنگاری استفاده میکند و برای انجام عملیات رمزنگاری CPU Overhead کمتری دارند. در حالی که در الگوریتمهای Asymmetric معمولاً از مکانیزمهای ریاضی استفاده میشود و CPU Overhead بالاتری نسبت به الگوریتمهای Symmetric دارند و معمولاً برای رمزگذاری روی دیتا استفاده نمیشوند.
در شکل زیر میتوانید نحوه کار Symmetric Algoritm را مشاهده کنید.مهمترین مزیتی که الگوریتمهای Asymmetric دارند این است که دو طرف نیاز به داشتن یک کلید ثابت ندارند و از دو کلید برای عملیات رمزگذاری استفاده میکنند؛ بنابراین نیازی به استفاده از مکانیزمهای Key Managment ندارند.
وظیفه اصلی الگوریتمهای Asymmetric در ایجاد و تبادل یک کلید مشابه برای الگوریتمهای Symmetric از طریق مکانیزم Key Managment میباشد و بعد از اینکه دو طرف به یک کلید مشابه رسیدند دو طرف میتوانند دیتای خود را با استفاده از الگوریتمهای Symmetric رمز یا Encrypt کنند.
در شکل زیر میتوانید نحوه عملکرد Asymmetric Algoritm را مشاهده کنید.
الگوریتمهای Symmetric شامل موارد زیر میباشند:
- DES
- 3DES
- AES
- IDEA
- RC2,RC4,RC5,RC6
- Blowfish
الگوریتمهای Symmetric بیشتر برای Protection دیتای یک VPN استفاده میشوند و سرعت این الگوریتمها به نسبت الگوریتمهای Asymmetric بالاتر میباشد و طول کلید آنها از 64 بیت تا 256 بیت میباشد.
بهترین طول کلید برای عملیات Encryption برای امنیت بیشتر 128 بیت به بالا میباشد.
در شکل زیر میتوانید انواع پروتکلهای Cryptography را به همراه مشخصاتشان مشاهده کنید:
الگوریتمهای Asymmetric از دو کلید Public و Private برای انجام عملیات رمزنگاری استفاده میکنند که به این دو کلید key Pair میگویند در این ساختار هر Node از دو کلید استفاده میکنند و در این ساختار کلید Private برای سمت مقابل فرستاده نمیشود و در صورتی که نیاز به Encryption باشد یک Node از Public Key سمت مقابل استفاده میکند و دیتا را Encrypt میکند و سپس برای سمت مقابل ارسال میکند و در نهایت اطلاعات Encrypt شده توسط Private Key سمت مقابل Decrypte میشود.
طول کلیدی که در الگوریتمهای Asymmetric استفاده میشود از 512 بیت تا 2048 بیت میباشد که بهترین طول کلید از لحاظ امنیتی 1024 بیت میباشد؛ از آنجایی که در این الگوریتم طول کلیدها بالا میباشد لذا سرعت آنها نیز پایین میباشد و بیشتر از این الگوریتم دز SSL VPN و یا Key Managment استفاده میشود.
از الگوریتمهای Asymmetric میتوان به موارد زیر اشاره کرد:
- RSA
این الگوریتم توسط 3 نفر با نامهای Rivest، Shamir و Adleman ایجاد شد و هدف اصلی این الگوریتم برای انجام مکانیزم Authentication میباشد که این الگوریتم همچنین به Public Key Cryptography Standard (PKCS)#1 نیز معروف است.
طول کلیدی که در این الگوریتم استفاده میشود از 512 بیت تا 2048 بیت میباشد که حداقل طول کلید برای Good Security بایستی 1024 بیت باشد؛ قاعدتاً هر چه طول کلید بالاتر باشد امنیت آن نیز بالاتر خواهد بود.
- (DH (Diffe-Hellman
Diffie-Hellman یک پروتکل Key Exchange است که معمولاً برای ایجاد و ارسال کلید الگوریتم Symmetric استفاده میشود.
- ElGamal
این الگوریتم مشابه به الگوریتم DH میباشد.
- (DSA (Digital Signature Algorim
یک الگوریتم Asymmetric است که توسط آژانس امنیت ملی آمریکا ایجاد شد.
- (ECC (Elliptic Curve Cryptography
الگوریتمهای Asymmetric از CPU بیشتری نسبت به الگوریتمهای Symmetric استفاده میکنند.
در شکل زیر میتوانید میان الگوریتمهای Symmetric و Asymmetric را مشاهده کنید:
Hashes:
از الگوریتمهای Hashing برای Protection در لایه Data Integrity استفاده میشوند؛ هدف اصلی این الگوریتمها تضمین صحت دیتا میباشد.
الگوریتم Hashing برخلاف الگوریتمهای Encryption یک پروسه یک طرفه میباشد.
ورودی الگوریتمهای Hashing متغیر ولی خروجی الگوریتم Hashing ثابت میباشد. برای مثال در( MD5 (Message Digest 5 خروجی الگوریتم همیشه 128 بیت میباشد و یا در الگوریتم Sha1 از 160 بیت استفاده میشود.
یکی از مزایای الگوریتمهای Hashing این است که هیچ وقت دو دیتای متفاوت یک Hash یکسان ندارند که به این قابلیت Collision Resistance میگویند.
به خروجی الگوریتمهای Hashing در اصطلاح Digest یا Message Digest یا Hash گفته میشود.
از مهمترین الگوریتمهای Hashing میتوان به موارد زیر اشاره کرد:
- (Message Digest 5 (MD5
خروجی این الگوریتم 128 بیت Hash میباشد.
- (Secure Hash Algoritm 1 (SHA-1
خروجی این الگوریتم 160 بیت Hash میباشد.
- (Secure Hash Algoritm 2 (SHA-2
خروجی این الگوریتم 224 بیت و 512 بیت Hash میباشد.
یکی از چالشهای امنیتی که در زمینه Hashing وجود دارد این است که در صورتی که یک هکر در میان راه در شبکه دیتا و Hash مربوط به آن را بگیرد، براحتی میتواند اصل دیتا و Hash مربوط به آن را تغییر دهد و سپس آن را برای مقصد ارسال کند؛ برای حل این مشکل از یک کلید در زمان ایجاد Hash استفاده میشود. بنابراین در صورتی که هکر این کلید را نداشته باشد نمیتواند دیتای ما را تغییر دهد.
برای استفاده از یک کلید در مکانیزم Hashing از قابلیتهای HMAC یا Digital Signature استفاده میشود.
در شکل زیر میتوانید مقایسه میان الگوریتمهای Hashing را مشاهده کنید:
(Hashed Message Authentication Code(HMAC:
هدف اصلی HMAC در امنیت Data Integrity و Authentication میباشد؛ در این روش از یک کلید مشترک برای ایجاد Hashing استفاده میشود که این کلید برای سمت مقابل ارسال نمیشود و سمت مقابل نیز بایستی این کلید را برای رسیدن به یک Hash دریافتی داشته باشد.
در شکل زیر میتوانید مکانیزم HMAC را مشاهده کنید:
Digital Signature:
هدف اصلی Digital Signature هم Data Integrity و Authentication و Non-Repudiation یا عدم انکار میباشد.
در این روش Hash دیتا توسط الگوریتم Hashing ایجاد میشود و سپس این Hash توسط Private Key سیستم شما Encrypte میشود که به خروجی آن Signed Hash گفته میشود سپس دیتا به همراه Signed Hash برای سمت مقابل فرستاده میشود.
مزیتی که این روش دارد این است که هر طرف از یک جفت کلید برای عملیات Encryption و Decryption استفاده میشود و Private Key برای سمت مقابل ارسال نمیشود بلکه فقط Public Key برای سمت مقابل جهت عملیات Decryption ارسال میشود.
مکانیزم Digital Signature نسبت به مکانیزم HMAC امنیت بالاتری دارد به دلیل اینکه دیتایی که توسط Private Key شما Sign شده است قابل انکار نمیباشد ولی در HMAC قابل انکار است.
یکی از مشکلاتی که Digital Signature دارد این است که بدلیل اینکه در این مکانیزم از الگوریتم Encryption استفاده میشود CPU و زمان بیشتری نسبت به HMAC برای Hashing مصرف میکند.
یکی از چالشهایی که در مکانیزم Digital Signature وجود دارد این است که سمتی که Public Key شما را دریافت میکند از چه طریقی میتواند بررسی کند که این Public Key متعلق به شما میباشد که برای حل این مشکل بایستی از یک Certificate Authority سرور استفاده کنیم که وظیفه آن صدور Key Pair برای Nodeها و تایید Certificate مربوط به آنها میباشد.
Key Managment:
یکی از چالشهایی که در Symmetric Algoritmها وجود داشت ارسال کلیدهای یکسان میان دو طرف بود طوری که این کلید قابل شنود توسط افراد غیرمجاز نباشد.
به مکانیزمی که در آن یک کلید تولید و سپس میان دو طرف بدون اینکه توسط افراد غیرمجاز قابل شنود باشد Key Managment یا Key Exchange گفته میشود.
یکی از روشهای ارسال کلید توسط الگوریتم Asymmetric است که توسط مکانیزم Diffie-Helman انجام میشود.
!It's possible to change your life at any time
IPSEC and SSL
از معروفترین VPNها در ساختار امنیت شبکه میباشند که در آنها از تمامی مکانیزمها و الگوریتمهای امنیتی که در بالا ذکر شد استفاده میشود؛ در IPSEC تمامی ترافیک IP در VPN ارسال میشود در حالی که در SSL تمامی ترافیک TCP از VPN ارسال میشود.
در IPSEC VPN از مکانیزمها و الگوریتمهای زیر استفاده میشود:
- ESP and AH
دو روش برای پیادهسازی IPSEC میباشد که در( ESP (Encapsulation Security Payload تمامی قابلیتهای IPSEC پیادهسازی میشود و دیتا و Header رمز یا Encrypte میشوند. در حالی که در( AH (Authentication Header تمامی ویژگیهای ESP را دارد بجز Encryption دیتات که به همین دلیل در اکثر سناریوهای IPSEC VPN از آن استفاده نمیشود.
- Encryption Algorithm
در این قسمت الگوریتمهایی که برای Encryption دیتا در Symmetric استفاده میشود را مشخص میکنیم که شامل الگوریتمهای
زیر میباشد:
1- DES
2- 3DES
3- AES
- Hashing Algorithm
در این قسمت بایستی الگوریتمهایی که قرار است برای عملیات Hashing استفاده شوند را مشخص کنیم که شامل موارد زیر میباشند:
1- MD5
2- Sha-1
- Authentication Algorithm
در این قسمت الگوریتمهای Authentication در IPSEC VPN مشخص میشود که شامل متدهای زیر میباشند:
1- (Pre-Shared Key(PSK
2- RSA Digital Signature
- Key Managment
در این قسمت از الگوریتم Diffie-Helman برای ایجاد کلید Symmetric و Exchange آن با سمت مقابل استفاده میشود.
Public Key Infrastructure
PKI به معنی بستری برای انتقال Public Key میباشد؛ یکی از چالشهای امنیتی که در الگوریتمهای Asymmetric وجود داشت این بود که شما بایستی Public Key را از سمت مقابل دریافت میکردید و تا زمانی که شما این Public Key را دریافت نکنید نمیتوانید دیتای خود را رمز کنید حال مشکل اینجاست که ممکن است یک هکر Public Key خودش را با نام شما ارسال کند و سمت مقابل اطلاعات Public Key شما را رمز میکند و به سمت شما ارسال میکند و شما این اطلاعات را با Private key خود باز می کنید.
به عبارت دیگر یک هکر Public Key خودش را با اسم خودش اعلام میکند. چالش امنیتی Binding میان Public Key و نام میباشد.
در روش PKI ما بستری را برای انتقال Public Key ایجاد میکنیم طوری که سمت مقابل مطمئن باشد که Public Key مختص ما میباشد؛ برای این منظور ما از Digital Certificate استفاده میکنیم.
یکی از Component هایی که در PKI وجود دارد (CA (Certificate Authority میباشد در این حالت Node A و Node B برای خودشان یک جفت کلید یا Key Pair ایجاد میکنند و CA یک سازمان یا سروی میباشد که مورد تایید Node A و Node B میباشد هر دو Node در این سناریو Public Key CA را دارند.
Node A و Node B میتوانند این Public Key را از طریق تلفن یا ایمیل دریافت کنند؛ بنابراین این دو Node مطمئن هستند که این public Key متعلق با CA میباشد. خود CA هم در این سناریو یک Key Pair دارد.
در این حالت هر Node بایستی Public Key خودش را با همراه نام خودش به CA Server بفرستد تا CA آن را تایید کند در این حالت CA بایستی مطمئن شود که Public Key مختص شما هست. برای این منظور بایستی شما را Authenticate کند که در این حالت شما بایستی اطلاعات هویتی خود را مانند کارت ملی و یا شناسنامه و غیره را به CA بدهید تا بتواند شما را احراز هویت کند و مطمئن شود که Public Key متعلق به شما میباشد.
بعد از اینکه CA مطمئن شد که Public Key متعلق به شما میباشد Public Key و Name شما را با هم Hash میکند و سپس آنها را با Private خود Sign میکند و در قالب یک Certificate به شما ارائه میدهد.
بنابراین در این حالت هر دو Node A و Node B یک Certificate از CA دریافت میکنند که تاییدی از Public Key شان میباشد.
هر Certificate شامل Public Key، Name و Sign CA میباشد.
بنابراین در صورتی که یک Node بخواهد Public Key خود را به سمت مقابل بدهد کافی است Certificate خود را به سمت مقابل بدهد و سمت مقابل برای اینکه این Certificate را تایید کند بایستی امضاء یا Sign CA را با Public Key CA تایید کند.
به تایید کردن Public Key CA توسط یک Node در اصطلاح Authentication CA میگویند و به درخواستی که توسط یک Node برای تایید Public Key خودش به CA فرستاده میشود Enroll کردن Certificate میگویند. به Certificate یک CA در اصطلاح Root Certificate گفته میشود که شامل Public Key خود CA میباشد.
به Certificate که توسط Nodeها به یکدیگر منتقل میشود Identitiy Certificate گفته میشود و به یک امضاء یا Sign در اصطلاح Thumbprint نیز گفته میشود.
یک Certificate میتواند شامل چندین امضاء نیز باشد این امضاءها معمولاً توسط الگوریتمهای Sha-1 یا Sha-2 که الگوریتمهای Hash میباشند Hash میشود.
از معروفترین Root CAها میتوان به موارد زیر اشاره کرد:
- VeriSign
- TURKTRUST
یک Certificate شامل Componentهای زیر میباشد:
- Serial Number
سریال نامبر توسط CA یک Certificate صادر و Track میشود.
- Issuer
مشخص کننده CA یک Certificate میباشد.
- Validity
مدت زمان اعتبار یک Certificate میباشد.
- Subject
شامل اطلاعاتی نظیر(Organization Unit(OU و (Organization (O و Country میباشد.
- Subject Public Key
Public Key مربوط به یک Node میباشد.
X.500 and X.509v3 Certificate
X500 مجموعهای از استانداردها در رابطه با Directory Serviceها میباشد و همچنین طریقه Organize شدن آنها را مشخص میکند؛ نظیر Microsoft Active Directory که در ساختار Directory آن میتوان OU=Engineering,CN=Bob و O=cisco را تعریف کرد.
X.509v3 یک استانداردی برای Digital Certificate میباشد که شامل Componentهای زیر میباشند:
- Serial Number
سریال نامبر Certificate میباشد.
- Subject
مشخص کننده یک شخص یا یک Entity در Certificate میباشد.
- Signature Algorithm
الگوریتم امضاء میباشد.
- Signature
امضاء Certificate میباشد.
- Issuer
صادر کننده Certificate میباشد.
- Valid Form
تاریخ اعتبار Certificate از زمان شروع میباشد.
- Valid To
تاریخ اتمام اعتبار Certificate میباشد.
- Key Usage
کاربرد کلید را مشخص میکند.
- Public Key
Public Key یک Node در Certificate میباشد.
- Thumbprint
امضاء یک Certificate میباشد.
- Tumbprint Algoritm
الگوریتم امضاء میباشد.
Certificate Revocation List Location
آدرس مکانی را مشخص میکند که شما میتوانید با مراجعه به این مکان Certificationهایی که باطل شدهاند را مشاهده کنید که در این CRL شما میتوانید لیست سریال نامبر Certificateهایی که Revoke یا باطل شدهاند را مشاهده کنید.
!It's possible to change your life at any time