دسته بندی | کامپیوتر و IT |
بازدید ها | 1 |
فرمت فایل | doc |
حجم فایل | 136 کیلو بایت |
تعداد صفحات فایل | 382 |
برای تحلیل و فهم روشهائی که یک نفوذگر با بکارگیری آنها با شبکه حمله می کند، باید یک دانش پایه از تکنولوژی شبکه داشته باشیم. درک مکانیزم حملات ممکن نیست مگر آنکه حداقل اصول TCP/IP را بدانیم.
عاملی که تمام شبکه های مختلف را به صورت موفقیت آمیز به هم پیوند زده است، تبعیت همه آنها از مجموعه پروتکلی است که تحت عنوان TCP/IP در دنیا شناخته می شود. دقت کنید که عبارت خلاصه شده TCP/IP می تواند به دو موضوع متفاوت اشاره داشته باشد:
مدل TCP/IP: این مدل یک ساختار چهار لایه ای برای ارتباطات گسترده تعریف می نماید که آنرا در ادامه بررسی می کنیم.
پشتة پروتکلهای TCP/IP:[1] پشتة TCP/IP مجموعه ای شامل بیش از صد پروتکل متفاوت است که برای سازماندهی کلیه اجزاء شبکة اینترنت به کار می رود.
TCP/IP بهترین پروتکل شبکه بندی دنیا نیست! پروتکلهای بهینه تر از آن هم وجود دارند؛ ولیکن فراگیرترین و محبوبترین تکنولوژی شبکه بندی در دنیای کامپیوتر محسوب می شود. شاید بزرگترین حسن TCP/IP آن باشد که بدون پیچیدگی زیاد، بخوبی کار می کند! اینترنت بر اساس TCP/IP بنا شده و بیشتر حملات نیز مبتنی بر مجموعة پروتکلهای TCP/IP هستند.
برای طراحی یک شبکة کامپیوتری، مسائل و مشکلات بسیار گسرتده و متنوعی وجود دارد که باید به نحوی حل شود تا بتوان یک ارتباط مطمئن و قابل اعتماد بین دو ماشین در شبکه برقرار کرد. این مسائل و مشکلات همگی از یک سنخ نیستند و منشأ و راه حل مشابه نیز ندارند؛ بخشی از آنها توسط سخت افزار و بخش دیگر با تکنیکهای نرم افزاری قابل حل هستند. به عنوان مثال نیاز برای ارتباط بی سیم بین چند ایستگاه در شبکه، طراح شبکه را مجبور به استفاده از مدولاسیون آنالوگ در سخت افزار مخابراتی خواهد کرد ولی مسئلة هماهنگی در ارسال بسته ها از مبدأ به مقصد یا شماره گیری بسته ها برای بازسازی پیام و اطمینان از رسیدن یک بسته، با استفاده از تکنیکهای نرم افزازی قابل حل است. بهمین دلیل برای طراحی شبکه های کامپیوتری، باید مسائل و مشکلاتی که برای برقراری یک ارتباط مطمئن، ساده و شفاف بین دو ماشین در شبکه وجود دارد، دسته بندی شده و راه حلهای استاندارد برای آنها ارائه می شود. در زیربخشی از مسائل طراحی شبکه ها عنوان شده است:
اولین موضوع چگونگی ارسال و دریافت بیتهای اطلاعات بصورت یک سیگنال الکتریکی، الکترومغناطیسی یا نوری است، بسته به اینکه آیا کانال نتقال سیم مسی، فیبرنوری، کانال ماهواره ای یا خطوط مایکروویو است. بنابراین تبدیل بیتها به یک سیگنال متناسب با کانال انتقال یکی از مسائل اولیة شبکه به شمار می رود.
[1] TCP/IP Protocol Stack
...
فیلد IHL[1]: این فیلد هم چهار بیتی است و طول کل سرآیند بسته را بر مبنای کلمات 32 بیتی مشخص می نماید. بعنوان مثال اگر در این فیلد عدد 10 قرار گرفته باشد بدین معناست که کل سرآیند 320 بیت معادل چهل بایت خواهد بود. اگر به ساختار یک بستة IP دقت شود به غیر از فیلد Options که اختیاری است، وجود تمام فیلدهای سرآیند الزامی می باشد. در حقیقت این فیلد بعنوان یک اشاره گر مرز بین سرآیند و داده ها را مشخص می کند.
فیلد Type of service: این فیلد هشت بیتی است و توسط آن ماشین میزبان (یعنی ماشین تولید کنندة بسته IP) از مجموعة زیر شبکه (یعنی مجموعة مسیریابهای بین راه تقاضای سرویس ویژه ای برای ارسال یک دیتاگرام می نماید. بعنوان مثال ممکن است یک ماشین میزبان بخواهد دیتاگرام صدا یا تصویر برای ماشین مفصد ارسال نماید؛ ر چنین شرایطی از زیرشبکه تقاضای ارسال سریع و به موقع اطلاعات را دارد نه قابلیت اطمینان صد در صد، چرا که اگر یک یا چند بیت از داد های ارسالی در سیر دچار خرابی شود تاثیر چندانی در کیفیت کار نخواهد گذاشت ولی اگر بسته های حاوی اطلاعات صدا یا تصویر به سرعت و سرموقع تحویل نشود اشکال عمده بوجود خواهد آمد. در چنین مواقعی ماشین میزبان از زیرشبکه تقاضای سرویس سریع (ولاجرم غیرقابل اطمینان) می نماید. در برخی از محیط های دیگر مثل ارسال نامة الکترونیکی یا مبادلة فایل انتظار اطمینان صد درصد از زیرشبکه وجود دارد و سرعت تاثیر چندانی بر کیفیت کار ندارد. اکثر مسیریابهای تجاری فیلد Type of Service را نادیده می گیرند و اهمیتی به محتوای آن نمی دهند.
[1] IP Header Length
...
از آنجایی که معماری در شبکه بصورت لایه به لایه است، در مدل TCP/IP برای انتقال یک واحد اطلاعات از لایه چهارم بر روی شبکه، باید تمام لایه ها را بگذراند؛ هر لایه برای انجام وظیفة خود تعدادی فیلد مشخص به ابتدای بستة اطلاعاتی اضافه کرده و آنرا تحویل لایه زیرین می دهد. قسمت اعظم کار یک دیوار آتش تحلیل فیلدهای اضافه شده در هر لایه و سرآیند هر بسته می باشد. در بسته ای که وارد دیوار آتش تحلیل فیلدهای اضافه شده در هر لایه و سرآیند هر بسته می باشد. در بسته ای که وارد دیوار آتش می شود به تعداد لایه ها (4 لایه) سرآیند متفاوت وجود خواهد داشت معمولاً سرآیند لایه اول (لایه فیزیکی یا Network Interface در شبکة اینترنت) اهمیت چندانی ندارد چرا که محتوای این فیلدها فقط روی کانال فیزیکی در شبکه محلی معنا دارند و در گذر از هر شبکه یا مسیریاب این فیلدها عوض خواهند شد. بیشترین اهمیت در سرآیندی است که در لایه های دوم، سوم و چهارم به یک واحد از اطلاعات اضافه خواهد شد:
در لایه شبکه از دیوار آتش فیلدهای سرآیند بسته IP را پردازش و تحلیل می کند.
در لایه انتقال از دیوار آتش فیلدهای سرآیند بسته های TCP یا UDP را پردازش و تحلیل می کند.
در لایه انتقال از دیوار آتش فیلدهای سرآیند و همچنین محتوای خود داده ها را بررسی می کند. (مثلاً سرآیند و محتوای یک نامه الکترونیکی یا یک صفحه وب می تواند مورد بررسی قرار گیرد.)
با توجه به لایه لایه بودن معماری شبکه لاجرم یک دیوار آتش نیز چند لایه خواهد بود. اگر یک بسته در یکی از لایه های دیوار آتش شرایط عبور را احراز نکند همانجا حذف شده و به لایه های بالاتر ارجاع داده نمی شود بلکه ممکن است آن بسته جهت پیگیریهای امنیتی نظیر ثبت عمل و ردگیری به سیسمتی جانبی تحویل داده شود سیاست امنیتی یک شبکه مجموعه ای متناهی از قواعد امنیتی است که بنابر ماهیتشان در یکی از سه لایه دیوار آتش تعریف می شوند، بعنوان مثال:
قواعد تعیین بسته های متنوع (بسته های سیاه) در اولین لایه از دیوار آتش
قواعد بستن برخی از پورتها متعلق به سرویسهایی مثل Telnet یا FTP در لایه دوم
قواعد تحلیل سرآیند متن یک نامه الکترونیکی یا صفحه وب در لایه سوم
...
در بخش های قبلی آموختید که سیستم DNS حاوی اطلاعات بسیار میدی است که متاسفانه گاهی در خدمت نفوذگر قرار می گیرد. بطور معمول نفوذگر برای شناسائی مقدماتی شبکة هدف بوسیله DNS، مراحل زیر را دنبال می نماید:
او ابتدا نیاز دارد تا حداقل یک سرویس دهندةDNS را در شبکة هدف پیدا کردن سرویس دهندة DNS از یک شبکة (بگونه ای که تشریح شد) بسادگی و از طریق سرویس Whois در اینترنت امکان پذیر است. بعنوان مثال مطابق با شکل (5-5) سرویس دهنده های DNS از شبکة Security.com با آدرسهای IP زیرمعرفی شده اند:
216.57.130.1 (سرویس دهندةDNS اصلی)
216.57.120.2 ( سرویس دهندةDNS ثانویه) و سرویس دهندة DNS سوم و چهارم
سرویس دهندة اولیه و سرویس دهنده ثانویه تفاوتی ندارند؛ سرویس دهنده ثانویه، بعنوان پشتیبان سرویس دهندة اولیه، قابلیت اعتماد شبکه رابالا می برد و در مواقعی که سرویس دهندة اصلی مختل شود سرویس دهندة دوم در اختیار کاربران اینترنت قرار می گیرد.
برای استخراج اطلاعات لازم از سرویس دهندةDNS نفوذگر باید از ابزارهای خاص استفاده کند.یکی از ابزارهای عمومی و ساده در سیستمهای عامل یونیکس و windos برنامة nslookup است که در خطر فرمان اجرا می شود. نفوذ گر بسادگی فرمان nslookup را در خطرمان تایپ کرده و کلید Enter را فشار می دهد. پس از اجرای این برنامة، نفوذگر می توند با سرویس دهندةDNS فعل و انتقال داشته باشد.
در مرحلة بعدی نفوذگر تلاش می کند تا از طریق nslookup اقدام به «دریافت کل اطلاعات یک Zone »[1] نماید. بدین معنا که تمام رکوردهای موجود در ارتباط با یک نام حوزه منتقل شود. Nslookup از DNS متلق به یک شرکت یا موسسه تقاضا می کند تا تمام رکوردهائی که در خصوص یک نام حوزه در بانک اطلاعاتی ذخیره شده است، برایش ارسال نماید. بدین منظور پس از اجرای nslookup باید از طریق فرمان server، نام سرویس دهندة مورد نظر تعیین شود:
[نام سرویس دهندةهدف] server
برای آنکه nslookup انتقال کل رکوردهای موجود در خصوص یک نام حوزه را تقاضا کند، باید در خطر فرمان از فرمان زیر استفاده شود:
set type = any
سپس برای آنکه انتقال رکوردهای موجود در DNS هدف شورع شود باید فرمان زیر در خط فرمان صادر شود:
[نام حوزة مورد نظر] is-d
پس از اجرای این فرمان رکودهای ارسالی توسط DNS هدف روی خروجی نشان داده می شود در مثال زیر مراحل استفاده از از nslookup جهت انتقال کامل رکوردهای موجود در خصوص نام skoudissuff.com نشان داده شده است:
$ nsllokup
Default server: evil.attacker.com
Address: 10.200.100.45
Server 10.1.1.34
Default server: ns.skouisstuff.com
Address: 10.1.1.34
Set
Is-d skouisstuff.com
Susyeml ID IN A IO.1.1.36
ID IN HINFO Solaris 2.6 Mailserver
ID IN MX 10 maill
Web ID IN A 10.1.1.48
ID IN HINFO “NTSWWW”
ntftp ID IN A 10.1.1.49
ws ID IN A 10.1.1.22
ID IN TXT “Adminisrator workstation”
(در مثال بالا تعداد خروجیها خلاصه شده اند تا خواناتر باشند.)
[1] Zone Transfer