PDA

View Full Version : سوال: راه‌های مقابله‌ با حملات ip spoofing



negative60
پنج شنبه 08 مهر 1395, 04:37 صبح
سلام
ما یک سرور لینوکس داریم که به طور پیوسته مورد حمله از نوع ip spoofing قرار میگیره به این صورت که با هر آیپی جعلی یک کانکشن با وب سرور ایجاد می‌شه و آیپی‌های جعلی هم از رنج ولید هستند تنظیمات محدودیت hitcount در iptable انجام دادم که البته در مورد این نوع حمله کارایی نداره همچنین تنها پورت ۸۰ باز هست و حمله فقط روی این پورت انجام می‌شه از اونجایی که تعداد کانکشن‌های جعلی بسیار زیاد هست به سرعت منابع وبسرور اشغال می‌شه و از کار میفته


با این توضیحات چه راه‌کار‌های نرم‌افزاری برای مقابل با این حمله می‌شه انجام داد؟

cybercoder
پنج شنبه 08 مهر 1395, 15:01 عصر
یک راهش استفاده از IDS/IPS هست مثل Snort:
https://nsrc.org/workshops/2016/apricot2016/raw-attachment/wiki/Track3Security/2-3-3.snort.pdf

راه دیگه اش استفاده از connection limit برای قراردادن ip ها در black list هست در فایروال که اگر واقعا بازدیدتون بالا باشه کارایی نداره چون کاربران رو بعضی اوقات بلاک میکنه.

راه دیگه اش هم استفاده از captcha هستش که در صورت ورود ترافیک http زیاد ip رو به صفحه captcha منتقل کنه که البته یک level بالاتر باید قرار بگیره نه روی خود web server

negative60
جمعه 09 مهر 1395, 02:30 صبح
یک راهش استفاده از IDS/IPS هست مثل Snort:
https://nsrc.org/workshops/2016/apri...-3-3.snort.pdf (https://nsrc.org/workshops/2016/apricot2016/raw-attachment/wiki/Track3Security/2-3-3.snort.pdf)

ممنون، ولی‌ همونطور که عرض کردم اولویت راه حل نرم‌افزاری هست (اگر وجود داشته باشه)



راه دیگه اش استفاده از connection limit برای قراردادن ip ها در black list هست در فایروال که اگر واقعا بازدیدتون بالا باشه کارایی نداره چون کاربران رو بعضی اوقات بلاک میکنه.

به دلیل اینکه آیپی های متصل شده فیک و به صورت رندم هستند اگر تمام درخواست‌هایی که مثلا بعد از ۳۰ ثانیه پکت ارسال نمیکنند رو تو بلاک لیست قرار بدم اندازه این بلاک لیست ممکنه به ملیارد هم برسه و اگر بخوام چک کنم که آیپی درخواست کننده تو بلاک لیست هست یا نه این CPU خیلی‌ زیادی مصرف می‌کنه به طوری که همین امر باعث از دسترس خارج شدن سرور می‌تونه بشه


راه دیگه اش هم استفاده از captcha هستش که در صورت ورود ترافیک http زیاد ip رو به صفحه captcha منتقل کنه که البته یک level بالاتر باید قرار بگیره نه روی خود web server

از اونجایی که تعداد کانکشن هایی که در یک زمان کوتاه متصل میشن خیلی‌ بالا هست و وبسرور مدت زمانی‌ منتظر دریافت پکت برای این کانکشن‌ها میمونه همین امر باعث می‌شه تمام ظرفیت ممکن(۶۰ هزار کانکشن همزمان) اشغال بشه و سرور درخواست دیگه‌ای رو نمیتونه اکسپت کنه.

روش یا تکنیک خاصی‌ وجود نداره که بشهدر لایه ۳ از روی هدر آیپی‌ها جعلی بودنشن رو تشخیص داد ؟

cybercoder
شنبه 10 مهر 1395, 01:09 صبح
ممنون، ولی‌ همونطور که عرض کردم اولویت راه حل نرم‌افزاری هست

SNORT نرم افزاری متن بازه!



به دلیل اینکه آیپی های متصل شده فیک و به صورت رندم هستند اگر تمام درخواست‌هایی که مثلا بعد از ۳۰ ثانیه پکت ارسال نمیکنند رو تو بلاک لیست قرار بدم اندازه این بلاک لیست ممکنه به ملیارد هم برسه و اگر بخوام چک کنم که آیپی درخواست کننده تو بلاک لیست هست یا نه این CPU خیلی‌ زیادی مصرف می‌کنه به طوری که همین امر باعث از دسترس خارج شدن سرور می‌تونه بشه

