عبور از سیستمهای تشخیص نفوذ
در این بخش از دوره آموزشی SEC504 شما با روش های عبور از سیستمهای تشخیص نفوذ آشنا خواهید شد
امروزه سیستمهای امنیتی مانند IDS رواج پیدا کردهاند و برای موفقیت در حمله باید از آنها عبور نمود. یکی از تکنیکهای عبور از سیستمهای تشخیص نفوذ، شکستن بسته به قطعات کوچکتر است. به این روش اصطلاحا Fragmentation میگویند. هنگامی که بسته قطعه قطعه شد، تا زمانی که به مقصد نرسد، معمولا Reassemble نخواهد شد.
نفوذگران از این تکنیک برای مخفی سازی فعالیت خود در مراحل حمله استفاده میکنند. برای این کار از بخشهای Identification و Fragment Offset در هدر IPنسخه 4 استفاده میشود. یکی از ابزارهایی که به منظور Fragmentation از آن استفاده میشود، ابزار Fragroute میباشد.
لازم به ذکر است این ویژگی مربوط به IP نسخه 4 بوده و IP نسخه 6 از این قابلیت پشتیبانی نمیکند.
Pattern Matching
سیستمهای تشخیص نفوذ در شبکه به گوش هستند و به دنبال حملات شناخته شده میگردند. IDS ها معمولا شبیه به آنتی ویروسها عمل نموده و از روش Pattern Matching استفاده میکنند. به عنوان مثال ما قصد داریم تا فایل /etc/shadow را بخوانیم. در IDS یک Rule برای این منظور ایجاد شده است که پس از درخواست ما، آن را به عنوان حمله شناسایی نموده و هشدار میدهد.
با استفاده از حملات Fragmentation این درخواست به بخش های کوچک تقسیم میشود و تنها در سیستم نهایی Reassemble میشود. در این صورت IDS امکان Reassemble کردن آن قبل از رسیدن به سیستم اصلی را ندارد. IDS ها باید به صورت مجازی Reassemble را انجام دهند تا چنین حملاتی را شناسایی نمایند. البته این روش در سیستم های تشخیص نفوذ امروزی تشخیص داده می شود.
Fragmentation Type
برای پشتیبانی از انواع دستگاههای ارتباطی در شبکه، پروتکل IP امکان قطعه قطعه کردن بستهها را فراهم مینماید که این مورد به سود نفوذگر است و دو مورد زیر به انجام Fragmentation کمک مینماید:
• پروتکل IP اجازه میدهد تا بستهها شکسته شده و در بخشهای مختلف ارسال شوند.
• حمل بستههای IP بر عهده روتکل TCP میباشد.
انواع مختلفی از حملات Fragmentation وجود دارد که دو مورد از آن عبارتند از:
Tiny Fragment Attack
Fragment overlap Attack
Tiny Fragment Attack
در این نوع حمله در مرحله اول، قسمتی از دستور یا String مورد نظر به صورت ناقص ارسال شده و در مرحله دوم قسمت بعدی ارسال میگردد. به تصویر زیر توجه نمایید.
Fragment overlap Attack
در این نوع از Fragmentation، ابتدا بسته با یک تغییر در محتویات ارسال شده و هنگامی که بسته در مقصد Reassemble گردید، بسته بعدی ارسال میشود که در این حالت سیستم مبدا درخواست جایگزین نمودن محتویات جدید را با محتویات قبلی دارد.
Invalid TCP Checksum Bypass
روش دیگر در عبور از سیستمهای تشخیص نفوذ، Checksum نامعتبر میباشد. بسیاری از IDS/IPS ها TCP Checksum را اعتبار سنجی نمینمایند. با توجه به این موضوع، نفوذگر میتواند یک TCP Reset را با یک Checksum نامعتبر ارسال نماید تا موجب پاک نمودن بافر IDS/IPS شود.
لازم به ذکر است سیستم هدف هر بستهای که با Checksum نامعتبر باشد را drop میکند.
مقابله با عبور از سیستمهای تشخیص نفوذ
به منظور پیشگیری از حملات عبور از سیستمهای تشخیص نفوذ، موارد زیر پیشنهاد میگردد:
• Reassemble نمودن بستهها قبل از انجام فیلترینگ یا تصمیم برای تشخیص نفوذ
• استفاده از یک فایروال قبل از سیستم تشخیص نفوذ که این کار را انجام میدهد. در این حالت قطعات توسط فایروال به صورت یک بسته واحد در میآیند.
• سیستم تشخیص نفوذ دارای منابع مناسب باشد(Ram/CPU)
• بروز رسانی سیستم تشخیص نفوذ
• استفاده از سیستم تشخیص نفوذ مبتنی بر میزبان
• ایجاد یک امضا یا Signature برای شناسایی حملات Fragmentation