مبحث یکم : مقدمه و تاریخچه
مبحث دوم: مراحل نفوذ کردن / جلوگیری از نفوذ
مبحث سوم: حملات شبکه ای
مبحث چهارم - کار عملی
مبحث پنجم - DHCP
مبحث ششم - وب و حملات مطرح در آن
مبحث هفتم - حملات DoS
مبحث هشتم - سیستم عامل
مبحث نهم - مهندسی اجتماعی
مبحث دهم - Vulnerability (آسیب پذیری)

معرفی

برای کار با وب ابزارهای بسیار زیادی وجود دارند. انواع پورتال ها، File Transferها، CMSها، Web Serverها و …. از موارد موجود در وب هستند. حتی برخی مودم ها هم یک اینترفیس تحت وب برای پیکربندی خود ارائه می دهند. به همین دلیل هم بحث امنیت و هم نفوذ در آن خیلی گسترده شده است به طوری که می توان گفت هر application که تحت وب کار می کند یک سری مسائل پیرامون آن مطرح می شود. مثلاً Apache و مسائل پیرامون آن، IIS، بررسی نحوه ی پیکربندی جوملا، نحوه پیکربندی PHP-Nuke، بررسی باگ های PHPBB و … مواردی هستند که می توان برای هر کدام یک دوره آموزشی طراحی کرد! اما همه ی این موارد از پروتکل HTTP و HTTPS استفاده می کنند (Hyper Text Transfer Protocol) برنامه های تحت وب با زبان های برنامه نویسی تحت وب مثل PHP، ASP، HTML، Java Script، VB Script و … است. پس اگر بخواهیم تخصص خود را در زمینه وب قرار دهیم باید با زبان های برنامه نویسی تحت وب آشنایی داشته باشیم.

سوال: ساختار وب چگونه است؟ مثلاً وقتی می زنیم google.com چه داده هایی رد و بدل می شود؟

مرورگر (Browser) یک برنامه است که زبان صحبت با پروتکل HTTP را درک می کند به همین خاطر می تواند اطلاعاتی را که دریافت می کند در قالب مناسب به ما نشان دهد.

سرویس گیرنده (Client) به سرویس دهنده (Server) درخواست می دهد و سرویس دهنده، سرویس مورد نظر (داده مورد نظر) را به سرویس گیرنده می دهد. برای مثال در telnet هم یک سرور داشتیم که این امکان را در اختیار کاربر قرار می دهد که به پورت 23 وصل شود و یک سری دستورات را از راه دور بر روی سیستم اجرا کند.

در بحث وب هم به همین ترتیب، زمانی که یک نفر یک Server Web راه اندازی می کند، یعنی یک سری داده دارد که می خواهد در اختیار عموم قرار دهد.

در مقایسه بحث احراز هویت در http و telnet می توان گفت که در پروتکل telnet، Authentication تعبیه شده است اما در http خیر. مثلاً اگر به پورت 80 وصل شویم و دستور GET (یکی ازدستوراتی است که در پروتکل http مطرح می شود) را بدهیم، Authentication نمی خواهد، یعنی همین که به پورت 80 وصل شویم می توانیم داده transfer کنیم. این در حالی است که یکی از مراحل وصل شدن به پورت 22، پورت 23، احراز هویت است (البته می توان تنظیم کرد که نباشد ولی کسی نمی آید SSH را بر روی پورت 22 راه اندازی کند و Authentication آن را بردارد).

وقتی در browser خود آدرس www.google.com را وارد می کنیم یک بسته با پورت مقصد 80 و پورت مبدأ نامشخص (که به صورت تصادفی و بزرگتر از 1024 توسط سیستم به Client تخصیص داده می شود). البته می توان پورت مبدأ خاصی را هم Set کرد. اما خود browserها هم عموماً این کار را نمی کنند؛ چون مثلاً کلی Tab باز می کنید و ….).

اسکرول به بالا