پروازی بر دنیای امنیت شبکه (قسمت اول) - مقدمه

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

هدف از امنیت در شبکه چیست؟

وقتی شبکه های کامپیوتری را در نظر میگیریم ، میتوان به آنها از منظرهایی متفاوتی نگاه کرد. برای مثال یک مدیر ارشد ممکن شبکه را به عنوان یک ابزار در بیزینس که با استفاده از آن میتوان راحت‌تر و بهتر به اهداف شرکت رسید ، ببیند. کاربران‌نهایی (End Users) ممکن است شبکه را فقط به عنوان ابزاری ببینند که به بوسیله ی آن میتوانند کارشان را به اتمام برسانند و یا منابع و اطلاعات خودرا برای دیگر یوزر ها به اشتراک بگذارند. متاسفانه همه ی کاربران شبکه به درستی وظیفه ی خودرا در امن نگه‌داشن شبکه و داده ها انجام  نمیدهند و باید توجه داشت که همیشه کاربران یک شبکه، میتوانند یک آسیب‌پذیری(Vulnerability) بسیار جدی در شبکه باشند، زیرا آنها هستند که دارای پسورد ویا credential هایی میباشند و به آنها اجازه ی دسترسی به شبکه داده میشود.

حتی اگر شما تمام دیدگاه‌های امنیتی و کانسپت های مطرح شده در کتاب‌های مربوطه مانند CCNA Security را پیاده سازی کنید، اگر یک کاربر در معرض خطر قرار بگیرد (مثلا ویروسی شود) و یا دسترسی به Device ها، منابع و داده هایی بگیرد که نباید گرفته باشد، بازهم شبکه ی شما امنیت خود را از دست داده است!پس همیشه به خاطر داشته باشید : که رفتار کاربران شبکه ی شما میتواند ریسک های امنیتی بسیاری را برای شما ایجاد کند و آموزش کاربران شبکه، یکی از نکات کلیدی و جامع ، در امن نگه‌داشتن شبکه میباشد.

محرمانگی ، امانت‌داری و قابل دسترس بودن (Confidentiality, Integrity and Availability)

اهداف امنیت شبکه، عموما دارای 3 مفهوم مهم میباشند :

  • محرمانگی(Confidentiality): در شبکه ما دارای 2 نوع داده میباشیم ، داده‌های درحال حرکت(دیتاهایی که در شبکه درحال جابجایی میباشند) و داده های درحال استراحت (زمانی که دیتاها بصورت ثابت بروی یک بستر ذخیره سازی مانند یک سرور،Cloud،یک سیستم workstation و... نشسته باشند). محرمانگی بدین معنی است که فقط سیستم ها و افراد مجاز ، اجازه ی دسترسی و مشاهده ی موارد حساس را داشته باشند و از آنطرف افراد غیر مجاز ، به هیچ‌وجه هیچ دسترسی ای به دیتا نداشته باشند. برای داده های درحال حرکت هم راهکارهایی نظیر رمزنگاری(Encryption) در نقطه ی ارسال داده (برای اینکه در طول انتقال قابل خواندن نباشند) و یا جداسازی شبکه ها از یکدگیر ، میتواند جوابگو باشد.در کتاب های مربوط به امنیت بروی این دو مبحث صحبتهای زیاده شده است.
  • امانت داری و دُرُستی (Integrity): بدین معنی است که هرگونه تغییر در داده ها فقط توسط سیستم‌ها و افراد مجاز، انجام شود.
  • قابل دسترس بودن (Availability): اگر داده های داخل شبکه برای کاربران مجاز هم قابل دسترس نباشد (مثلا بخاطر یک حمله ی DoS ویا یک خطای کُلی در شبکه) ، نتیجه اش میتواند برای بسیاری از کمپانی ها و کاربرانی که کارشان وابسته به شبکه میباشد و شبکه برای آنها ابزار مهمی است ، مهم و قابل توجه باشد ، چراکه میتواند باعث ضرر مالی بسیاری شود.

آنالیز هزینه‌ها در برابر منافع در امنیت

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

مدیریت ریسک کلمه ای است که بارها و بارها در موقعیت های مختلف میشنوید ، که این ریسک بر اساس اصول و کانسپت های مربوط به حفاظت از دارایی و مدیریت امنیتی بنا شده است.

داراییِ ما چیست؟ میتواند هرچیزی که برای کمپانی با ارزش است باشد. میتواند موارد قابل لمس مانند افراد ، کامپیوتر ها ، وسایل و... باشد ویا ابزاری که غیرقابل لمس میباشند، مانند ایده‌ها ، دیتابیس ها ، اطلاعات اکانت ها و... . دانستن دارایی‌هایی که شما قصد برقراری امنیت برای آنها را دارید همراه با ارزششان،مکانشان و خطرهایی که آنهارا در معرض خطر قرار میدهد به شما کمک میکند که بهتر و مفیدتر زمان و بودجه ی لازمه برای امن سازی این موارد را مشخص کنید.

آسیب‌پذیری(Vulnerability): یک ضعفِ قابل سوء استفاده(exploitable) در یک سیستم ویا طراحی‌سیستم را یک آسیب‌پذیری میگویند. آسیب‌پذیری ها میتوانند در پروتکل ها ، سیستم‌عامل ها ،اپلیکیشن ها و طراحی های گوناگون پیدا شوند.هروزه آسیب‌پذیری های گوناگونی کشف میشوند.

تهدید(Threat): هرگونه خطر برای یک دارایی را تهدید میگویند.اگر یک آسیب‌پذیری ای وجود نداشته باشد ولی همچنان Exploit نشده باشد(نتوانسته اند که ازآن سوء استفاده کنند) یا هنوز بصورت عمومی شناخته نشده باشد، به آن تهدید ، latent یا تهدید پنهان گفته میشود. راهکاری که متاسفانه بسیار هم در ایران باآن مواجه هستیم ، پاک کردن صورت مسئله است ! یعنی چی ؟ فرض کنید در شبکه ی خود VMـی Patch نشده و آسیب‌پذیر دارید که ممکن است به آن حمله های متفاوتی انجام شود.با جدا سازی آن VM از شبکه ، یکجورایی میتوان گفت شبکه ی خود را امن کردید چراکه دارایی‌ِشما حتی برای خودتان هم در دسترس نیست و خارج از مدار قرار دارد، پس تهدیدی علیه آن وجود ندارد.

توجه داشته باشید که باید موارد گوناگون را آنالیز و بررسی و دسته بندی کنید ، ما نباید هزینه ای را اشتباها و بروی چیزی که ارزش ندارد انجام دهیم ویا هزینه ای بیشتر از چیزی که لازم است را متحمل شویم.برای مثال فرض کنید ماشینی را با قیمت 200 دلار خریداری کردید و بروی آن یک دزدگیر 2000 دلاری بگذارید ! امنیت چیزیست باید برای آن هزینه شود، اما بصورت صحیح و درست ! نه احمقانه و اشتباه.

جمله ای که معمولا در دنیای امنیت با آن مواجه میشویم این است که "هیچوقت امنیت 100% نیست !" ، چراکه قبول کردن این ریسک اشتباه است.شما میتوانید با هزینه کردن ، خریداری تجهیزات و پیاده سازی راهکارهای امنیتی پیشرفته از دارایی خود به خوبی محافظت کنید. اما هیچوقت نمیتواند این ریسک را از بین ببرید ، پس باید به دنبال یک راهکاری برای balance باشید.

در قسمت بعدی بیشتر درمورد هزینه در برابر منابع صحبت خواهیم کرد و بیشتر مبحث را باز میکنیم.

موفق باشید.