امنيت شبكه

مقدمه :
تهديدات امنيت شبكه
بي شك يكي از مهمترين مسائل امروز دنياي علم كه در تمامي ابعاد زندگي بشر نفوذ داشته است شبكه و بكارگيري آن در تكنولوژي است، چرا كه هرگز نمي توان مزاياي شگفت انگيز آن را نسبت به عدم استفاده از اين تكنولوژي را ناديده گرفت.مزايايي از قبيل به اشتراك گذاري منابع و اطلاعات، دسترسي به منابع در هر جاي دنيا و در كمترين زمان ممكن، ارتباطات متقابل به طور همزمان و ….. .

به همين دليل استفاده از اين امكان با سرعتي شگرف در حال فزوني است ، اما آنچه در اين بين ناخوشايند جلوه مي نمايد اين است كه هر چه گستره اين تكنولوژي و استفاده از آن بيشتر مي شود، خطراتي كه آنرا و كاربران آنرا تهديد مي كند بيشتر مي شود.
مهمترين اين خطرات وجود افرادي است كه به هر دليل قصد رخنه در حريم غير مجاز امنيتي شبكه را دارند تا از آن سوء استفاده ببرند.
اين افراد كه مهمترين نوع آنها به هكرها موسومند با ورود بدون مجوز به يك سيستم قصد ضربه زدن به آن و يا ربودن اطلاعات را دارند.
از طرفي متأسفانه بايد گفت كه ابزارهاي قوي و فراواني وجود دارند كه راه را براي نفوذگران شبكه آسانتر مي كنند. اين ابزارها در اينترنت فراوانند و بسياري از سايت هاي اينترنتي به رايگان در اختيار همه قرار مي دهند.

بطور خلاصه مهمترين اين ابزارها را همراه با كاربرد آنها معرفي مي كنيم.
– ابزاري به نام cheops كه يك توپولوژي كامل از شبكه را ارائه مي دهد .
– ابزارهاي قدرتمندي مانند Nscan ، Nmap ، Netcat كه تمامي پورتهاي روي يك سرور را به طور دقيق بررسي مي كنند، علاوه بر اين قادر به تشخيص خودكار سيستم عامل دستگاه هدف مي باشند.

– دستوراتي مانند ping ، tracert و همچنين netstate در سيستم عامل ويندوز وجود دارند كه براي يافتن آدرس IP يك سرور به كار مي روند.
– دستوري به نام Telnet –تعبيه شده در ويندوز- كه امكان بررسي پورتهاي روي سيستم و حتي ارتباط با آنها را ممكن مي سازد.
– Nessus و SATAN از جمله ابزار ي هستند كه قادر به تشخيص آسيب پذيريهاي يك شبكه مي باشند.
اين نوع ابزارها در ابتدا براي مديران شبكه و به منظور شناسايي آسان معايب شبكه طراحي شدند ، اما اكنون مورد سوء استفاده نفوذگران نيز واقع شده اند.

پس نتيجه مي شود كه اينترنت آن قدر هم كه به نظر مي رسد امن نيست . ويروسها ، جاسوسان و هكرها همه و همه در جستجوي سيستمهاي آسيب پذير در اينترنت هستند.
در اين راستا بايد راهكارهايي را جهت تأمين امنيت بررسي نمود كه اين راهكارها بايد داراي خصوصيات زير باشند.

– سياست مؤثر و يكپارچه
– استفاده از ابزارهاي متنوع
– طراحي صحيح در اعمال سياستها
– به روز بودن تكنيكهاي دفاعي
– آموزش و جلب همكاري عمومي
محصولات امنيت شبكه نيز شامل موارد ذيل مي باشند :
– ديوار آتش Firewall
– مهاجم ياب Intrusion Detection System
– شبكه هاي اختصاصي مجازي VPN
– سيستمهاي طعمه Hony pots
– تحليلگر وقايع ثبت شده Security log Analyzers