برای این کارها ابزاری وجود داره به نام فایروال که لازم نیست حتما روی همون وب سرور run بشه. نمیتونم وب سروری رو تصور کنم که پشت فایروال و لودبالانسر نباشه! با این حال بلک لیست ها رو معمولا زمانی در نظر میگیرند. مثلا IP های مهاجم 3 ساعت در بلک لیست باشند و ...


روش یا تکنیک خاصی‌ وجود نداره که بشهدر لایه ۳ از روی هدر آیپی‌ها جعلی بودنشن رو تشخیص داد ؟

IDS/IPS این کار رو میکنه. راهنمای SNORT رو مطالعه کنید.

موفق باشید.

prans68
دوشنبه 01 خرداد 1396, 12:32 عصر
حمله شما ddos هست و از آنجایی که اتکر آی پی عوض میکنه شما نمیتونی جلوش رو بگیری حتی ids ips هم نمیتونه جلوش رو بگیره مگر اینکه بیای شما تحلیل کنی و رفتار اتکر رو بفهمی و یه سیگنیچر یا رولی بنویسی و جلوش رو بگیری - به نظر بهتر هست شما تعدا کانکشن های همزمان رو محدود بکنی و از کوکی یا سیزن استفاده کنی وقتی کسی رو بلاک کردی مجبور بشه بره کوکیشو حذف کنه بیاد(که در این صورت هم چون این اتک از طرق نرم افزار صورت میگیره نمیتونه دوباره لاگین بکنه) - شما باید یه جوری اهراز هویت کنی حالا چجوری ؟ نیاز به بحث داره. بلاخره جلوگیری از حملات خرابکاری ddos راحت نیست و نیاز به فایروال های سخت افزاری دارین که سیگنیچر های قوی داشته باشه. من نظر شخصیم اینه شما کانکشن هارو اهراز هویت کنین و به یوزر توکن بدین که اگر ایپیش عوض شد توکن فاسد بشه و مجبور باشه توکن دیگه بگیره

negative60
دوشنبه 01 خرداد 1396, 22:51 عصر
حمله شما ddos هست و از آنجایی که اتکر آی پی عوض میکنه شما نمیتونی جلوش رو بگیری حتی ids ips هم نمیتونه جلوش رو بگیره مگر اینکه بیای شما تحلیل کنی و رفتار اتکر رو بفهمی و یه سیگنیچر یا رولی بنویسی و جلوش رو بگیری - به نظر بهتر هست شما تعدا کانکشن های همزمان رو محدود بکنی و از کوکی یا سیزن استفاده کنی وقتی کسی رو بلاک کردی مجبور بشه بره کوکیشو حذف کنه بیاد(که در این صورت هم چون این اتک از طرق نرم افزار صورت میگیره نمیتونه دوباره لاگین بکنه) - شما باید یه جوری اهراز هویت کنی حالا چجوری ؟ نیاز به بحث داره. بلاخره جلوگیری از حملات خرابکاری ddos راحت نیست و نیاز به فایروال های سخت افزاری دارین که سیگنیچر های قوی داشته باشه. من نظر شخصیم اینه شما کانکشن هارو اهراز هویت کنین و به یوزر توکن بدین که اگر ایپیش عوض شد توکن فاسد بشه و مجبور باشه توکن دیگه بگیره

دوست عزیز حمله در لایه ای پی بود و نوع حمله همونطور که عرض کردم آی پی اسپوفینگ بوده و توی این لایه(لایه IP) خبری از لاگین و احراز هویت نیست!
تنها راه مقابله با این نوع حمله افزایش پهنای باند شبکه و فیلتر کردن بسته هاد جعلی هست .

prans68
سه شنبه 02 خرداد 1396, 10:22 صبح
شما منظور بنده رو متوجه نشدی. یا که سوال رو خوب مطرح نکردین. اول این که حمله قصدش خرابکاری و اختلال هست و این یعنی دی داس(رجوع شود به مفهوم دی داس نه معنی دی داس) و اینکه من احساس کردم این حمله نرم افزار شمارو از کار میندازه چون گفتین روش نرم افزاری میخام ولی الان ظاهرا اینجور متوجه میشم که کل سرور شمارو داون میکنه نه سرویس خاصی رو
با افزایش پهانی باند شما مشکلی حل نمیشه چون اگراتکر از ماشین های زامبی استفاده کنه حتما پهنای باند بزرگی در اختیار داره در این صورت حتی اگه شما تمامی پکت ها رو بخای ریجکت کنی باز داون میشی یعنی مجبوری منابع خیلی خیلی بالایی داشته باشی که فکر نکنم مقرون به صرفه باشه. بخاطر این میگیم کسی که دی داس انجام میده حتما پدر کشتی داره چون فقط قصدش از کار انداختن و مختل هست تا جایی که کلا از دسترس خارج بکنه هدف رو و غیر این هیچ هدفی دنبالش نیست