دور زدن IDS با استفاده از امضاهای IDS

یک محقق امنیتی در کنفرانس DefCamp، سال ۲۰۱۷ میلادی که در بخارست برگزار شد ادعا کرد، که امضاهای سامانه‌ی تشخیص نفوذ یا IDS می‌توانند به عنوان یک روش برای دور زدن خود IDS مورد استفاده قرار بگیرند.

یک پژوهش‌گر امنیتی از شرکت Positive Technologies به نام Kirill Shipulin، در کنفرانس DefCamp سال ۲۰۱۷ میلادی در بخارست، رومانی، توضیح داد که می‌توان امضاهای IDS موجود را به منظور از کار انداختن راه‌کارهای دفاعی سامانه تغییر داد. او همچنین استدلال کرد که سازش بین امنیت و کارآیی می‌تواند فرصتی برای دور زدن ایجاد کند.

 

 

سامانه‌ی تشخیص نفوذ یا IDS مبتنی‌بر امضاء با شناسایی الگوهای مشخص حملات را تشخیص می‌دهد، این سامانه برای شناسایی این الگوها یا توالی بایت‌ها را در ترافیک شبکه بررسی می‌کند و یا دنباله‌ی دستورات مخرب که توسط یک بدافزار استفاده می‌شود را مورد بررسی قرار می‌دهد.

محدودیت اصلی این سامانه‌ها این است که آن‌ها نمی‌توانند حملاتی را تشخیص دهند که هیچ الگویی از آن‌ها در دسترس نیست. با این حال، همچنین یک اشکال دیگر نیز در این سامانه وجود دارد و آن این است که بین زمانی که یک تهدید جدید تشخیص داده می‌شود و زمانی که امضای آن توسط سامانه‌ی تشخیص نفوذ مورد استفاده قرار می‌گیرد، یک مهاجم بدون ترس از کشف عملیات نفوذ، می‌تواند از سامانه بهره‌برداری کند.

این محقق امنیتی گفت: «بسیاری از امضاهای در دسترس طراحی شده‌اند تا از سامانه‌ها در برابر بهره‌برداری‌های عمومی محافظت کنند، و طراحی امضاهای با کیفیت نیازمند این است که توسعه‌دهنده‌ دارای طیف گسترده‌ای از مهارت‌ها باشد تا بتواند از تشخیص‌های نادرست جلوگیری کند. امضاهای بی‌کیفیت و آهسته منجربه ایجاد نقاط ضعف در سامانه تشخیص نفوذ شده و باعث می‌شوند روش‌های دور زدن جدیدی ایجاد شوند.»

این محقق امنیتی در طی مصاحبه‌ای در کنفرانس DefCamp گفت:‌ «امضاء در واقع دانش کارشناسان است که به شکلی قابل درک برای سامانه در آمده است. توسعه‌دهندگان معمولاً زمان کافی برای تجزیه و تحلیل عمیق یک آسیب‌پذیری و وصله‌ی آن ندارند. آن‌ها همچنین نیاز دارند که روی کارآیی تمرکز کنند و این می‌تواند منجربه اشتباهاتی شود.»

برخی از امضاهای موجود ممکن است آهسته باشند، یعنی برای انجام تجزیه و تحلیل‌های لازم به زمان زیادی نیاز داشته باشند. این محقق نشان داد که وقتی چنین امضاهایی با ترافیک بد مواجه می‌شوند، ممکن است سامانه از کار بیفتد و منجر به اختلال در ترافیک شود. این اشکال می‌تواند باعث

حمله‌ی منع سرویس توزیع‌شده و یا دور زدن سامانه‌ی تشخیص شود.

در حین برنامه‌ریزی ظرفیت IDS یا IPS قاعده‌ای که باید دنبال شود این است که باید فقط تعداد محدودی از امضاها و مقدار مشخصی از ترافیک به هر فرآیند اختصاص داده شود تا اطمینان حاصل شود که سامانه می‌تواند کار خود را به طور موثری انجام دهد.

این پژوهش‌گر که تحقیقات خود را با استفاده از نرم‌افزار متن‌باز ز که موتور تشخیص تهدید شبکه است، انجام داده است، گفت: «این‌که یک امضاء هیچ تهدیدی شناسایی نکند نسبت به حالتی یک تهدید کشف شود، زمان بیشتری طول می‌کشد. این مسأله کارآیی را تحت تاثیر قرار می‌دهد.»

 

 