هكرها كه مهمترين آسيب رساني را به شبكه ها به خود اختصاص داده اند اول از همه دنبال شكاف هاي امنيتي مي گردند.
نصب يك Firewall يا ديواره آتشين بسياري از معضلات مربوط به امنيت شبكه را حل خواهد نمود، زيرا نفوذگران معمولاً به دنبال رايانه هايي مي گردند كه به طور دائمي به اينترنت متصل باشند و توسط ديواره آتش محافظت نشده اند. از اين جمله مي توان رايانه ها و شبكه هاي متعلق به شركتهاي تازه كار و مدارس و يا افراد عادي را عنوان نمود.

امروزه در كشورهايي كه داراي خطوط ارتباطي با سرعت بالا نظير DSL و يا مودم هاي كابلي مي باشند به كاربران خانگي توصيه مي گردد كه هر يك از فايروال استفاده نموده و با استقرار لايه فوق بين شبكه داخلي در منزل و اينترنت ، مسائل ايمني را رعايت نمايند.
بدين ترتيب با استفاده از يك فايروال مي توان يك شبكه را در مقابل عمليات غير مجاز توسط افراد مجاز و عمليات مجاز توسط افراد غير مجاز حفاظت كرد.
به دليل اهميت موضوع Firewall و داشتن يك ديواره آتشين موضوع فوق را به طور گسترده تر بررسي مي نمائيم و در پايان طرز كار و عملكرد معروفترين فايروالها را بررسي مي نمائيم.

Firewall چيست؟

ديواره آتش Firewall يك اصطلاح ژنريك براي توصيف انواعي از روشهاي امنيتي براي محافظت از ارتباطات اينترنتي و شبكه اي شماست.
شايد عجيب به نظر برسد ، اما خط تلفن با ارتباط كابلي كه كامپيوتر شما را به اينترنت وصل مي كند تعدادي نقطه دستيابي را در اختيار نفوذگران قرار مي دهد.

پروتكل TCP/IP كه براي دستيابي اكثر محتويات وب و فايلهايي كه بينندگان اينترنت با آنها كار مي كنند به كار مي رود، بيش از ۶۵۰۰۰ درگاه (PORT ) مرتبط با خود دارد كه مكانهايي هستند كه به داده ها در آنها اجازه عبور از اينترنت به كامپيوتر شما داده مي شود.
هكرهاي باهوش مي توانند دريابند كه كدام درگاهها بيشترين قابليت دستيابي را دارند و توجه خود را معطوف نفوذ به آنها مي كنند.
نظارت و حفاظت روي همه اين درگاهها وظيفه اصلي يك FIREWALL مي باشد.
بنابراين Firewall سيستمي است بين كاربران يك شبكه محلي و يك شبكه بيروني (مثل اينترنت) كه ضمن نظارت بردسترسي ها , در تمام سطوح , ورود و خروج اطلاعات را تحت نظر دارد .

بسته هاي TCP و IP قبل و پس از ورود به شبكه وارد ديوارآتش ميشوند و منتظر مي مانند تا طبق معيارهاي امنيتي خاصي پردازش شوند . حاصل اين پردازش احتمال وقوع سه حالت است :
۱- اجازه عبور بسته صادر ميشود (Accept Mode)
2- بسته حذف ميشود (Blocking Mode)
3- بسته حذف ميشود و پيام مناسبي به مبدا ارسال بسته فرستاده ميشود (Response Mode).
همانطور كه همه جا ايست و بازرسي اعصاب خرد كن و وقتگير است ديوار آتش نيز ميتواند بعنوان يك گلوگاه باعث بالا رفتن ترافيك , تاخير, ازدحام و بن بست شود .

از آنجا كه معماري TCP/IP بصورت لايه لايه است ( شامل ۴ لايه : فيزيكي, شبكه, انتقال و كاربردي ) وهر بسته براي ارسال يا دريافت بايد از هر ۴ لايه عبور كند بنابراين بايد براي حفاظت فيلدهاي مربوط شده در هر لايه را مورد بررسي قرار دهيم .
بيشترين اهميت در لايه هاي شبكه , انتقال و كاربرد است چون فيلد مربوط به لايه فيزيكي منحصربه فرد نيست و در طول مسير عوض ميشود .
پس به يك ديوار آتش چند لايه نياز داريم .

