مروری بر مفاهیم شبکه:
برای تحلیل و فهم روشهائی که یک نفوذگر با بکارگیری آنها با شبکه حمله می کند، باید یک دانش پایه از تکنولوژی شبکه داشته باشیم. درک مکانیزم حملات ممکن نیست مگر آنکه حداقل اصول TCP/IP را بدانیم.
عاملی که تمام شبکه های مختلف را به صورت موفقیت آمیز به هم پیوند زده است، تبعیت همه آنها از مجموعه پروتکلی است که تحت عنوان TCP/IP در دنیا شناخته می شود. دقت کنید که عبارت خلاصه شده TCP/IP می تواند به دو موضوع متفاوت اشاره داشته باشد:
مدل TCP/IP: این مدل یک ساختار چهار لایه ای برای ارتباطات گسترده تعریف می نماید که آنرا در ادامه بررسی می کنیم.
پشتة پروتکلهای TCP/IP:[1] پشتة TCP/IP مجموعه ای شامل بیش از صد پروتکل متفاوت است که برای سازماندهی کلیه اجزاء شبکة اینترنت به کار می رود.
TCP/IP بهترین پروتکل شبکه بندی دنیا نیست! پروتکلهای بهینه تر از آن هم وجود دارند؛ ولیکن فراگیرترین و محبوبترین تکنولوژی شبکه بندی در دنیای کامپیوتر محسوب می شود. شاید بزرگترین حسن TCP/IP آن باشد که بدون پیچیدگی زیاد، بخوبی کار می کند! اینترنت بر اساس TCP/IP بنا شده و بیشتر حملات نیز مبتنی بر مجموعة پروتکلهای TCP/IP هستند.
طراحی شبکه ها و اصول لایه بندی
برای طراحی یک شبکة کامپیوتری، مسائل و مشکلات بسیار گسرتده و متنوعی وجود دارد که باید به نحوی حل شود تا بتوان یک ارتباط مطمئن و قابل اعتماد بین دو ماشین در شبکه برقرار کرد. این مسائل و مشکلات همگی از یک سنخ نیستند و منشأ و راه حل مشابه نیز ندارند؛ بخشی از آنها توسط سخت افزار و بخش دیگر با تکنیکهای نرم افزاری قابل حل هستند. به عنوان مثال نیاز برای ارتباط بی سیم بین چند ایستگاه در شبکه، طراح شبکه را مجبور به استفاده از مدولاسیون آنالوگ در سخت افزار مخابراتی خواهد کرد ولی مسئلة هماهنگی در ارسال بسته ها از مبدأ به مقصد یا شماره گیری بسته ها برای بازسازی پیام و اطمینان از رسیدن یک بسته، با استفاده از تکنیکهای نرم افزازی قابل حل است. بهمین دلیل برای طراحی شبکه های کامپیوتری، باید مسائل و مشکلاتی که برای برقراری یک ارتباط مطمئن، ساده و شفاف بین دو ماشین در شبکه وجود دارد، دسته بندی شده و راه حلهای استاندارد برای آنها ارائه می شود. در زیربخشی از مسائل طراحی شبکه ها عنوان شده است:
اولین موضوع چگونگی ارسال و دریافت بیتهای اطلاعات بصورت یک سیگنال الکتریکی، الکترومغناطیسی یا نوری است، بسته به اینکه آیا کانال نتقال سیم مسی، فیبرنوری، کانال ماهواره ای یا خطوط مایکروویو است. بنابراین تبدیل بیتها به یک سیگنال متناسب با کانال انتقال یکی از مسائل اولیة شبکه به شمار می رود.
مساله دوم ماهیت انتقال است که می تواند به یکی از سه صورت زیر باشد:
Simplex: ارتباط یک طرفه (یک طرف همیشه گیرنده و طرف دیگر همیشه فرستنده).
Half Duplex: ارتباط دو طرفة غیرهمزمان (هر دو ماشین هم می توانند فرستنده یا گیرنده باشند ولی نه بصورت همزمان، بلکه یکی از طرفین ابتدا ارسال می کند، سپس ساکت می شود تا طرف مقابل ارسال داشته باشد)
Full Duplex: ارتباط دو طرفه همزمان (مانند خطوط مایکروویو)
مساله سوم مسئله خطا و وجود نویز روی کانالهای ارتباطی است بدین معنا که ممکن است در حین ارسال داده ها بر روی کانال فیزیکی تعدادی از بیتها دچار خرابی شود؛ چنین وضعیتی که قابل اجتناب نیست باید تشخیص داده شد و داده های فاقد اعتبار دو ریخته شود مبدأ آنها را از نو ارسال کند.
با توجه به اینکه در شبکه ها ممکن است مسیرهای گوناگونی بین مبدأ و مقصد وجود داشته باشد؛ بنابراین پیدا کرن بهترین مسیر و هدایت بسته ها، از مسائل طراحی شبکه محسوب می شود. در ضمن ممکن است یک پیام بزرگ به واحدهای کوچکتری تقسیم شده و از مسیرهای مختلفی به مقصد برسد بنابراین بازسازی پیام از دیگر مسائل شبکه به شمار می آید.
ممکن است گیرنده به دلایلی نتواند با سرعتی که فرستنده بسته های یک پیام را ارسال می کند آنها را دریافت کند، بنابراین طراحی مکانیزمهای حفظ هماهنگی بین مبدأ و مقصد از دیگر مسائل شبکه است.
چون ماشینهای فرستنده و گیرندة متعددی در یک شبکه وجود دارد مسائلی مثل ازدحام، تداخل و تصادم در شبکه ها بوجود می آید که این مشکلات بهمراه مسائل دیگر باید در سخت افزاز و نرم افزار شبکه حل شود.
طراح یک شبکه باید تمام مسائل شبکه را تجزیه و تحلیل کرده و برای آنها راه حل ارائه کند ولی چون این مسائل دارای ماهیتی متفاوت از یکدیگر هستند، بنابراین طراحی یک شبکه باید بصورت «لایه به لایه» انجام شود. به عنوان مثال وقتی قرار است یک شبکه به گونه ای طراحی شود که ایستگاهها بتوانند انتقال فایل داشته باشند، اولین مسئله ای که طراح باید به آن بیندیشد طراحی یک سخت افزار مخابراتی برای ارسال و دریافت بیتها روی کانال فیزیکی است. اگر چنین سخت افزاری طراحی شود، می تواند بر اساس آن اقدام به حل مسئلة خطاهای احتمالی در داده ها نماید؛ یعنی زمانی مکانیزمهای کنترل و کشف خطا مطرح می شود که قبل از آن سخت افزار مخابرة داده ها طراحی شده باشد. بعد از این دو مرحلة طراحی، باید مکانیزمهای بسته بندی اطلاعات، آدرس دهی ماشینها و مسیریابی بسته ها طراحی شود. سپس برای بقیه مسائل نظیر آدرس دهی پروسه ها و چگونگی انتقال فایل راه حل ارائه شود.
طراحی لایه ای شبکه به منظور تفکیک مسائلی است که باید توسط طراح حل شود و مبتنی بر اصول زیر است:
مفاهیم شبکه
مروری بر مفاهیم شبکه:
طراحی شبکه ها و اصول لایه بندی
مدل هفت لایه ای OSI از سازمان استاندارد جهانی ISO
لایه فیزیکی
لایة پیوند داده ها
لایة شبکه
لایة انتقال
لایة جلسه
لایة ارائة (نمایش)
لایة کاربرد
مدل چهار لایه ای TCP/IP
لایة اول از مدل TCP/IP : لایة واسط شبکه
لایة دوم از مدل TCP/IP : لایة شبکه
لایة سوم از مدل TCP/IP: لایة انتقال
لایة چهارم از مدل TCP/IP: لایة کاربرد
لایة اینترنت (IP)
قالب یک بستة IP
مبحث آدرسها در اینترنت و اینترانت
کلاسهای آدرس IP
آدرسهای خاص
آدرسهای زیرشبکه
پروتکل ICMP
8: برای مشخص کردن پیام Echo Request 0 : برای مشخص کردن پیام echo Reply
پروتکل ARP
لایة انتقال در شبکة اینترنت
راهکارهای پروتکل TCP برای جبران کاستی های لایةIP
ساختار بسته های پروتکل TCP
روش برقراری ارتباط در پروتکل TCP
کنترل جریان در پروتکل TCP
زمان سنجها در پروتکل TCP
پروتکل UDP
مفهوم پورتهای باز
دیوار آتش
مبانی طراحی دیوار آتش
لایه اول دیوار آتش
لایه دوم دیوار آتش
لایه سوم دیوار آتش
فیلترهای Stateful و هوشمند
دیوار آتش مبتنی بر پراکسی (Proxy Based Firewall)
بهترین پیشنهاد: استفادة همزمان از هر دو نوع دیوار آتش
دیوارهای آتش شخصی!
راهکارهای تامین امنیت در سطح شبکه
SSL : رمز نگاری داده ها قبل از تحویل به لایة انتقال:
(Authentication Header)AH
(Encapsulating Security Payload)ESP
هنر استفاده از موتورهای جستجو در اینترنت
استفاده از senet
بانک اطلاعاتی Whois
استفاده از سایت ARIN جهت تحقیق در مورد آدرس IP
سیستم DNS
کسب اطلاعات از سرویس دهندةDNS در راستای حمله
ابزار Sam spade
گامی دوم: پویش و جستجو در شبکه بندل رخنة نفوذ
در جستجوی مودمهای شبکه
دو اصطلاح در دنیای نفوذگران
نکتة ایمنی:
حملات بعد از پیدا شدن مودمهای فعال
مقابله با نفوذ از طریق مودمهای نا امن
تنظیم خطوط تلفن مبتنی بر سیاستهای مدون:
تعیین پورتهای باز بر روی یک ماشین
قطعات به یک ابزار Port Scanner نیاز دارید:
مکانیزمهای مختلف پویش پورت
پویش به روش TCP ACK Scan
پویش به روش FTP Bounce Scan
تنظیم زیرکانة شماره پورت مبداء (Source Port) برای پویش موفق
رد گم کردن
Firewalk بر علیه FirewalL
قطعاً به Firewalk نیاز دارید!
الف) کنکاش در شبکه
ب) مرحلة پویش:
مقابله با Firewalk
سیستمهای کشف مزاحمت (IDS)
عملکرد سیستم IDS مبتنی بر لایة شبکه
حمله به IDS بر اساس قطعات کوچک و قعطات هم پوشان IP
مکانیزمهای Whisker برای فریب دادن IDS
مکانیزمهای Whisker:
گام سوم: نفوذ از طریق رخنه در سیستم عامل یا برنامه های کاربردی
نکته:
پیدا کردن نقاط آسیب پذیر
مقابلة ابتدایی با حمله به پشته از طریق سیستم IDS
فرار نفوذگر از سیستم شناسائی مزاحمت
حمله بر علیه کلمات عبور (password Attack)
حدس کلمة عبور و ورود به سیستم از طریق چند خط برنامه نویسی
به منظور تحقیق
الگوریتم شکستن کلمة عبور
نکته امنیتی:
پیکربندی LophtCrack
ابزار John the Ripper بر علیه کلمات عبور یونیکس
درو کردن حسابهای کاربری در وب 11 (Account Harvesting)
روش مبارزه با دوری حسابهای کاربران وب
حمله بر علیه مکانیزمهای نشست کاربران وب
حمله به کوکی های موقت (Persession Cookies)
مقابله با حملات علیه Session ID
نکتة امنیتی:
نکتة امنیتی:
نکتة امنیتی:
نکتة امنیتی:
حمله به برنامه های کاربردی وب بروش SQLPiggybacking
Piggybacking
مقابله با حلات از نوع SQL Piggybacking
نکتة امنیتی:
گام سوم: نفوذ از طریق استراق سمع در سطح لایة شبکه
استراق سمع از هاب: Passive Snffing
استراق سمع از سوئیچ: Active Sniffing
استراق سمع از HTTPS و SSH
نکته:
نکته:
یک نشستSSH بین خودش و سرویس دهنده
نکته امنیتی:
مقابله با استراق سمع (مقابله با اسنیفرها)
مقابله با انواع فریبکاری متکی به آدرسهای IP جعلی
NarCat: نرم افزار همه منظور و قدرتمند شبکه
Netcat
به منظور تحقیق
مقابله با NetCat
حملات DoS (اخلال در سرویس دهی)
نکته امنیتی
روش مقابله با توقف سرویس دهنده ها
حملة نوع SYN Flood
مقابلة حدی با حملة SYN Flood
حملات توزیع شدة Dos (Ddos = Distributed Dos)
ماشینهای زامبی (Zombie)
حملة Ddos از نوع (Tribe Floos Network 2000)TFN2K
مقابله با حملات Ddos
دانلود پروژه مفاهیم شبکه