شبکه به زبان ساده!
Photo
🐧 ۷ دستور خطرناک لینوکس که میتونن سیستم رو نابود کنن!
این دستورات رو باید بشناسی، ولی *هیچوقت روی سیستم اصلی بدون اینکه دقیق بدونی چه کاری انجام میدن اجراشون نکن!* ⚠️
━━━━━━━━━━━━━━━━━━
☠️ *1. حذف کل فایلسیستم*
کل فایلهای سیستم رو از ریشه حذف میکنه و در حالت عادی عملاً راه برگشتی نداره.
━━━━━━━━━━━━━━━━━━
💣 *2. Fork Bomb*
با ساختن تعداد بسیار زیادی پردازش، جدول پردازشها رو پر میکنه و میتونه باعث هنگ یا از کار افتادن سیستم بشه.
━━━━━━━━━━━━━━━━━━
💾 *3. نابودی اطلاعات دیسک*
روی دیسک صفر مینویسه و میتونه سیستمعامل، پارتیشنها و اطلاعات رو از بین ببره.
━━━━━━━━━━━━━━━━━━
🗑️ *4. فرمت کردن پارتیشن*
پارتیشن مشخصشده رو با فایلسیستم جدید فرمت میکنه و اطلاعات قبلی اون پارتیشن از بین میره.
━━━━━━━━━━━━━━━━━━
⚠️ *5. نوشتن مستقیم روی دیسک*
میتونه دادههای مربوط به دیسک رو خراب کنه و باعث بشه سیستم دیگه بوت نشه.
━━━━━━━━━━━━━━━━━━
🔓 *6. نابود کردن Permissionها*
مجوزهای کل سیستم رو تغییر میده و میتونه باعث خراب شدن Permissionهای حیاتی، مشکل در
و سرویسهایی مثل
بشه.
━━━━━━━━━━━━━━━━━━
🕳️ *7. انتقال فایلها به /dev/null*
سعی میکنه محتویات مسیرهای سیستم رو به
منتقل کنه و میتونه باعث از بین رفتن فایلهای مهم بشه.
━━━━━━━━━━━━━━━━━━
🚨 *نکته مهم:*
اینها فقط «دستورهای ساده لینوکس» نیستن؛ بعضیهاشون میتونن در چند ثانیه سیستم یا اطلاعاتت رو نابود کنن.
قبل از اجرای هر دستور با
یا دسترسی
، دقیقاً بدون که *روی چه مسیری و چه دیسکی* داری کار میکنی.
📢 *اخبار شبکه، امنیت و لینوکس با ما حرفهایتر باش*
👉@ModernLan
این دستورات رو باید بشناسی، ولی *هیچوقت روی سیستم اصلی بدون اینکه دقیق بدونی چه کاری انجام میدن اجراشون نکن!* ⚠️
━━━━━━━━━━━━━━━━━━
☠️ *1. حذف کل فایلسیستم*
rm -rf / --no-preserve-root
کل فایلهای سیستم رو از ریشه حذف میکنه و در حالت عادی عملاً راه برگشتی نداره.
━━━━━━━━━━━━━━━━━━
💣 *2. Fork Bomb*
:(){ :|:& };:با ساختن تعداد بسیار زیادی پردازش، جدول پردازشها رو پر میکنه و میتونه باعث هنگ یا از کار افتادن سیستم بشه.
━━━━━━━━━━━━━━━━━━
💾 *3. نابودی اطلاعات دیسک*
dd if=/dev/zero of=/dev/sda
روی دیسک صفر مینویسه و میتونه سیستمعامل، پارتیشنها و اطلاعات رو از بین ببره.
━━━━━━━━━━━━━━━━━━
🗑️ *4. فرمت کردن پارتیشن*
mkfs.ext4 /dev/sda1
پارتیشن مشخصشده رو با فایلسیستم جدید فرمت میکنه و اطلاعات قبلی اون پارتیشن از بین میره.
━━━━━━━━━━━━━━━━━━
⚠️ *5. نوشتن مستقیم روی دیسک*
> /dev/sda
میتونه دادههای مربوط به دیسک رو خراب کنه و باعث بشه سیستم دیگه بوت نشه.
━━━━━━━━━━━━━━━━━━
🔓 *6. نابود کردن Permissionها*
chmod -R 777 /
مجوزهای کل سیستم رو تغییر میده و میتونه باعث خراب شدن Permissionهای حیاتی، مشکل در
sudo
و سرویسهایی مثل
sshd
بشه.
━━━━━━━━━━━━━━━━━━
🕳️ *7. انتقال فایلها به /dev/null*
mv /* /dev/null
سعی میکنه محتویات مسیرهای سیستم رو به
/dev/null
منتقل کنه و میتونه باعث از بین رفتن فایلهای مهم بشه.
━━━━━━━━━━━━━━━━━━
🚨 *نکته مهم:*
اینها فقط «دستورهای ساده لینوکس» نیستن؛ بعضیهاشون میتونن در چند ثانیه سیستم یا اطلاعاتت رو نابود کنن.
قبل از اجرای هر دستور با
sudo
یا دسترسی
root
، دقیقاً بدون که *روی چه مسیری و چه دیسکی* داری کار میکنی.
📢 *اخبار شبکه، امنیت و لینوکس با ما حرفهایتر باش*
👉@ModernLan
🔥7❤3👍1
شبکه به زبان ساده!
Photo
اگه بخوایم خیلی عمیق ببینیم لینوکس از همون لحظهای که دکمه پاور رو میزنی شروع به کار میکنه؛ اول BIOS یا UEFI سختافزارهای اصلی سیستم رو بررسی و آماده میکنه، بعد Bootloader مثل GRUB وارد ماجرا میشه و Kernel یا همون هسته لینوکس رو از روی دیسک میخونه و میذاره داخل RAM. از اینجا به بعد تقریباً همهچی دست Kernelـه؛ یعنی مدیریت CPU و پردازشها، RAM، دیسک، فایلها، کارت شبکه، USB، کارت گرافیک و کلی سختافزار دیگه. برنامههایی که ما باهاشون کار میکنیم مثل Terminal، مرورگر، GNOME، KDE و بقیه نرمافزارها معمولاً داخل User Space اجرا میشن و برای دسترسی به منابع حساس سیستم مستقیم سراغ سختافزار نمیرن، بلکه از طریق System Call با Kernel ارتباط میگیرن. مثلاً وقتی یه برنامه میخواد فایلی رو بخونه یا روی شبکه اطلاعات بفرسته، درخواستش از طریق Kernel انجام میشه و Kernel هم با کمک Driver مناسب با سختافزار ارتباط برقرار میکنه. از اون طرف File Systemهایی مثل ext4 و XFS و Btrfs مسئول مدیریت فایلها و اطلاعات روی دیسک هستن و سرویسهایی مثل systemd هم بعد از بالا اومدن Kernel بخش زیادی از سرویسها و فرآیندهای اولیه سیستم رو مدیریت میکنن. در نهایت اگه بخوای کل داستان رو خیلی خلاصه کنیم، مسیر تقریباً اینه: پاور رو میزنی، BIOS/UEFI اجرا میشه، GRUB میاد بالا، Kernel داخل RAM لود میشه، systemd و سرویسها راه میافتن و بعد محیط کاربری و برنامهها اجرا میشن؛ یعنی چیزی که ما روی صفحه میبینیم در واقع نتیجه همکاری Kernel، درایورها، فایلسیستم، سرویسها و برنامههای User Space با سختافزار سیستم هست. ⚙️
@ModernLAN
@ModernLAN
❤5
شبکه به زبان ساده!
Video
🌐 تفاوت IP داینامیک و استاتیک چیه؟
برای درک بهتر، IP داینامیک یعنی آیپیای که ثابت نیست و معمولاً توسط DHCP به دستگاه یا مودم داده میشه؛ یعنی ممکنه بعد از ریاستارت مودم، قطع و وصل شدن اینترنت یا بعد از مدتی، آیپی تغییر کنه. برای استفادههای معمولی مثل وبگردی، دانلود، بازی و کارهای روزمره همین IP کاملاً کافیه و معمولاً هم دردسر و هزینه کمتری داره.
ولی IP استاتیک یعنی یه IP مشخص که ثابت میمونه و تغییر نمیکنه؛ مثلاً وقتی یه سرور، دوربین مداربسته، VPN Server یا سرویس خاصی داری که باید همیشه از طریق یه آدرس مشخص از اینترنت بهش وصل بشی، IP استاتیک خیلی کاربردیه. چون اگر IP مدام تغییر کنه، دسترسی به اون سرویس سخت یا حتی غیرممکن میشه.
خلاصه اگر بخوام خیلی ساده بگم:
داینامیک = آیپی ممکنه عوض بشه 🔄، استاتیک = آیپی ثابت میمونه 📌. برای کاربر معمولی داینامیک جواب میده، ولی برای سرور و سرویسهایی که باید همیشه از بیرون در دسترس باشن، معمولاً استاتیک انتخاب بهتریه.
یه نکته مهم هم اینه که IP استاتیک لزوماً به معنی سرعت بیشتر اینترنت نیست؛ بیشتر بحث ثابت بودن آدرس شبکه و دسترسی قابل پیشبینی به سرویسهاست.
@ModernLAN
برای درک بهتر، IP داینامیک یعنی آیپیای که ثابت نیست و معمولاً توسط DHCP به دستگاه یا مودم داده میشه؛ یعنی ممکنه بعد از ریاستارت مودم، قطع و وصل شدن اینترنت یا بعد از مدتی، آیپی تغییر کنه. برای استفادههای معمولی مثل وبگردی، دانلود، بازی و کارهای روزمره همین IP کاملاً کافیه و معمولاً هم دردسر و هزینه کمتری داره.
ولی IP استاتیک یعنی یه IP مشخص که ثابت میمونه و تغییر نمیکنه؛ مثلاً وقتی یه سرور، دوربین مداربسته، VPN Server یا سرویس خاصی داری که باید همیشه از طریق یه آدرس مشخص از اینترنت بهش وصل بشی، IP استاتیک خیلی کاربردیه. چون اگر IP مدام تغییر کنه، دسترسی به اون سرویس سخت یا حتی غیرممکن میشه.
خلاصه اگر بخوام خیلی ساده بگم:
داینامیک = آیپی ممکنه عوض بشه 🔄، استاتیک = آیپی ثابت میمونه 📌. برای کاربر معمولی داینامیک جواب میده، ولی برای سرور و سرویسهایی که باید همیشه از بیرون در دسترس باشن، معمولاً استاتیک انتخاب بهتریه.
یه نکته مهم هم اینه که IP استاتیک لزوماً به معنی سرعت بیشتر اینترنت نیست؛ بیشتر بحث ثابت بودن آدرس شبکه و دسترسی قابل پیشبینی به سرویسهاست.
@ModernLAN
👍7❤3
شبکه به زبان ساده!
Photo
🛠️ تجهیزات پسیو شبکه
اگه بخوایم یه شبکه رو بهصورت اصولی و فیزیکی راهاندازی کنیم، یه سری تجهیزات داریم که وظیفهشون ایجاد، اتصال، نظمدهی و مدیریت مسیر فیزیکی کابلهای شبکهست. به این بخش میگیم Passive Network؛ یعنی تجهیزاتی که خودشون پردازش یا سیگنالدهی فعال انجام نمیدن و بیشتر زیرساخت فیزیکی شبکه رو تشکیل میدن.
1️⃣ آچار شبکه (Crimping Tool)
برای سوکت زدن کابل شبکه استفاده میشه. وقتی کابل شبکه مثل Cat5e یا Cat6 رو به طول دلخواه آماده میکنی، با این ابزار رشتهها رو داخل سوکت RJ45 قرار میدی و سوکت رو روی کابل پرس میکنی.
2️⃣ پانچدان (Punch Down Tool)
برای اتصال رشتههای کابل شبکه به ترمینالهای Keystone Jack و Patch Panel استفاده میشه. رشته سیم داخل شیار مخصوص قرار میگیره و با پانچدان، سیم بهدرستی داخل ترمینال پانچ میشه و اتصال الکتریکی برقرار میشه.
3️⃣ سوکت شبکه RJ45
همون کانکتوریه که معمولاً روی انتهای کابل شبکه نصب میشه و کابل رو به تجهیزاتی مثل Switch، Router، PC یا Access Point متصل میکنه. در کابلهای اترنت معمولاً با استانداردهای T568A و T568B سیمبندی انجام میشه.
4️⃣ پچ پنل (Patch Panel)
برای مرتبسازی و مدیریت تعداد زیادی کابل شبکه در رک استفاده میشه. کابلهای شبکه از سمت اتاقها و پریزها وارد پچ پنل میشن و بعد با Patch Cord به پورتهای سوئیچ متصل میشن. این کار باعث میشه کابلکشی رک مرتبتر، قابل مدیریتتر و عیبیابی شبکه راحتتر بشه.
5️⃣ کیستون شبکه (Keystone Jack)
یه ماژول مادگی شبکهست که معمولاً داخل پریز شبکه، فیسپلیت یا Patch Panel نصب میشه. کابل شبکه پشت کیستون پانچ میشه و از سمت جلو یک پورت RJ45 در اختیار داریم که میتونیم Patch Cord رو بهش وصل کنیم.
6️⃣ کوپلر شبکه (Keystone Coupler)
برای اتصال دو کابل شبکه به یکدیگه استفاده میشه. در واقع دو طرفش پورت RJ45 داره و وقتی لازم باشه دو کابل شبکه رو بدون پانچکردن یا سوکتزدن مجدد به هم متصل کنیم، میتونیم از کوپلر استفاده کنیم.
🔧 در یک شبکه واقعی، همین تجهیزات ساده بخش مهمی از زیرساخت فیزیکی شبکه رو تشکیل میدن؛ از کابلکشی و سوکتزنی گرفته تا پچ پنل، پریز شبکه و مدیریت کابلها داخل رک.
📡 شبکه پایدار، از کابلکشی و زیرساخت درست شروع میشه.
@ModernLAN
اگه بخوایم یه شبکه رو بهصورت اصولی و فیزیکی راهاندازی کنیم، یه سری تجهیزات داریم که وظیفهشون ایجاد، اتصال، نظمدهی و مدیریت مسیر فیزیکی کابلهای شبکهست. به این بخش میگیم Passive Network؛ یعنی تجهیزاتی که خودشون پردازش یا سیگنالدهی فعال انجام نمیدن و بیشتر زیرساخت فیزیکی شبکه رو تشکیل میدن.
1️⃣ آچار شبکه (Crimping Tool)
برای سوکت زدن کابل شبکه استفاده میشه. وقتی کابل شبکه مثل Cat5e یا Cat6 رو به طول دلخواه آماده میکنی، با این ابزار رشتهها رو داخل سوکت RJ45 قرار میدی و سوکت رو روی کابل پرس میکنی.
2️⃣ پانچدان (Punch Down Tool)
برای اتصال رشتههای کابل شبکه به ترمینالهای Keystone Jack و Patch Panel استفاده میشه. رشته سیم داخل شیار مخصوص قرار میگیره و با پانچدان، سیم بهدرستی داخل ترمینال پانچ میشه و اتصال الکتریکی برقرار میشه.
3️⃣ سوکت شبکه RJ45
همون کانکتوریه که معمولاً روی انتهای کابل شبکه نصب میشه و کابل رو به تجهیزاتی مثل Switch، Router، PC یا Access Point متصل میکنه. در کابلهای اترنت معمولاً با استانداردهای T568A و T568B سیمبندی انجام میشه.
4️⃣ پچ پنل (Patch Panel)
برای مرتبسازی و مدیریت تعداد زیادی کابل شبکه در رک استفاده میشه. کابلهای شبکه از سمت اتاقها و پریزها وارد پچ پنل میشن و بعد با Patch Cord به پورتهای سوئیچ متصل میشن. این کار باعث میشه کابلکشی رک مرتبتر، قابل مدیریتتر و عیبیابی شبکه راحتتر بشه.
5️⃣ کیستون شبکه (Keystone Jack)
یه ماژول مادگی شبکهست که معمولاً داخل پریز شبکه، فیسپلیت یا Patch Panel نصب میشه. کابل شبکه پشت کیستون پانچ میشه و از سمت جلو یک پورت RJ45 در اختیار داریم که میتونیم Patch Cord رو بهش وصل کنیم.
6️⃣ کوپلر شبکه (Keystone Coupler)
برای اتصال دو کابل شبکه به یکدیگه استفاده میشه. در واقع دو طرفش پورت RJ45 داره و وقتی لازم باشه دو کابل شبکه رو بدون پانچکردن یا سوکتزدن مجدد به هم متصل کنیم، میتونیم از کوپلر استفاده کنیم.
🔧 در یک شبکه واقعی، همین تجهیزات ساده بخش مهمی از زیرساخت فیزیکی شبکه رو تشکیل میدن؛ از کابلکشی و سوکتزنی گرفته تا پچ پنل، پریز شبکه و مدیریت کابلها داخل رک.
📡 شبکه پایدار، از کابلکشی و زیرساخت درست شروع میشه.
@ModernLAN
👍4❤2
شبکه به زبان ساده!
Video
📌 تفاوت هاست و سرور
اگه بخوایم خیلی ساده نگاه کنیم ، سرور در اصل یه سیستم کامپیوتریه که برای سرویس دادن به بقیه دستگاهها ساخته یا تنظیم شده؛ یعنی میتونه سختافزار قدرتمند، CPU، RAM، فضای ذخیرهسازی و سیستمعامل داشته باشه و سرویسهایی مثل وبسایت، دیتابیس، فایل، DNS، ایمیل، VPN یا هر سرویس شبکهای دیگه رو اجرا کنه. حالا هاست در واقع بخشی از منابع همین سروره که به یک کاربر یا سایت اختصاص داده میشه. یعنی مثلاً یه سرور فیزیکی داریم با 128GB RAM و چند ترابایت Storage؛ شرکت هاستینگ میاد منابع این سرور رو بین چندین مشتری تقسیم میکنه و به هرکدوم یه محیط جدا میده؛ اون چیزی که مشتری میخره و اسمش رو میذاریم Web Hosting یا هاست، در واقع یه سهم مشخص از منابع سروره. پس میشه گفت سرور مثل یه ساختمان بزرگه و هاست مثل یه واحد داخل اون ساختمان. البته این مثال کاملاً یکبهیک نیست، چون نوع مجازیسازی و معماری سرویس مهمه.
مثلاً در Shared Hosting چندین سایت روی یک سرور و منابع مشترک قرار دارن؛ برای سایتهای معمولی و کممصرف مناسبه و قیمتش هم پایینه، ولی کنترل و منابع محدوده. در VPS سرور با استفاده از مجازیسازی به چند ماشین مجازی تقسیم میشه و هر VPS معمولاً سیستمعامل و منابع اختصاصیتری داره؛ برای پروژههایی که کنترل بیشتری لازم دارن گزینه خیلی بهتریه. در Dedicated Server کل سرور فیزیکی در اختیار یک مشتریه و دیگه منابع اصلی سرور با مشتریهای دیگه مشترک نیست. از طرف دیگه Cloud Server هم معمولاً روی زیرساخت ابری و مجموعهای از منابع محاسباتی اجرا میشه و میتونه انعطافپذیری و مقیاسپذیری بیشتری داشته باشه.
یه نکته مهم هم اینه که هاست الزاماً فقط برای سایت نیست؛ وقتی توی بازار میگن «هاست»، معمولاً منظورشون Web Hosting هست، یعنی محیطی برای اجرای سایت و چیزهایی مثل PHP، WordPress، Database و فایلهای سایت. ولی از نظر فنی، مفهوم Host گستردهتره و به هر دستگاه یا سیستم متصل به شبکه هم میتونه اشاره کنه. در مقابل، Server بیشتر به سیستمی گفته میشه که نقش ارائهدهنده سرویس رو برعهده داره.
@ModernLan
اگه بخوایم خیلی ساده نگاه کنیم ، سرور در اصل یه سیستم کامپیوتریه که برای سرویس دادن به بقیه دستگاهها ساخته یا تنظیم شده؛ یعنی میتونه سختافزار قدرتمند، CPU، RAM، فضای ذخیرهسازی و سیستمعامل داشته باشه و سرویسهایی مثل وبسایت، دیتابیس، فایل، DNS، ایمیل، VPN یا هر سرویس شبکهای دیگه رو اجرا کنه. حالا هاست در واقع بخشی از منابع همین سروره که به یک کاربر یا سایت اختصاص داده میشه. یعنی مثلاً یه سرور فیزیکی داریم با 128GB RAM و چند ترابایت Storage؛ شرکت هاستینگ میاد منابع این سرور رو بین چندین مشتری تقسیم میکنه و به هرکدوم یه محیط جدا میده؛ اون چیزی که مشتری میخره و اسمش رو میذاریم Web Hosting یا هاست، در واقع یه سهم مشخص از منابع سروره. پس میشه گفت سرور مثل یه ساختمان بزرگه و هاست مثل یه واحد داخل اون ساختمان. البته این مثال کاملاً یکبهیک نیست، چون نوع مجازیسازی و معماری سرویس مهمه.
مثلاً در Shared Hosting چندین سایت روی یک سرور و منابع مشترک قرار دارن؛ برای سایتهای معمولی و کممصرف مناسبه و قیمتش هم پایینه، ولی کنترل و منابع محدوده. در VPS سرور با استفاده از مجازیسازی به چند ماشین مجازی تقسیم میشه و هر VPS معمولاً سیستمعامل و منابع اختصاصیتری داره؛ برای پروژههایی که کنترل بیشتری لازم دارن گزینه خیلی بهتریه. در Dedicated Server کل سرور فیزیکی در اختیار یک مشتریه و دیگه منابع اصلی سرور با مشتریهای دیگه مشترک نیست. از طرف دیگه Cloud Server هم معمولاً روی زیرساخت ابری و مجموعهای از منابع محاسباتی اجرا میشه و میتونه انعطافپذیری و مقیاسپذیری بیشتری داشته باشه.
یه نکته مهم هم اینه که هاست الزاماً فقط برای سایت نیست؛ وقتی توی بازار میگن «هاست»، معمولاً منظورشون Web Hosting هست، یعنی محیطی برای اجرای سایت و چیزهایی مثل PHP، WordPress، Database و فایلهای سایت. ولی از نظر فنی، مفهوم Host گستردهتره و به هر دستگاه یا سیستم متصل به شبکه هم میتونه اشاره کنه. در مقابل، Server بیشتر به سیستمی گفته میشه که نقش ارائهدهنده سرویس رو برعهده داره.
@ModernLan
❤4🔥3
شبکه به زبان ساده!
Photo
🔴 آنتروپیک توی یه گزارش درباره استفاده از هوش مصنوعی کلود در ایران گفته موضوع فقط استفاده معمولی از AI نیست و بحث به حوزههای نظارت، تحلیل اطلاعات و فعالیتهای سایبری هم کشیده شده؛ یعنی حکومتها میتونن از مدلهای هوش مصنوعی برای بررسی حجم خیلی زیادی از اطلاعات و پیدا کردن الگو بین دادهها استفاده کنن. نگرانی اصلی اینجاست که وقتی هوش مصنوعی وارد سیستمهای نظارتی بشه، دیگه فقط بحث چندتا سرچ و تحلیل ساده نیست و میتونه در مقیاس خیلی بزرگ روی محتوای شبکههای اجتماعی، ارتباطات و دادههای مختلف تحلیل انجام بده. البته این به معنی این نیست که هر کسی فقط با نوشتن کلماتی مثل ایران، جمهوری اسلامی، شاه یا سقوط، بهصورت خودکار شناسایی میشه؛ چنین ادعایی نیاز به شواهد مشخص و قابل بررسی داره. از طرف دیگه، آنتروپیک درباره استفاده از مدلهای هوش مصنوعی در فعالیتهای مرتبط با ایران و همچنین عملیات سایبری و نظامی هم گزارشهایی منتشر کرده و این موضوع نشون میده هوش مصنوعی داره کمکم از یه ابزار صرفاً تحقیقاتی و عمومی تبدیل میشه به بخشی از جنگ اطلاعاتی، تحلیل داده، عملیات سایبری و تصمیمگیریهای امنیتی. خلاصه داستان اینه که هوش مصنوعی فقط برای ساخت عکس و جواب دادن به سوالات نیست؛ وقتی به حجم عظیمی از داده و زیرساختهای نظارتی وصل بشه، میتونه تبدیل به یه ابزار بسیار قدرتمند برای تحلیل رفتار، شناسایی الگوها و حتی کمک به عملیاتهای پیچیده بشه و همین موضوعه که باعث شده استفاده نظامی و امنیتی از AI به یکی از جدیترین بحثهای دنیای امروز تبدیل بشه.
@ModernLan
@ModernLan
🤯7
شبکه به زبان ساده!
Photo
استک کردن سویچ به چه معناست؟
استک کردن سوئیچها یعنی چند تا سوئیچ فیزیکی رو به هم وصل کنیم و کاری کنیم از دید شبکه مثل یک سوئیچ واحد مدیریت بشن.
مثلاً فرض کن توی یه شرکت ۳ تا سوئیچ Cisco داری. بهجای اینکه هرکدوم رو جداگانه کانفیگ و مدیریت کنی، با قابلیت Switch Stacking اونها رو به هم متصل میکنی و یک Stack میسازی:
نکته مهم اینه که این اتصال صرفاً مثل وصل کردن چند سوئیچ با کابل Ethernet معمولی نیست؛ سوئیچها از طریق Stacking Link/Stack Port با هم ارتباط داخلی برقرار میکنن و معمولاً یک Control Plane مشترک ایجاد میشه. در نتیجه مثلاً اگر ۳ سوئیچ داشته باشی، میتونی از یک محیط مدیریتی واحد پیکربندیشون کنی و منابع پورتهای هر سه سوئیچ رو در اختیار شبکه داشته باشی.
مثلاً:
SW1 → 48 پورت
SW2 → 48 پورت
SW3 → 48 پورت
در مجموع میتونی تقریباً ۱۴۴ پورت داشته باشی، ولی از نظر مدیریت یک Stack واحد داری.
یکی از مزیتهای مهمش Redundancy هست. اگر یکی از اعضای Stack خراب بشه، بسته به مدل و معماری Stack، بقیه اعضا میتونن به کارشون ادامه بدن. همچنین در خیلی از پیادهسازیها قابلیتهایی مثل StackWise، Master/Member، Stateful Failover و Cross-Stack EtherChannel وجود داره.
فرقش با اینه که مثلاً دو سوئیچ رو با Trunk به هم وصل کنی اینه که در حالت عادی، دو سوئیچ هنوز دو دستگاه مستقل هستن؛ ولی در Stack، چند دستگاه فیزیکی تبدیل میشن به یک سیستم منطقی واحد.
خلاصه: Stack کردن یعنی چند سوئیچ رو به هم میچسبونی تا از نظر شبکه و مدیریت مثل یک سوئیچ بزرگ و واحد رفتار کنن.
@ModernLan
استک کردن سوئیچها یعنی چند تا سوئیچ فیزیکی رو به هم وصل کنیم و کاری کنیم از دید شبکه مثل یک سوئیچ واحد مدیریت بشن.
مثلاً فرض کن توی یه شرکت ۳ تا سوئیچ Cisco داری. بهجای اینکه هرکدوم رو جداگانه کانفیگ و مدیریت کنی، با قابلیت Switch Stacking اونها رو به هم متصل میکنی و یک Stack میسازی:
مدیریت
│
┌────┴────┐
│ STACK │
└────┬────┘
│
┌───────┼───────┐
│ │ │
┌─────┐ ┌─────┐ ┌─────┐
│SW1 │ │SW2 │ │SW3 │
└─────┘ └─────┘ └─────┘
نکته مهم اینه که این اتصال صرفاً مثل وصل کردن چند سوئیچ با کابل Ethernet معمولی نیست؛ سوئیچها از طریق Stacking Link/Stack Port با هم ارتباط داخلی برقرار میکنن و معمولاً یک Control Plane مشترک ایجاد میشه. در نتیجه مثلاً اگر ۳ سوئیچ داشته باشی، میتونی از یک محیط مدیریتی واحد پیکربندیشون کنی و منابع پورتهای هر سه سوئیچ رو در اختیار شبکه داشته باشی.
مثلاً:
SW1 → 48 پورت
SW2 → 48 پورت
SW3 → 48 پورت
در مجموع میتونی تقریباً ۱۴۴ پورت داشته باشی، ولی از نظر مدیریت یک Stack واحد داری.
یکی از مزیتهای مهمش Redundancy هست. اگر یکی از اعضای Stack خراب بشه، بسته به مدل و معماری Stack، بقیه اعضا میتونن به کارشون ادامه بدن. همچنین در خیلی از پیادهسازیها قابلیتهایی مثل StackWise، Master/Member، Stateful Failover و Cross-Stack EtherChannel وجود داره.
فرقش با اینه که مثلاً دو سوئیچ رو با Trunk به هم وصل کنی اینه که در حالت عادی، دو سوئیچ هنوز دو دستگاه مستقل هستن؛ ولی در Stack، چند دستگاه فیزیکی تبدیل میشن به یک سیستم منطقی واحد.
خلاصه: Stack کردن یعنی چند سوئیچ رو به هم میچسبونی تا از نظر شبکه و مدیریت مثل یک سوئیچ بزرگ و واحد رفتار کنن.
@ModernLan
👍5❤2
اسکریپت و دستورات NSE یا Nmap Scripting Engine ، این بخش یکی از حرفهایترین قسمتهای Nmap محسوب میشه. NSE اجازه میده Nmap علاوه بر پیدا کردن Port و Service، با اسکریپتهای Lua اطلاعات بیشتری جمعآوری کنه، سرویسها رو بررسی کنه، بعضی آسیبپذیریهای شناختهشده رو تشخیص بده و کارهای Discovery و Enumeration انجام بده. Nmap در حال حاضر صدها اسکریپت NSE داره و اسکریپتها در دستههایی مثل
ساختار کلی NSE
مثلاً:
اجرای چند اسکریپت:
اجرای یک Category:
یا:
اجرای اسکریپتهای آسیبپذیری:
خود Nmap هم توصیه میکنه با
1. Default Scripts
سادهترین روش استفاده از NSE:
این دستور معادل:
هست.
معمولاً برای شروع Enumeration خیلی کاربردیه:
اینجا:
مثلاً ممکنه متوجه بشی روی پورت 80 یک Apache مشخص در حال اجراست و عنوان Web Server هم استخراج بشه.
2. Banner
برای گرفتن Banner سرویس:
یا روی پورت مشخص:
برای Enumeration سرویسها خیلی مفیده.
3. HTTP
یکی از مهمترین بخشهای NSE مربوط به Web هست.
مثلاً گرفتن عنوان سایت:
Headerهای HTTP:
اطلاعات بیشتر درباره HTTP:
این مورد میتونه مسیرها و منابع شناختهشده روی Web Server رو بررسی کنه.
برای SSL/TLS:
یا:
دومی برای بررسی Cipher Suiteهای TLS بسیار کاربردیه.
4. SSH
دیدن Host Key:
بررسی الگوریتمهای SSH:
بررسی روشهای Authentication:
اینها برای Security Assessment یک SSH Server خیلی مفیدن. مستندات رسمی NSE هم
5. SMB و Windows
برای محیطهای Windows/Active Directory، NSE اسکریپتهای بسیار خوبی داره.
مثلاً:
بررسی SMB Protocol:
بررسی Security Mode:
بررسی SMB2:
برای یک Windows Lab میتونی مثلاً:
اجرا کنی.
6. DNS
اطلاعات DNS:
بررسی DNS Zone Transfer:
Enumeration نامهای DNS:
7. SNMP
برای تجهیزات شبکه و سرویس SNMP:
SNMP معمولاً روی UDP/161 قرار داره.
برای Network Engineering، این بخش مخصوصاً روی Router، Switch، Printer و تجهیزات Monitoring کاربرد داره.
8. FTP
بررسی Anonymous FTP:
اطلاعات FTP:
بررسی قابلیتهای FTP:
9. SMTP
برای Mail Server:
بررسی کاربران SMTP:
اطلاعات SMTP:
10. RDP
برای Windows Remote Desktop:
این اسکریپت میتونه اطلاعاتی از سرویس RDP و NTLM جمعآوری کنه.
@ModernLan
safe، default، discovery، vuln، auth، brute، broadcast، intrusive و... قرار میگیرن.ساختار کلی NSE
nmap --script <script> <target>
مثلاً:
nmap --script=banner 192.168.1.10
اجرای چند اسکریپت:
nmap --script=banner,http-title 192.168.1.10
اجرای یک Category:
nmap --script=default 192.168.1.10
یا:
nmap --script=safe 192.168.1.10
اجرای اسکریپتهای آسیبپذیری:
nmap --script=vuln 192.168.1.10
خود Nmap هم توصیه میکنه با
--script=all احتیاط کنی، چون مجموعه اسکریپتها میتونه شامل موارد خطرناک، brute-force و DoS باشه.1. Default Scripts
سادهترین روش استفاده از NSE:
nmap -sC 192.168.1.10
این دستور معادل:
nmap --script=default 192.168.1.10
هست.
معمولاً برای شروع Enumeration خیلی کاربردیه:
nmap -sC -sV 192.168.1.10
اینجا:
-sC → اسکریپتهای Default-sV → تشخیص Version سرویسهامثلاً ممکنه متوجه بشی روی پورت 80 یک Apache مشخص در حال اجراست و عنوان Web Server هم استخراج بشه.
2. Banner
برای گرفتن Banner سرویس:
nmap --script=banner 192.168.1.10
یا روی پورت مشخص:
nmap -p 22 --script=banner 192.168.1.10
برای Enumeration سرویسها خیلی مفیده.
3. HTTP
یکی از مهمترین بخشهای NSE مربوط به Web هست.
مثلاً گرفتن عنوان سایت:
nmap -p 80,443 --script=http-title 192.168.1.10
Headerهای HTTP:
nmap -p 80,443 --script=http-headers 192.168.1.10
اطلاعات بیشتر درباره HTTP:
nmap -p 80,443 --script=http-enum 192.168.1.10
این مورد میتونه مسیرها و منابع شناختهشده روی Web Server رو بررسی کنه.
برای SSL/TLS:
nmap -p 443 --script=ssl-cert 192.168.1.10
یا:
nmap -p 443 --script=ssl-enum-ciphers 192.168.1.10
دومی برای بررسی Cipher Suiteهای TLS بسیار کاربردیه.
4. SSH
دیدن Host Key:
nmap -p 22 --script=ssh-hostkey 192.168.1.10
بررسی الگوریتمهای SSH:
nmap -p 22 --script=ssh2-enum-algos 192.168.1.10
بررسی روشهای Authentication:
nmap -p 22 --script=ssh-auth-methods 192.168.1.10
اینها برای Security Assessment یک SSH Server خیلی مفیدن. مستندات رسمی NSE هم
ssh-hostkey و ssh2-enum-algos رو برای همین نوع Enumeration معرفی میکنه.5. SMB و Windows
برای محیطهای Windows/Active Directory، NSE اسکریپتهای بسیار خوبی داره.
مثلاً:
nmap -p 445 --script=smb-os-discovery 192.168.1.10
بررسی SMB Protocol:
nmap -p 445 --script=smb-protocols 192.168.1.10
بررسی Security Mode:
nmap -p 445 --script=smb-security-mode 192.168.1.10
بررسی SMB2:
nmap -p 445 --script=smb2-security-mode 192.168.1.10
برای یک Windows Lab میتونی مثلاً:
nmap -sV -p 445 --script="smb-os-discovery,smb-protocols,smb-security-mode" 192.168.1.10
اجرا کنی.
6. DNS
اطلاعات DNS:
nmap -p 53 --script=dns-recursion 192.168.1.10
بررسی DNS Zone Transfer:
nmap -p 53 --script=dns-zone-transfer 192.168.1.10
Enumeration نامهای DNS:
nmap --script=dns-brute example.com
dns-brute برای پیدا کردن Subdomainهای رایج استفاده میشه و حتی امکان بررسی SRV Recordها رو هم داره. این اسکریپت در دسته intrusive و discovery قرار گرفته، بنابراین روی دامنه دیگران بدون مجوز نباید استفاده بشه.7. SNMP
برای تجهیزات شبکه و سرویس SNMP:
nmap -sU -p 161 --script=snmp-info 192.168.1.1
SNMP معمولاً روی UDP/161 قرار داره.
برای Network Engineering، این بخش مخصوصاً روی Router، Switch، Printer و تجهیزات Monitoring کاربرد داره.
8. FTP
بررسی Anonymous FTP:
nmap -p 21 --script=ftp-anon 192.168.1.10
اطلاعات FTP:
nmap -p 21 --script=ftp-syst 192.168.1.10
بررسی قابلیتهای FTP:
nmap -p 21 --script=ftp-syst,ftp-anon 192.168.1.10
9. SMTP
برای Mail Server:
nmap -p 25 --script=smtp-commands 192.168.1.10
بررسی کاربران SMTP:
nmap -p 25 --script=smtp-enum-users 192.168.1.10
اطلاعات SMTP:
nmap -p 25 --script=smtp-commands,smtp-enum-users 192.168.1.10
10. RDP
برای Windows Remote Desktop:
nmap -p 3389 --script=rdp-ntlm-info 192.168.1.10
این اسکریپت میتونه اطلاعاتی از سرویس RDP و NTLM جمعآوری کنه.
@ModernLan
🔥6❤3🤩1
شبکه به زبان ساده!
اسکریپت و دستورات NSE یا Nmap Scripting Engine ، این بخش یکی از حرفهایترین قسمتهای Nmap محسوب میشه. NSE اجازه میده Nmap علاوه بر پیدا کردن Port و Service، با اسکریپتهای Lua اطلاعات بیشتری جمعآوری کنه، سرویسها رو بررسی کنه، بعضی آسیبپذیریهای شناختهشده…
11. LDAP
برای LDAP:
در محیط Active Directory، LDAP Enumeration میتونه اطلاعات مهمی درباره Domain Controller و Directory Service بده.
12. MySQL
اطلاعات MySQL:
بررسی Authentication:
این نوع اسکریپتها برای بررسی Configuration اشتباه در محیط Lab مفیدن.
13. Redis
اطلاعات Redis:
14. MongoDB
برای MongoDB:
15. Vulnerability Scanning
یکی از جذابترین قابلیتهای NSE:
ولی بهتره قبلش Port و Version رو مشخص کنی:
یا:
Category
16. Vulners
یکی از اسکریپتهای معروف:
یا:
این Script بر اساس Service/Version و CPEهای شناساییشده، اطلاعات Vulnerability و CVSS مرتبط را از سرویس Vulners دریافت میکند.
یعنی مثلاً:
17. Discovery
برای Discovery میتونی Category رو مستقیم اجرا کنی:
البته برای یک اسکن واقعی بهتره Scriptهای مورد نیاز رو انتخاب کنی، چون
18. Broadcast Discovery
در شبکه داخلی:
مثلاً DHCP:
این Script یک DHCP Request به Broadcast میفرسته و اطلاعات پاسخ DHCP Server رو گزارش میکنه.
برای بعضی محیطهای LAN:
میتونه Hostهای پاسخدهنده را در شبکه Local پیدا کنه.
19. Script Arguments
یکی از قسمتهای مهم NSE اینه که Scriptها میتونن Argument بگیرن.
ساختار:
مثلاً:
چند Argument:
Nmap برای Script Arguments از ساختار
20. پیدا کردن Scriptها
برای دیدن Scriptهای نصبشده:
Linux:
مثلاً:
یا:
در ویندوز معمولاً Scriptها داخل دایرکتوری نصب Nmap قرار دارن.
21. NSE Script Database
Nmap یک فایل Database برای Scriptها داره:
برای جستجو:
22. آپدیت Script Database
اگر Script جدیدی اضافه کردی:
این دستور Database مربوط به NSE رو دوباره میسازه.
23. دیدن مستندات یک Script
مثلاً:
یا:
برای چند Script:
این یکی از بهترین راهها برای فهمیدن دقیقاً هر Script چه کاری انجام میده و چه Argumentهایی داره.
24. Wildcard
مثلاً تمام Scriptهایی که با
یا:
یا:
25. ترکیب Scriptها
مثلاً یک Web Assessment نسبتاً خوب:
برای SSH:
برای Windows/SMB:
26. ترکیب NSE با Scan کاملتر
یک دستور کاربردی برای Lab:
یعنی:
اگر بخوای خروجی خیلی کاملتری بگیری:
برای LDAP:
nmap -p 389 --script=ldap-rootdse 192.168.1.10
در محیط Active Directory، LDAP Enumeration میتونه اطلاعات مهمی درباره Domain Controller و Directory Service بده.
12. MySQL
اطلاعات MySQL:
nmap -p 3306 --script=mysql-info 192.168.1.10
بررسی Authentication:
nmap -p 3306 --script=mysql-empty-password 192.168.1.10
این نوع اسکریپتها برای بررسی Configuration اشتباه در محیط Lab مفیدن.
13. Redis
اطلاعات Redis:
nmap -p 6379 --script=redis-info 192.168.1.10
14. MongoDB
برای MongoDB:
nmap -p 27017 --script=mongodb-info 192.168.1.10
15. Vulnerability Scanning
یکی از جذابترین قابلیتهای NSE:
nmap --script=vuln 192.168.1.10
ولی بهتره قبلش Port و Version رو مشخص کنی:
nmap -sV --script=vuln 192.168.1.10
یا:
nmap -sV -p 80,443 --script=vuln 192.168.1.10
Category
vuln برای بررسی آسیبپذیریهای شناختهشده طراحی شده و معمولاً نتیجه را زمانی گزارش میکند که شرایط آسیبپذیری پیدا شود.16. Vulners
یکی از اسکریپتهای معروف:
nmap -sV --script=vulners 192.168.1.10
یا:
nmap -sV -p 22,80,443 --script=vulners 192.168.1.10
این Script بر اساس Service/Version و CPEهای شناساییشده، اطلاعات Vulnerability و CVSS مرتبط را از سرویس Vulners دریافت میکند.
یعنی مثلاً:
OpenSSH 8.x
↓
CPE
↓
Vulnerability Database
↓
CVE / CVSS
17. Discovery
برای Discovery میتونی Category رو مستقیم اجرا کنی:
nmap --script=discovery 192.168.1.10
البته برای یک اسکن واقعی بهتره Scriptهای مورد نیاز رو انتخاب کنی، چون
discovery میتونه تعداد زیادی Script را شامل بشه.18. Broadcast Discovery
در شبکه داخلی:
nmap --script=broadcast
مثلاً DHCP:
nmap --script=broadcast-dhcp-discover
این Script یک DHCP Request به Broadcast میفرسته و اطلاعات پاسخ DHCP Server رو گزارش میکنه.
برای بعضی محیطهای LAN:
nmap --script=broadcast-ping
میتونه Hostهای پاسخدهنده را در شبکه Local پیدا کنه.
19. Script Arguments
یکی از قسمتهای مهم NSE اینه که Scriptها میتونن Argument بگیرن.
ساختار:
--script-args name=value
مثلاً:
nmap --script dns-brute \
--script-args dns-brute.threads=10 \
example.com
چند Argument:
nmap --script dns-brute \
--script-args dns-brute.threads=10,dns-brute.srv=true \
example.com
Nmap برای Script Arguments از ساختار
name=value استفاده میکنه و میشه چند Argument رو با کاما جدا کرد.20. پیدا کردن Scriptها
برای دیدن Scriptهای نصبشده:
Linux:
ls /usr/share/nmap/scripts/
مثلاً:
ls /usr/share/nmap/scripts/ | grep http
یا:
ls /usr/share/nmap/scripts/ | grep smb
در ویندوز معمولاً Scriptها داخل دایرکتوری نصب Nmap قرار دارن.
21. NSE Script Database
Nmap یک فایل Database برای Scriptها داره:
/usr/share/nmap/scripts/script.db
برای جستجو:
grep http /usr/share/nmap/scripts/script.db
22. آپدیت Script Database
اگر Script جدیدی اضافه کردی:
sudo nmap --script-updatedb
این دستور Database مربوط به NSE رو دوباره میسازه.
23. دیدن مستندات یک Script
مثلاً:
nmap --script-help http-title
یا:
nmap --script-help dns-brute
برای چند Script:
nmap --script-help "http-*"
این یکی از بهترین راهها برای فهمیدن دقیقاً هر Script چه کاری انجام میده و چه Argumentهایی داره.
24. Wildcard
مثلاً تمام Scriptهایی که با
http- شروع میشن:nmap --script="http-*" 192.168.1.10
یا:
nmap --script="ssh-*" 192.168.1.10
یا:
nmap --script="smb-*" 192.168.1.10
25. ترکیب Scriptها
مثلاً یک Web Assessment نسبتاً خوب:
nmap -sV -p 80,443 \
--script="http-title,http-headers,http-methods,ssl-cert,ssl-enum-ciphers" \
192.168.1.10
برای SSH:
nmap -sV -p 22 \
--script="ssh-hostkey,ssh2-enum-algos,ssh-auth-methods" \
192.168.1.10
برای Windows/SMB:
nmap -sV -p 445 \
--script="smb-os-discovery,smb-protocols,smb-security-mode" \
192.168.1.10
26. ترکیب NSE با Scan کاملتر
یک دستور کاربردی برای Lab:
nmap -sS -sV -sC -O 192.168.1.10
یعنی:
-sS → TCP SYN Scan
-sV → Service/Version Detection
-sC → Default NSE Scripts
-O → OS Detection
اگر بخوای خروجی خیلی کاملتری بگیری:
nmap -A 192.168.1.10
-A مجموعهای از قابلیتهای تشخیص Version، OS، Traceroute و NSE را فعال میکند.❤6
شبکه به زبان ساده!
اسکریپت و دستورات NSE یا Nmap Scripting Engine ، این بخش یکی از حرفهایترین قسمتهای Nmap محسوب میشه. NSE اجازه میده Nmap علاوه بر پیدا کردن Port و Service، با اسکریپتهای Lua اطلاعات بیشتری جمعآوری کنه، سرویسها رو بررسی کنه، بعضی آسیبپذیریهای شناختهشده…
دستهبندی مهم NSE
بهصورت ذهنی اینطوری حفظش کن:
این دستهبندی رسمی NSE است.
چند دستور طلایی برای Lab
@ModernLan
بهصورت ذهنی اینطوری حفظش کن:
NSE
│
├── discovery → جمعآوری اطلاعات
├── default → اسکریپتهای پیشفرض
├── safe → بررسیهای کمخطرتر
├── version → کمک به تشخیص Version
├── vuln → بررسی آسیبپذیری
├── auth → Authentication
├── brute → Password Guessing
├── broadcast → Discovery در LAN
├── intrusive → تستهای تهاجمیتر
├── exploit → Exploitation
├── dos → تستهای DoS
├── malware → بررسی نشانههای Malware
├── fuzzer → Fuzzing
└── external → استفاده از سرویسهای خارجی
این دستهبندی رسمی NSE است.
چند دستور طلایی برای Lab
# Default Enumeration
nmap -sC -sV 192.168.1.10
# Banner
nmap --script=banner 192.168.1.10
# HTTP
nmap -p80,443 --script=http-title,http-headers 192.168.1.10
# SSL/TLS
nmap -p443 --script=ssl-cert,ssl-enum-ciphers 192.168.1.10
# SSH
nmap -p22 --script=ssh-hostkey,ssh2-enum-algos 192.168.1.10
# SMB
nmap -p445 --script=smb-os-discovery,smb-protocols 192.168.1.10
# DNS
nmap -p53 --script=dns-recursion 192.168.1.10
# Vulnerability
nmap -sV --script=vuln 192.168.1.10
# Vulners
nmap -sV --script=vulners 192.168.1.10
# DHCP Discovery - LAN Lab
nmap --script=broadcast-dhcp-discover
# Help
nmap --script-help http-title
# Update NSE database
sudo nmap --script-updatedb
@ModernLan
❤6
شبکه به زبان ساده!
Photo
وزیر ارتباطات و فناوری اطلاعات گفته محدودیتهای مربوط به IPv6 بهزودی تعیین تکلیف میشه. طبق گفته ایشون، با توجه به اینکه شبکه ملی اطلاعات داره بیشتر با تحولات فناوری جلو میره، موضوع استفاده از IPv6 هم باید جدیتر دنبال بشه و محدودیتهایی که الان سر راهش وجود داره مشخص بشه. IPv6 همون نسل جدید پروتکل IP هست که برای حل مشکل کمبود آدرسهای IPv4 طراحی شده و با فضای آدرسدهی بسیار بزرگتر، امکانات بهتری برای توسعه شبکهها، اینترنت اشیا، دیتاسنترها و سرویسهای جدید فراهم میکنه. در واقع بحث فقط عوض کردن IPv4 با IPv6 نیست؛ پیادهسازی درستش روی ISP، روترها، دیتاسنترها، DNS، فایروالها و تجهیزات شبکه نیاز به برنامهریزی و هماهنگی داره. حالا باید دید تصمیم نهایی درباره محدودیتهای IPv6 چی خواهد بود و این موضوع در عمل چقدر روی توسعه زیرساخت شبکه کشور تأثیر میزاره.
@ModernLan
#IPv6 #Networking #NetworkSecurity #ModernLAN
@ModernLan
#IPv6 #Networking #NetworkSecurity #ModernLAN
🥱5👍4🤣1
شبکه به زبان ساده!
Photo
🛡️ WAF چیه و کجا قرار میگیره؟
WAF مخفف Web Application Firewall
یعنی یه فایروال تخصصی برای محافظت از برنامهها و سایتهای تحت وبه. اگه خیلی خودمونی بخوایم نگاه کنیم، فایروال معمولی بیشتر حواسش به ترافیک شبکه، IP، Port و Connectionهاست، ولی WAF میاد خود درخواستهای HTTP/HTTPS رو نگاه میکنه و بررسی میکنه ببینه داخل درخواست چیزی مشکوک یا مخرب وجود داره یا نه؛ مثلاً حملاتی مثل SQL Injection، XSS، Path Traversal، Command Injection و بعضی الگوهای غیرعادی دیگه.
حالا WAF معمولاً کجا قرار میگیره؟ بین اینترنت و Web Server؛ یعنی کاربر وقتی میخواد به سایت وصل بشه، درخواستش اول به WAF میرسه، WAF درخواست رو بررسی میکنه و اگه سالم باشه میفرستتش سمت سرور، ولی اگه مخرب تشخیص داده بشه همونجا جلوی درخواست رو میگیره و اجازه نمیده به Application برسه.
مثلاً فرض کن مهاجم یه درخواست این شکلی بفرسته:
میتونه این Request رو بررسی کنه و با توجه به Ruleها و الگوهای تشخیص حمله، اون رو مشکوک تشخیص بده و Block کنه. در معماریهای واقعی هم ممکنه WAF قبل یا بعد از Load Balancer قرار بگیره و حتی خودش نقش Reverse Proxy رو داشته باشه.
مثلاً مسیر ترافیک میتونه این شکلی باشه:
Internet → Firewall → WAF → Load Balancer → Web Server → Application → Database. البته WAF
قرار نیست جای فایروال شبکه رو بگیره؛ این دوتا مکمل همدیگهان. فایروال شبکه بیشتر از خود زیرساخت و ترافیک شبکه محافظت میکنه و WAF تمرکزش روی لایه Web و درخواستهایی مثل HTTP/HTTPS.
یه نکته مهم دیگه هم اینه که WAF میتونه به شکل Appliance، نرمافزاری یا Cloud ارائه بشه و تو مدل Cloud حتی ممکنه DNS دامنه رو طوری تنظیم کنیم که درخواست کاربر اول وارد سرویس WAF بشه و بعد از بررسی به سرور اصلی برسه.
@ModernLan
WAF مخفف Web Application Firewall
یعنی یه فایروال تخصصی برای محافظت از برنامهها و سایتهای تحت وبه. اگه خیلی خودمونی بخوایم نگاه کنیم، فایروال معمولی بیشتر حواسش به ترافیک شبکه، IP، Port و Connectionهاست، ولی WAF میاد خود درخواستهای HTTP/HTTPS رو نگاه میکنه و بررسی میکنه ببینه داخل درخواست چیزی مشکوک یا مخرب وجود داره یا نه؛ مثلاً حملاتی مثل SQL Injection، XSS، Path Traversal، Command Injection و بعضی الگوهای غیرعادی دیگه.
حالا WAF معمولاً کجا قرار میگیره؟ بین اینترنت و Web Server؛ یعنی کاربر وقتی میخواد به سایت وصل بشه، درخواستش اول به WAF میرسه، WAF درخواست رو بررسی میکنه و اگه سالم باشه میفرستتش سمت سرور، ولی اگه مخرب تشخیص داده بشه همونجا جلوی درخواست رو میگیره و اجازه نمیده به Application برسه.
مثلاً فرض کن مهاجم یه درخواست این شکلی بفرسته:
GET /search?q=' OR 1=1--، WAF میتونه این Request رو بررسی کنه و با توجه به Ruleها و الگوهای تشخیص حمله، اون رو مشکوک تشخیص بده و Block کنه. در معماریهای واقعی هم ممکنه WAF قبل یا بعد از Load Balancer قرار بگیره و حتی خودش نقش Reverse Proxy رو داشته باشه.
مثلاً مسیر ترافیک میتونه این شکلی باشه:
Internet → Firewall → WAF → Load Balancer → Web Server → Application → Database. البته WAF
قرار نیست جای فایروال شبکه رو بگیره؛ این دوتا مکمل همدیگهان. فایروال شبکه بیشتر از خود زیرساخت و ترافیک شبکه محافظت میکنه و WAF تمرکزش روی لایه Web و درخواستهایی مثل HTTP/HTTPS.
یه نکته مهم دیگه هم اینه که WAF میتونه به شکل Appliance، نرمافزاری یا Cloud ارائه بشه و تو مدل Cloud حتی ممکنه DNS دامنه رو طوری تنظیم کنیم که درخواست کاربر اول وارد سرویس WAF بشه و بعد از بررسی به سرور اصلی برسه.
@ModernLan
❤3🔥3