سياست امنيتي يك شبكه مجموعه اي از قواعد حفاظتي است كه بنابر ماهيت شبكه در يكي از لايه هاي ديوار آتش تعريف ميشوند .
كارهايي كه در هر لايه از ديوار آتش انجام ميشود عبارتست از:
۱- تعيين بسته هاي ممنوع ( سياه ) و حذف آنها يا ارسال آنها به سيستمهاي مخصوص رديابي (لايه اول ديوار آتش).
۲- بستن برخي از پورتها متعلق به برخي سرويسها مثلTelnet , FTP و …(لايه دوم ديوار آتش).
۳- تحليل سرآيند متن يك صفحه وب يا نامه الكترونيكي يا …. (لايه سوم ديوار آتش).

A – در لايه اول فيلدهاي سرآيند بسته IP مورد تحليل قرار ميگيرد :
– آدرس مبدا( Source Address ) : برخي از ماشينهاي داخل يا خارج شبكه حق ارسال بسته را ندارند , بنابراين بسته هاي آنها به محض ورود به ديوار آتش حذف ميشود .
– آدرس مقصد( Destination Address ) : برخي از ماشينهاي داخل يا خارج شبكه حق دريافت بسته را ندارند , بنابراين بسته هاي آنها به محض ورود به ديوار آتش حذف ميشود .

IP آدرسهاي غيرمجاز و مجاز براي ارسال و دريافت توسط مدير مشخص ميشود .
– شماره شناسايي يك ديتا گرام تكه تكه شده( Id & Fragment Offset ) : بسته هايي كه تكه تكه شده اند يا متعلق به يك ديتا گرام خاص هستند حذف ميشوند .
– زمان حيات بسته (Time To Live ) : بسته هايي كه بيش ازتعداد مشخصي مسيرياب را طي كرده اند حذف ميشوند.
– بقيه فيلدها : بر اساس صلاحديد مدير ديوار آتش قابل بررسي اند .
بهترين خصوصيت لايه اول سادگي و سرعت آن است . چرا كه در اين لايه بسته ها بصورت مستقل از هم بررسي ميشوند و نيازي به بررسي لايه هاي قبلي و بعدي نيست. به همين دليل امروزه مسيريابهايي با قابليت انجام وظايف لايه اول ديوار اتش عرضه شده اند كه با دريافت بسته آنها را غربال كرده به بسته هاي غير مجاز اجازه عبور نميدهند.

با توجه به سرعت اين لايه هر چه قوانين سخت گيرانه تري براي عبور بسته ها از اين لايه وضع شود بسته هاي مشكوك بيشتري حذف ميشوند و حجم پردازش كمتري به لايه هاي بالاتر اعمال ميشود .
B – در لايه دوم فيلدهاي سرآيند لايه انتقال بررسي ميشوند :
– شماره پورت پروسه مبدا و مقصد : با توجه به اين مساله كه شماره پورتهاي استاندارد شناخته شده اند ممكن است مدير ديوار آتش بخواهد بخواهد مثلا سرويس FTP فقط براي كاربران داخل شبكه وجود داشته باشد بنابراين ديوار آتش بسته هاي TCP با شماره پورت ۲۰ و ۲۱ كه قصد ورود يا خروج از شبكه را داشته باشند حذف ميكند . ويا پورت ۲۳ كه مخصوص Telnet است اغلب بسته است . يعني بسته هايي كه پورت مقصدشان ۲۳ است حذف ميشوند .