نرم‌افزار Suricata که برای استفاده از قوانین قدرتمند و گسترده و زبان امضاء طراحی شده است و از قالب‌های ورودی‌ و خروجی‌ استاندارد مانند YAML و JSON پشتیبانی می‌کند، دارای یک عملکرد مخصوص است. با این حال، یک آسیب‌پذیری در این نرم‌افزار وجود دارد که مدت زیادی از ارائه‌ی وصله‌ی برای آن نمی‌گذرد و می‌تواند برای ایجاد ترافیک بد و بارگذاری سامانه به طور کامل مورد بهره‌برداری قرار بگیرد، در نتیجه راه‌کارهای دفاعی را دور بزند.

این آسیب‌پذیری که با شناسه‌ی CVE-2017-15377 ردیابی می‌شود و نسخه‌های قبل از  4.x نرم‌افزار Suricata را تحت تاقیر قرار می‌دهد، منجربه این می‌شود که بررسی‌های اضافی روی محتوای یک ترافیک جعلی شبکه با یک امضای مشخص انجام شود. اساساً، این موتور جست‌وجو تا زمانی‌که هیچ مورد مطابقی پیدا نکرده به بررسی‌های خود ادامه می‌دهد و فقط بعد از این‌که تعداد بررسی‌هایی که انجام داده به بیش از حد مجاز رسید (که به صورت پیش‌فرض ۳ هزار بررسی است) متوقف می‌شود.

نرم‌افزار Suricata از عبارت‌های منظم (PCRE) استفاده می‌کند، و این پژوهش‌گر کشف کرد که می‌تواند رشته‌ای را که یک عبارت منظم برای جست‌وجوی آن طراحی شده است را مشخص کند. او همچنین کشف کرد که می‌تواند سامانه را به طور کامل بارگذاری کند؛ یک عبارت منظم سازگار با Perl حدود ۱٫۵ میلیون تیک از پردازنده را مصرف می‌کند، یک تقویت هزار برابری منجربه این می‌شود که بیش از ۳ میلیارد تیک پردازنده مصرف شود، که نیاز به یک پردازنده‌ی دوم وجود دارد.

توجه به این‌ حقیقت نرم‌فزار Suricata حتی اگر هیچ مورد مطابقی پیدا نکند هم به بررسی‌های خود ادامه می‌دهد، موجب شد که این پژوهش‌گر متوجه شود که او می‌تواند در هر ثانیه فقط از ۲۵۰ کیلوبایت از ترافیک شبکه استفاده کند تا به طور کامل ۸ عدد از ۴۰ هسته‌ی یک کارگزار شرکتی را بارگذاری کند. به ازای هر ۱۰ درخواست HTTP POST در هر ثانیه، سامانه شروع به رد کردن بسته‌‌ها کرده و دور زده می‌شود. او برای این کار از یک نسخه‌ی تازه نصب‌شده‌ی نرم‌افزار استفاده کرد، بنابراین مقدار ترافیک شبکه‌ی مورد نیاز در شبکه‌های واقعی با توجه به نرخ تولید ترافیک طبیعی، می‌تواند بسیار پایین‌تر باشد. 

این پژوهش‌گر گفت: «هیچ راه خودکاری برای کشف امضاهای آهسته وجود ندارد، و در نتیجه این آسیب‌پذیری در شبکه شناسایی نمی‌شود. وقتی که ما بتوانیم سامانه را مجبور کنیم بسته‌ها را رد کند، می‌توانیم آن را از کار بیندازیم.»

این محقق همچنین اشاره کرد که سامانه‌های دیگری نیز وجود دارند که از تشخیص مبتنی‌بر امضاء استفاده می‌کنند و مهاجمان می‌توانند با استفاده از شیوه‌ای مشابه از آن‌ها بهره‌برداری کنند. او همچنین اشاره کرد که مشکل ما خود امضاها نیستند، اما آن‌ها نیاز به بررسی کیفی دارند.

 

 

0
هنوز هیچ ستاره‌ای موجود نیست.

افزودن یک دیدگاه جدید