تاریخچه کوتاهی از شبکه
شبکه های کامپیوتری یکی از بزرگترین پیشرفت های عصر ما هستن. خیلی قبل تر از اینکه اینترنت وارد زندگی روزمره مون بشه، مهندسا و دانشمندا روی اتصال کامپیوترها به همدیگه کار میکردن. کارهایی که انجام دادن، وضعیت فعلی شبکه های کامپیوتری رو پایه گذاری کرد. اگه به تازگی با کابل های شبکه آشنا شدی، بد نیست یه نگاهی به تاریخچه تکنولوژی شبکه بندازی تا بفهمی چطور به اینجایی که الان هستیم رسیدیم.اولین شبکه کامپیوتری متولد شد
تاریخچه شبکه های کامپیوتری مدرن برمیگرده به سال 1969، وقتی که ARPANET (شبکه آژانس پروژه های تحقیقاتی پیشرفته) اولین شبکه کامپیوتری متصل شد. این شبکه از پروتکل TCP/IP استفاده میکرد، که بعدا به اینترنت تبدیل شد. ARPANET توسط آژانس پروژه های تحقیقاتی پیشرفته (ARPA) که زیرمجموعه ای از وزارت دفاع آمریکا بود، توسعه پیدا کرد. ولی چرا وزارت دفاع آمریکا نیاز داشت که کامپیوترها رو به هم متصل کنه؟ خب، جنگ سرد! هدف اصلی ARPANET این بود که در صورت وقوع جنگ هسته ای بین آمریکا و اتحاد جماهیر شوروی، خطوط ارتباطی همچنان فعال بمونن.ARPANET یه انقلاب تو ارتباطات به وجود آورد، چون به جای اتصالات مستقیم از packet-switching (بسته بندی داده ها) استفاده میکرد. تو این روش، اطلاعات به شکل بسته های داده با یه آدرس مقصد مشخص فرستاده میشن و از طریق شبکه به مقصد میرسن. این بسته ها توسط کامپیوترهای شبکه دریافت و ارسال میشن، بدون اینکه نیاز باشه یه ارتباط مستقیم بین دو دستگاه برقرار باشه.با اینکه ARPANET نیاز به ارتباطات مستقیم بین دستگاه ها رو از بین برد، اما همچنان به خطوط تلفن وابسته بود. این شبکه در ابتدا فقط چهار گره (node) داشت که بین دانشگاه های استنفورد، دانشگاه یوتا، UCLA و UCSB برقرار شده بود. اما تا سال 1972 این تعداد به 40 دستگاه افزایش پیدا کرد.شبکه ARCNET (Attached Resource Computer NETwork)سال 1986، شرکت Datapoint Corporation یه پروتکل ارتباطی برای شبکه های محلی (LANs) به اسم ARCNET طراحی کرد. این سیستم، اولین شبکه کامپیوتری در دسترس عموم بود و تو دهه 1980 برای اتوماسیون اداری خیلی محبوب شد. برخلاف سیستم های دیگه که کامپیوترهای متصل به شبکه باید همگی یه نوع خاص میبودن، ARCNET اولین سیستمی بود که محدودیتی برای نوع تکنولوژی های شبکه نداشت.سرعت ARCNET حدود 2.5 مگابیت بر ثانیه بود، که تو زمان خودش عملکرد خوبی محسوب میشد. با اینکه تو دوره خودش محبوبیت زیادی داشت، اما از نظر پایداری و انعطاف پذیری به پای سیستم های دیگه مثل اترنت (Ethernet) نمیرسید و همین باعث شد که کم کم از رقابت کنار بره.11 نوع شبکه کامپیوتری
در اینجا 11 نوع شبکه رو معرفی میکنیم:1. شبکه محلی (LAN - Local Area Network)
LAN رایج ترین نوع شبکه محسوب میشه. این نوع شبکه به کاربران اجازه میده که در یک محدوده کوتاه و یک محیط مشترک به هم متصل بشن. وقتی دستگاه ها به LAN وصل بشن، میتونن به منابع مشترک دسترسی داشته باشن. مثلا وقتی لپ تاپت رو به اینترنت خونه وصل میکنی و از پرینتر متصل به همون شبکه یه سند چاپ میکنی، در واقع از یه LAN استفاده کردی. 2. شبکه شخصی (PAN - Personal Area Network)
PAN یه شبکه کوچیک و شخصیه که دور و بر یه فرد یا یه دستگاه خاص شکل میگیره. این نوع شبکه فقط تعداد کمی دستگاه رو در یک محدوده کوچیک به هم متصل میکنه. برخلاف شبکه های بزرگ، PAN معمولا از یه یا دو دستگاه اصلی تشکیل شده. مثلا وقتی از بلوتوث گوشیت برای ارسال یه عکس به یه دستگاه نزدیک استفاده میکنی، در واقع داری از یه PAN استفاده میکنی.3. شبکه محلی بی سیم (WLAN - Wireless Local Area Network)
WLAN عملکردی مشابه LAN داره، ولی برای ارتباط دستگاه ها به کابل نیازی نداره و اطلاعات رو به صورت بی سیم منتقل میکنه. WLAN نسبت به شبکه های سیمی امنیت کمتری داره و معمولا ضعیف تره، اما به کاربران آزادی بیشتری میده تا در مکان های مختلف از دستگاه هاشون استفاده کنن. مثلا ممکنه یه دستگاه مانیتور کودک رو به یه WLAN وصل کنی تا بدون توجه به اینکه کودک کجا خوابه، دستگاه همچنان کار کنه.4. شبکه محدوده پردیس (CAN - Campus Area Network)
CAN تو محیط های آموزشی مثل دانشگاه ها یا مدارس استفاده میشه. هر بخش تو یه دانشگاه ممکنه LAN مخصوص خودش رو داشته باشه، اما همه LANهای داخل دانشگاه میتونن به CAN متصل بشن. این نوع شبکه چندین شبکه مستقل رو به یه واحد یکپارچه تبدیل میکنه. مثلا ممکنه دپارتمان زبان انگلیسی و مهندسی یه دانشگاه از طریق CAN به هم متصل باشن و بتونن مستقیم با هم ارتباط برقرار کنن.5. شبکه شهری (MAN - Metropolitan Area Network)
MAN یه شبکه متوسط هست که از CAN بزرگتره. با اینکه راه اندازی MAN هزینه بالایی داره، ولی ارتباط موثری بین دستگاه ها تو یه محدوده جغرافیایی وسیع فراهم میکنه. مثلا دولت یه شهر ممکنه ادارات مختلفش رو تو سطح شهر از طریق یه MAN به هم متصل کنه.6. شبکه گسترده (WAN - Wide Area Network)
WAN یه شبکه بسیار وسیع هست که به یه منطقه جغرافیایی خاص محدود نمیشه. شرکت های بین المللی و سازمان های بزرگ از WAN استفاده میکنن تا ارتباط گسترده و یکپارچه بین دفاتر و کارکنانشون برقرار کنن. مثلا کارمندایی که به صورت ریموت کار میکنن و از طریق اینترنت به اطلاعات شرکتشون دسترسی دارن، در واقع دارن از یه WAN استفاده میکنن.7. شبکه ذخیره سازی (SAN - Storage Area Network)
SAN یه شبکه تخصصیه که برای ذخیره مقدار زیادی از داده های حساس استفاده میشه. این شبکه به تیم ها اجازه میده که اطلاعات رو روی یه شبکه جدا از شبکه عملیاتی اصلی ذخیره کنن تا سرعت و عملکرد شبکه اصلی افت نکنه. مثلا اگه یه تیم اطلاعات مشتری ها رو روی یه شبکه جدا از شبکه اصلی شرکت ذخیره کنه، در واقع داره از یه SAN استفاده میکنه.8. شبکه محلی نوری غیرفعال (POLAN - Passive Optical Local Area Network)
POLAN یه شبکه کم هزینه هست که میتونه چندین مکان مختلف رو به یه شبکه مرکزی متصل کنه. POLAN ها قدرت اینو دارن که چندین نهاد رو به یه هاب اطلاعاتی متصل کنن. مثلا اگه دفتر مرکزی یه منطقه آموزشی نیاز داشته باشه که با همه مدارس اون منطقه ارتباط داشته باشه، میتونه از یه POLAN استفاده کنه.9. شبکه خصوصی سازمانی (EPN - Enterprise Private Network)
EPN یه شبکه اختصاصیه که شرکت ها و سازمان ها برای به اشتراک گذاری منابع داخلی با سرعت بالا ایجاد میکنن. این شبکه ها مختص یه سازمان خاص هستن که باعث میشه ارتباطات امن و کنترل شده باشه. مثلا یه شرکت فناوری که امنیت بالایی نیاز داره، ممکنه از EPN استفاده کنه تا خطر نشت اطلاعات رو کاهش بده.10. شبکه خصوصی مجازی (VPN - Virtual Private Network)
VPN یه شبکه خصوصی و امن هست که از طریق اینترنت در دسترسه. این نوع شبکه عملکردی مشابه EPN داره، اما برخلاف EPN، نیازی به زیرساخت اختصاصی نداره. VPN ها برای محافظت از حریم خصوصی و افزایش امنیت استفاده میشن و هم کاربران عادی و هم شرکت ها میتونن ازشون استفاده کنن.11. شبکه محدوده سیستم (SAN - System-Area Network)
SAN یه شبکه محلی گسترده هست که اتصال دستگاه های مختلف رو در قالب یک خوشه (Cluster) فراهم میکنه. دستگاه های متصل به یه SAN، به عنوان یه سیستم یکپارچه عمل میکنن. این نوع شبکه ها با سرعت بالا کار میکنن و در حال توسعه هستن.7 نوع تست نفوذ (Penetration Testing)
در اینجا هفت نوع تست نفوذ رو بررسی میکنیم. با گسترش محیط های IT سازمانی و اضافه شدن دستگاه های موبایل، اینترنت اشیا (IoT)، تکنولوژی ابری و لبه شبکه (Edge Computing)، تست های جدیدی برای مقابله با ریسک های تازه به وجود اومدن. اما اصول کلی و تکنیک های تست نفوذ همچنان ثابت هستن.علاوه بر این، تست های نفوذ میتونن داخلی یا خارجی باشن و با احراز هویت یا بدون احراز هویت انجام بشن. مهمه که قبل از شروع تست، پارامترها و انتظارات کاملاً مشخص باشن:1. تست شبکه (Network Tests)
برخی سازمان ها تست امنیت شبکه داخلی و خارجی رو از هم جدا میکنن.تست شبکه خارجی (External) با استفاده از اطلاعات عمومی در دسترس انجام میشه و هدفش شناسایی و بهره برداری از دارایی های خارجی سازمان هست.تست شبکه داخلی (Internal) حملاتی رو شبیه سازی میکنه که از داخل سازمان رخ میدن، مثل زمانی که یه کارمند مخرب یا هکر داخلی بخواد به سیستم ها نفوذ کنه.این نوع تست ها از مهم ترین تست های نفوذ هستن، چون اگه مهاجم بتونه به شبکه دسترسی پیدا کنه، ریسک ها بسیار بالا میره. تسترهای نفوذ روش هایی مثل دور زدن فایروال، تست روترها، فرار از سیستم های تشخیص و پیشگیری از نفوذ (IPS/IDS)، اسکن پورت ها، بررسی سرویس های پروکسی و یافتن آسیب پذیری های شبکه رو اجرا میکنن.2. تست مهندسی اجتماعی (Social Engineering Tests)
مهندسی اجتماعی یه روش رایج در حملات سایبری هست که کاربران رو فریب میده تا اطلاعات حساسشون رو فاش کنن. هکرها معمولا کارمندانی که دسترسی مدیریتی دارن رو هدف قرار میدن و از طریق ایمیل، تماس تلفنی، شبکه های اجتماعی و روش های دیگه سعی میکنن اطلاعاتشون رو به دست بیارن. بیشتر حملات سایبری از طریق مهندسی اجتماعی، فیشینگ (Phishing) یا اسمیشینگ (Smishing) شروع میشن. سازمان ها برای مقابله با این تهدیدات آموزش های امنیتی برگزار میکنن، اما اجرای تست مهندسی اجتماعی باعث میشه امنیت کارکنان به چالش کشیده بشه و نقاط ضعف انسانی آشکار بشن.تسترهای نفوذ ممکنه این تست ها رو با یا بدون اطلاع قبلی کارکنان سازمان انجام بدن تا میزان آمادگی تیم امنیتی رو هم ارزیابی کنن.3. تست اپلیکیشن های وب (Web Application Tests)
اپلیکیشن های تحت وب بخش حیاتی هر سازمانی هستن. در تست نفوذ وب، هکرهای اخلاقی سعی میکنن آسیب پذیری های این برنامه ها رو کشف کنن و از اون ها سوءاستفاده کنن.این تست ها روی موارد زیر انجام میشن:اپلیکیشن های تحت وب، مرورگرها، ActiveX، پلاگین ها، Silverlight، اسکریپت ها و اپلت هازبان های برنامه نویسی مثل Java، PHP، .NET و موارد دیگهAPIها، پایگاه های داده مثل MySQL، Oracle و سایر سیستم های ارتباطیبه دلیل استفاده از کدهای منبع باز و تهدیدات همیشه در حال تغییر، تست اپلیکیشن های وب پیچیدگی زیادی داره. تسترها باید تمام جنبه های امنیتی از جمله حملات XSS، تزریق SQL، مشکلات احراز هویت و امنیت APIها رو بررسی کنن.4. تست شبکه های بی سیم و وب سایت ها (Wireless Networks & Websites)
شرکت ها از شبکه های بی سیم برای اتصال دستگاه ها، اینترنت اشیا (IoT) و سایر تجهیزات استفاده میکنن. این شبکه ها هدف محبوبی برای هکرها هستن، چون:پروتکل های رمزنگاری ضعیف دارنمدیران شبکه اغلب رمزهای عبور و دسترسی ها رو ضعیف تنظیم میکننامکان جعل آدرس MAC و حملات نقطه دسترسی مخرب وجود دارهتسترهای نفوذ رمزگذاری وایرلس، نقاط دسترسی، پیکربندی ها و امنیت شبکه رو تست میکنن. این تست ها همچنین شامل بررسی حملات انکار سرویس (DoS) و تست امنیت تجهیزات IoT، سنسورها، دوربین ها و سایر دستگاه های متصل به شبکه بی سیم میشن.5. تست امنیت فیزیکی و محاسبات لبه (Physical & Edge Computing Tests)
همه حملات سایبری از راه دور انجام نمیشن. برخی حملات نیاز به دسترسی فیزیکی به تجهیزات دارن. با ظهور محاسبات لبه (Edge Computing) و ایجاد مراکز داده در نزدیکی عملیات تجاری، تست امنیت فیزیکی اهمیت بیشتری پیدا کرده.هکرهای کلاه سفید موارد زیر رو تست میکنن:سیستم های امنیتی فیزیکی (درها، کارت های دسترسی، قفل ها، دوربین ها و سنسورها)دسترسی فیزیکی به سرورها و مراکز دادهروش های جعل هویت کارکنان برای ورود غیرمجازاین تست ها ممکنه با اطلاع یا بدون اطلاع تیم امنیتی سازمان اجرا بشن تا آمادگی اون ها برای مقابله با تهدیدات فیزیکی بررسی بشه.6. تست امنیت فضای ابری (Cloud Security Tests)
فضای ابری فرصت های زیادی برای شرکت ها فراهم میکنه، اما در عین حال تهدیدات امنیتی جدیدی رو هم به وجود میاره. سازمان ها اطلاعات حیاتی خودشون رو در فضای ابری خصوصی و عمومی ذخیره میکنن، و در صورت نشت اطلاعات، کل عملیات سازمان ممکنه مختل بشه.با اینکه ارائه دهنده های خدمات ابری امنیت داخلی قوی دارن، تست نفوذ فضای ابری همچنان ضروریه. اما قبل از اجرای این تست، سازمان ها باید به ارائه دهنده ابری اطلاع بدن، چون بعضی بخش های سیستم برای تسترها محدودیت دارن.مثلا:مایکروسافت قوانین مشخصی برای تست نفوذ در Azure داره.آمازون نیاز داره که سازمان ها فرم تست نفوذ AWS رو پر کنن.تست های امنیت ابری شامل موارد زیر میشه:بررسی امنیت APIها، رمزگذاری، ماشین های مجازی (VMs)، سیستم های عامل و پیکربندی هاتست دسترسی های راه دور مثل SSH و RDPبررسی رمزهای عبور و خطاهای تنظیمات امنیتی7. تست قرمز و آبی (Red Team vs. Blue Team)
یکی از موثرترین روش های تست نفوذ، استفاده از تکنیک تیم قرمز و تیم آبی هست.تیم قرمز (Red Team) نقش مهاجم رو بازی میکنه و سعی میکنه سیستم رو هک کنه.تیم آبی (Blue Team) نقش تیم امنیتی رو داره و باید حملات رو شناسایی و دفع کنه.این روش تست به سازمان ها کمک میکنه تا:نقاط ضعف امنیتی و روش های سوءاستفاده از اون ها رو کشف کنن.توانایی تیم امنیتی در مقابله با حملات واقعی رو بسنجن.مهارت های امنیتی کارکنان داخلی رو تقویت کنن.سناریوهای مختلفی برای این تست وجود داره