– كدهاي كنترلي (TCP Code BITS) : ديوار آتش با بررسي اين كدها به ماهيت بسته پي ميبرد و سياستهاي لازم براي حفاظت را اعمال ميكند . مثلا ممكن است ديوار آتش طوري تنظيم شده باشد كه بسته هاي ورودي با SYN=1 را حذف كند . بنابراين هيچ ارتباط TCP از بيرون به شبكه برقرار نميشود .
– فيلد شماره ترتيب و Acknowledgement : بنابر قواعد تعريف شده توسط مدير شبكه قابل بررسي اند .
در اين لايه ديوار آتش با بررسي تقاضاي ارتباط با لايه TCP , تقاضاهاي غير مجاز را حذف ميكند . در اين مرحله ديوار آتش به جدولي از شماره پورتهاي غير مجاز دارد . هر چه قوانين سخت گيرانه تري براي عبور بسته ها از اين لايه وضع شود و پورتهاي بيشتري بسته شوند بسته هاي مشكوك بيشتري حذف ميشوند و حجم پردازش كمتري به لايه سوم اعمال ميشود .
C – در لايه سوم حفاظت بر اساس نوع سرويس و برنامه كاربردي صورت مي گيرد :
در اين لايه براي هر برنامه كاربردي يك سري پردازشهاي مجزا صورت ميگيرد . بنابراين در اين مرحله حجم پردازشها زياد است . مثلا فرض كنيد برخي از اطلاعات پست الكترونيكي شما محرمانه است و شما نگران فاش شدن آنهاييد . در اينجا ديوار آتش به كمك شما مي آيد و برخي آدرسهاي الكترونيكي مشكوك را بلوكه ميكند , در متون نامه ها به دنبال برخي كلمات حساس ميگردد و متون رمزگذاري شده اي كه نتواند ترجمه كند را حذف ميكند .
يا ميخواهيد صفحاتي كه در آنها كلمات كليدي ناخوشايند شما هست را حذف كند و اجازه دريافت اين صفحات به شما يا شبكه شما را ندهد .
در هر صورت تعابير و تعاريف گوناگوني درباره Firewall وجود دارد كه تعدادي از اين تعابير بررسي مي گردد.
دیوار آتش چیزی نیست جز یک نرم افزار یا سخت افزار که بين کامپيوتر شما و اينترنت قرار می گیرد و با بررسی ترافیک ورودی و خروجی هکر ها، ویروسها و برنامه هایی که سعی می کنند از طریق اینترنت به سیستم شما دسترسی داشته باشند را بلوکه می کند.
دیوار آتش اولین قدم برای محافظت سیستم است.
فرض کنيد، سازمانی دارای ۵۰۰ کارمند باشد. سازمان فوق دارای ده ها کامپيوتر بوده که بر روی هر کدام يک کارت شبکه نصب شده و يک شبکه درون سازمانی
( خصوصی ) ايجاد شده است .
سازمان فوق دارای يک يا چند خط اختصاصی ۱ T و يا T3 برای استفاده از اينترنت است . بدون استفاده از فايروال تمام کامپيوترهای موجود در شبکه داخلی، قادر به ارتباط با هر سايت و هر شخص بر روی اينترنت می باشند. کاربران مربوطه قادر به استفاده از برنامه هائی همچون FTP و يا Telnet بمنظور ارتباط مستقيم با افراد حقوقی و يا حقيقی موجود بر روی اينترنت می باشند.
عدم رعايت مسائل ايمنی توسط پرسنل سازمان، می تواند زمينه دستيابی به اطلاعات موجود در شبکه داخلی را برای سارقين و متجاوزان اطلاعاتی اينترنت فراهم نمايد.

زمانيکه در سازمان فوق از فايروال استفاده گردد، وضعيت کاملا” تغيير خواهد کرد. سازمان مربوطه می تواند برروی هر يک از خطوط ارتباطی اينترنت يک فايروال نصب نمايد.فايروال مجموعه سياست های امنيتی را پياده سازی می نمايد. مثلا” يکی از قوانين فوق می تواند بصورت زير باشد :
– تمام کامپيوترهای موجود در شبکه مجاز به استفاده از اينترنت می باشند ، فقط يک فرد مجاز به استفاده از سرويس FTP است و ساير پرسنل مجاز به استفاده از سرويس فوق نخواهند بود.

يک سازمان می تواند برای هر يک از سرويس دهندگان وب خود ( FTP، Telnet و … ) قوانين مشابه تعريف نمايد. سازمان قادر به کنترل پرسنل بهمراه ليست سايت های مشاهده خواهد بود. با استفاده از فايروال يک سازمان قادر به کنترل کاربران شبکه خواهد بود .
دیوار آتش دسترسی برنامه ها به اینترنت را کنترل می کند هر وقت برنامه ای بخواهد به اینترنت دسترسی داشته باشد یک هشدار می دهد.
نحوه کار خیلی ساده است برنامه هایی که دسترسی آنها به اینترنت منطقی است مثل مديریت پست الکترونیکی یا کاوشگر وب را تایید می کنید و برنامه های ناشناس و برنامه هایی که دسترسی به اینترنت آنها منطقی نیست را بلوکه می کنید. ممکن است این هشدار ها خسته کننده به نظر بیایند ولی بعد از مدتی دیوارآتش با بخاطر سپردن پاسخهای شما از ورود برنامه های مجاز جلو گیری نمی کند. درنتيجه تعداد هشدارها کم می شود. در نهایت دیوار آتش با بررسی ترافیک جلوی دسترسی هکرها، سرقت اطلاعات و برسی آسیب پذیری سیستم را می گیرد.

پس همانطور كه ملاحظه گرديد ديواره آتش ، نرم افزاري است كه دقيقا همانند يك نگهبان عمل مي كند.
در دنياي اينترنت ، اطلاعات به صورت بسته ها در حال حركت هستند. رايانه فرستنده ، اطلاعات را به قسمتهاي كوچك تقسيم مي كند و آنها در بسته هاي الكترونيكي قرار مي دهد و ارسال مي كند. در سوي ديگر، رايانه گيرنده اطلاعات بسته ها را باز مي كند ومحتويات آنها را كنار هم مي چيند تا اطلاعات اصلي مجددا ساخته شود.

يك ديوار آتش(Firewall ) پاكتهاي الكترونيكي دربرگيرنده بسته هاي اطلاعاتي را مرور مي كند -يك روش سريع ، اما داراي قابليت بررسي مجوزها.
همچنين ديوار آتش به داخل بعضي پاكتها نگاه مي كند تا محتواي بسته هاي اطلاعاتي را بررسي نمايد – يك روش كند، اماكامل و دربرگيرنده .
ديوارهاي آتش تناسب بين اين دو روش را اين چنين برقرار مي سازند كه محتواي چند بسته اطلاعاتي ابتدايي را از يك مجموعه اطلاعات تجزيه و تحليل مي كنند; اگراشكالي مشاهده نشد، مابقي بسته هاي اطلاعاتي آن مجموعه را، به صورت اجمالي بررسي مي نمايند.

تعبيري ديگر اين است كه هرگاه يك شبكه داخلي (Network-LAN Local Area) را به اينترنت متصل كنيم با خطرات بالقوه‌اي مواجه مي‌شود، به جهت فضاي بازي كه در اينترنت حاكم است، هر شبكه محلي كه به اينترنت متصل شود، در معرض حمله قرار مي‌گيرد. مهاجمين (hackerها) مي‌توانند به داخل آن شبكه محلي وارده شده و از راههاي مختلف خسارت وارد كنند: آنها مي‌توانند داده‌هاي مهم را بدزدند يا خراب كنند، كامپيوترها را در آن شبكه از كار بيندازند و يا از منابع درون كامپيوترهاي شبكه استفاده‌هاي سوء نمايند.

راه‌حل آن نيست كه ارتباط شبكه از اينترنت قطع شود بلكه مي‌توان آن شبكه را با استفاده از ديواره‌هاي آتش (fire walls) محافظت نمود. ديواره‌هاي آتش به تمام كاربران داخلي شبكه محلي اجازه اتصال به اينترنت را مي‌دهد ولي جلوي نفوذگران و هركس ديگري كه بخواهد از طريق اينترنت به آن شبكه دسترسي غيرمجاز داشته باشد را مي‌گيرد. ديواره‌هاي آتش در پرخطرترين نقطه بين شبكه يك شركت و اينترنت قرار مي‌گيرند.
آنها مي‌توانند به همان صورتي كه مسؤولين شبكه مي‌خواهند، ساده يا پيچيده ساخته شوند. انواع مختلفي از ديواره‌هاي آتش وجود دارد، ولي چند عنصر در همه آنها مشترك است.

يكي از ساده‌ترين روشهاي عملكرد انواع ديواره‌هاي آتش، استفاده از فيلتر كردن بسته‌هاي اطلاعاتي (packets) است. در فيلتر كردن بسته‌ها، يك مسيرياب محافظ
(screening header router) هر يك از بسته‌هاي اطلاعاتي كه از اينترنت به شبكه داخلي و بالعكس عبور مي‌كنند، كنترل مي‌كند. header شامل اطلاعاتي از قبيل آدرس IP فرستنده و دريافت كننده، protocol مورد استفاده براي فرستاده بسته‌ها و اطلاعاتي نظير اين مي‌باشد. براساس اين اطلاعات، مسيرياب متوجه مي‌شود كه چه نوع سرويس اينترنتي براي فرستادن داده‌ها مورد استفاده قرار گرفته است و همچنين هويت شخصي كه اين اطلاعات را فرستاده است كه بوده است.

به اين ترتيب، مسيرياب مي‌تواند انتقال بسته‌هاي مشخصي از اينترنت به شبكه داخلي و برعكس را مسدود كند. مثلاً مسيرياب مي‌تواند انتقال هر نوع ترافيك به جز email را ببندد. كار ديگري كه به عنوان مثال مي‌توان انجام داد آن است بسته‌هاي اطلاعاتي مشكوكي كه از آدرس‌هاي نامطمئن ارسال و يا دريافت مي‌شوند محدود و يا مسدود شوند.

توضيح مطالب عنوان شده اين است كه از ‎آنجا كه فايروالها معمولا براي تاميين امنيت و دفاع از شبكه داخلي در برابر مهاجمين خارجي بكار ميروند، لذا در اكثر موارد آنها را روي دروازه ( Gateway ) شبكه نصب ميكنند.به زبان ساده ميتوان گفت فايروالها همانند قسمت بازرسي يك سازمان كه بر كليه نقل و انتقالات ورودي و خروجي سازمان نظارت دارد، عمل ميكنند.
با اين وجود در بسياري از موارد فايروالها تنها ترافيك ورودي شبكه را كنترل كرده و مانع از ورود بسته هاي درخواست ( Request Packets ) به شبكه ميشوند.

فرض كنيد مهاجمي قصد دارد تمامي سرويسهاي موجود در شبكه شما را شناسايي نمايد. اين مهاجم ميتواند بسته هاي درخواست سرويسهاي مختلف را به كامپيوترهاي شبكه شما ارسال كرده و با دريافت پاسخ متوجه شود كه چه سرويسهايي در شبكه شما فعال ميباشند.در فرهنگ رايج بين مهاجمين شبكه هاي كامپيوتري اين فاز معمولا با عنوان فاز پويش شناخته ميشود.

براي درك بهتراين مطلب بگذاريد ارتباطات TCP را با جزييات بيشتري بررسي نماييم. تمام اتصالهاي مجاز TCP با استفاده از يك ارتباط سه طرفه tree way handshake) )برقرار ميشوند. براي ايجاد اين ارتباط سه طرفه، سيستم مبدا يك بسته از نوع SYN همراه با شماره سريال خود را ارسال مينمايد.
سپس كامپيوتر مقصد يك بسته تاييد ACK) )به همراه شماره سريال خود ميفرستد.
نهايتا در مرحله آخر كامپيوتر مبدا نيز يك بسته تاييد براي شماره سريال كامپيوتر مقصد را به آن ارسال ميكند.