LOADING CLOSE

دیوار آتش برنامه کاربردی مبتنی بر امضا و یادگیری ماشین: یک بررسی کوتاه

دیوار آتش برنامه کاربردی مبتنی بر امضا و یادگیری ماشین

دیوار آتش برنامه کاربردی مبتنی بر امضا و یادگیری ماشین: یک بررسی کوتاه

دیوار آتش برنامه کاربردی مبتنی بر امضا و یادگیری ماشین: یک بررسی کوتاه

Web Application Firewall (WAF)  برای محافظت از برنامه های وب در برابر حمله تکامل یافته است. WAF مبتنی بر امضا به تهدیدها از طریق اجرای قوانین ویژه برنامه که ترافیک مخرب را مسدود می کند ، پاسخ می دهد. با این حال ، این قوانین باید به طور مداوم برای مقابله با تهدیدهای در حال توسعه تطبیق داده شوند. قوانین حاصله ممکن است پیچیده و دشوار باشد و مستلزم این است که مدیر دارای سطح بالایی از مهارت ها و دانش دقیق برنامه باشد. ناگفته نماند که چالش های حملات روز صفر! WAF می تواند نرخ بالایی از مثبت کاذب و منفی کاذب را ارائه دهد که می تواند بر عملکرد تأثیر منفی بگذارد و می تواند حفاظت ضعیفی در برابر حملات روز صفر ایجاد کند.

هدف این مقاله ارائه یک مرور کوتاه است که توسعه WAF ها را بر اساس روشهای مبتنی بر یادگیری ماشین نشان می دهد. در مورد مزایا و محدودیت های آنها و همچنین شناسایی مسائل باز بحث شده است. این ارزیابی می کند که کدام یک از آنها می تواند اقدامات متقابل برای حملات روز صفر ارائه دهد و پیکربندی و نگهداری آنها برای به روز نگه داشتن آنها آسان است.

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

برنامه های اولیه وب معمولاً به واسط ساده دروازه مشترک ، CGI ، پروتکل متکی بر برنامه های C یا Perl متکی بودند. حملات بر روی فناوری سرور وب و کتابخانه ها متمرکز شده اند و می توانند به عنوان سرریز بافر ، کد نمونه ناامن ، ضعف های اعتبارسنجی ورودی ، حملات قانونگذاری ، رمزگذاری حملات ، دستکاری در شکل و افزایش امتیاز طبقه بندی شوند.

پیشرفت در زمینه فناوری سرور وب و آگاهی بیشتر از شیوه های توسعه ایمن منجر به تثبیت زیرساخت های اصلی سرور وب شد. با این حال ، افزایش محبوبیت وبلاگ نویسی ، انجمن ها و تجارت آنلاین استفاده از برنامه های کاربردی پایگاه داده را به طرز چشمگیری افزایش داد. کلاسهای کاملاً جدیدی از حملات پیرامون این معماری ها از جمله اسکریپت نویسی بین سایت  XSS ، تزریق SQL ، جعل درخواست بین سایت  SRF ، ضعفهای کنترل دسترسی و عدم موفقیت در احراز هویت و مدیریت جلسه ایجاد شد.

این حملات با تمرکز در زمان توسعه دهندگان بر ارائه عملکرد به جای تقویت امنیت برنامه ها تشدید شد . به عبارت دیگر ، امنیت عملکرد اصلی سیستم نبود. به رسمیت شناختن این وضعیت ،( OWASP در سال 2001 به عنوان یک جامعه منبع باز با تمرکز بر امنیت برنامه های وب تاسیس شد. هدف OWASP بهبود امنیت نرم افزار از طریق آگاهی از شیوه های توسعه ایمن و ارائه ابزارهای مرتبط است.) با پشتیبانی از این اهداف ، OWASP  Top Ten* مهمترین خطرات امنیتی را که بر برنامه های تحت وب تأثیر می گذارد ، مشخص می کند تا از فرآیندهای توسعه مناسب برای کاهش این خطرات استفاده شود.

در زمان نگارش ، OWASP Top ده خطرات امنیتی برنامه های وب زیر را مشخص می کند:

– تزریق – جایی که محتوای نامعتبر را می توان به عنوان دستور یا پرس و جو به مترجم تزریق کرد و مترجم دستورات را اجرا می کند.

– تأیید هویت شکسته – جایی که مهاجمان می توانند از نقص های مدیریت جلسه برای تصدیق هویت کاربر دیگر سوء استفاده کنند.

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

XML (XXE) – جایی که پردازنده های XML به اشتباه موجودات داخلی خصوصی را در معرض اسکن یا انکار حملات سرویس قرار می دهند.

– کنترل دسترسی شکسته – جایی که خطاها در احراز هویت یا کنترل های دسترسی به حملات اجازه دسترسی به قابلیت ها یا داده های غیر مجاز را می دهد.

– پیکربندی نادرست امنیتی – جایی که تنظیمات پیش فرض ناامن یا پیکربندی نادرست تنظیمات سیستم اجازه دسترسی نادرست به عملکردها یا داده های غیر مجاز را می دهد.

Cross-Site Scripting (XSS)- جایی که مهاجم می تواند داده ها را به یک صفحه وب تزریق کند و به مهاجم اجازه می دهد اسکریپت های مخرب دلخواه را اجرا کند.

ضدعفونی کردن ناامن – جایی که یک مهاجم می تواند باعث شود که یک برنامه باعث از بین بردن محتویات مخرب دلخواه شود که منجر به اجرای کد از راه دور می شود.

– استفاده از قطعات با آسیب پذیری های شناخته شده – جایی که مهاجم از برنامه ای که از کتابخانه ها یا اجزای حاوی آسیب پذیری استفاده می کند سوء استفاده می کند.

– ورود و نظارت ناکافی – جایی که مهاجمان می توانند حضور خود را از مدیران یا سیستم های نظارت پنهان کنند.

در زمان شکل گیری OWASP ، WAF ها به عنوان روشی برای ایمن سازی برنامه های وب ظاهر شدند. اولین نسخه از منبع باز ModSecurity † WAF در نوامبر 2002 راه اندازی شد. WAF دسترسی بی درنگ به ترافیک HTTP را فراهم می کند که به فایروال اجازه می دهد ترافیک ورودی و خروجی را بازرسی کند. ترافیک غیر عادی و مخرب ممکن است شناسایی و مسدود شود ، ترافیک HTTP ممکن است برای تجزیه و تحلیل قانونی ثبت شود و ویژگی های HTTP ممکن است برای کاهش سطح حمله برنامه وب محدود شود. وصله مجازی اجازه می دهد تا آسیب پذیری برنامه بدون استفاده از تغییرات نرم افزاری برطرف شود و در عوض ممکن است با پیاده سازی قوانین خاص ، مشکل برطرف شود.

WAF معمولاً بر اساس نحوه اجرای سیاست های خود از یک مدل امنیتی استفاده می کند. از دو مدل امنیتی اصلی استفاده می شود: مدل امنیت منفی و مدل امنیت مثبت.

WAF با اتخاذ یک مدل امنیتی منفی به همه ترافیک اجازه عبور می دهد مگر اینکه با قوانین تعریف شده مطابقت داشته باشد ، در این صورت ترافیک مسدود می شود. اگر ترافیک با قوانین مطابقت نداشته باشد ، مدل امنیتی منفی اجازه عبور از ترافیک را می دهد. مدل امنیت منفی معمولاً با استفاده از رویکرد مبتنی بر امضا اجرا می شود. هدف از رویکرد مبتنی بر امضا شناسایی داده های ورودی مخرب با استفاده از تکنیک های تطبیق الگو است ، بنابراین می تواند الگوها و انواع قبلی شناسایی شده را مسدود کند. برعکس ، WAF با اتخاذ یک مدل امنیتی مثبت به ترافیک اجازه می دهد در صورت تطبیق ترافیک با یک خط مشی ، عبور کند. اگر ترافیک با خط مشی مطابقت نداشته باشد ، مسدود می شود.

مدلهای امنیتی منفی و مثبت دارای مزایا و معایبی هستند. به عنوان مثال ، ممکن است مدل امنیتی منفی ناکافی باشد زیرا هکرها ممکن است حملات خود را برای کار بر اساس سیاست های امنیتی موجود توسعه دهند. برعکس ، مدل امنیتی مثبت ممکن است مستلزم برنامه ریزی و اجرای گسترده بر اساس دانش کامل برنامه باشد و در مواردی که عملکرد یا محتوای ارائه شده توسط برنامه در حال تکامل است ، انعطاف پذیر نباشد. ترکیبی از مدلهای امنیتی مثبت و منفی ممکن است بهترین نتایج را ارائه دهد.

نمونه ای از یک سیاست امنیتی توسط OWASP ModSecurity Core Rule Set (CRS) provided ارائه شده است. CRS قوانین تشخیصی را برای استفاده با ModSecurity ارائه می دهد و هدف آن محافظت از برنامه وب در برابر حملات رایج مانند مواردی است که در OWASP Top Ten تعریف شده است. علاوه بر قوانین تشخیص عمومی ، CRS همچنین قوانین مربوط به چارچوب برنامه وب را ارائه می دهد که نرم افزارهای محبوب مانند وردپرس و دروپال را پوشش می دهد. با این حال ، این قوانین اضافی عمدتا به منظور غیرفعال کردن قوانین عمومی است که در غیر این صورت با وردپرس و دروپال استفاده می شود ، منجر به مثبت کاذب می شود.

تکامل تکنیک های هوش مصنوعی منجر به توجه به کاربرد یادگیری ماشین در تشخیص ناهنجاری توسط WAF ها شده است. تکنیک های مورد بررسی شامل شبکه های عصبی مصنوعی ANN بر اساس شخصیت و ویژگی های مبتنی بر کلمات کلیدی است . طول پارامترها و توزیع کاراکترها ، کلاس پارامترها (یعنی عددی ، آدرس اینترنتی ، ایمیل و غیره) و نوع شمارش شده ؛ SVM تک کلاس بر اساس طول ، تعداد ارقام ، ترکیبی از کاراکترهای عددی و آنتروپی ؛ SVM تک کلاس بر اساس n-gram 10 ؛ درخت تصمیم گیری بر اساس n-gram 11 ؛ شبکه های عصبی مصنوعیهدف این مقاله ارائه یک مرور کوتاه است که توسعه WAF ها را بر اساس روشهای مبتنی بر یادگیری ماشین نشان می دهد.

در مورد مزایا و محدودیت های آنها و همچنین شناسایی مسائل باز بحث شده است. این ارزیابی می کند که کدام یک از آنها می تواند اقدامات متقابل برای حملات روز صفر ارائه دهد و پیکربندی و نگهداری آنها برای به روز نگه داشتن آنها آسان است. بقیه مقاله به شرح زیر سازماندهی شده است. بخش 3 خلاصه و تجزیه و تحلیل آثار منتشر شده مربوط به روشهای WAF مبتنی بر یادگیری ماشین را ارائه می دهد. بحث در مورد یافته ها و برخی مسائل باز در بخش 4 آورده شده است و نتیجه گیری در بخش 5 آمده است2. مرور ادبیات این مرور ادبیات بر توسعه تحقیقات مربوط به WAF های مبتنی بر ناهنجاری با الگوریتم های یادگیری ماشین تمرکز دارد که در بخش 3.1 شرح داده شده است. WAF های ترکیبی که ترکیبی از روش های مبتنی بر امضا و یادگیری ماشینی هستند ، مزایای هر دو رویکرد را ارائه می دهند و تعدادی از رویکردها در بخش 3.2 مورد بررسی قرار می گیرد. مجموعه بسیاری از داده ها که برای آموزش و آزمایش الگوریتم های مبتنی بر یادگیری ماشین استفاده می شود ، مربوط به بسیاری از کارها است. یک مجموعه داده متداول CSIC 2010 است که در بخش 3.3 مورد بحث قرار گرفته است. در نهایت ، بخش 3.4 پتانسیل رویکردهای مبتنی بر یادگیری ماشین را برای ایجاد موارد آزمایشی نشان می دهد و تهدیدی را برای WAF های امضا و یادگیری ماشین نشان می دهد.

1.2 WAF های مبتنی بر ناهنجاری Torrano-Gimenez و همکاران WAF مبتنی بر ناهنجاری را ارائه می دهند. دیوار آتش با استفاده از یک فایل XML پیکربندی شده است که به طور مفصل رفتار عادی مورد انتظار برنامه وب را توصیف می کند. فایل XML شامل قوانینی است که درخواستهای عادی را شامل افعال HTTP ، سرصفحه ها و فهرستهای مربوط به ساختار پوشه برنامه وب ، شامل آرگومانهای ورودی و مقادیر قانونی ، تعریف شده توسط ویژگیهای آماری ، تعریف می کند. تورانو-گیمنز و همکاران گزینه هایی را برای دستیابی به ترافیک معمولی بررسی می کنند ، که در نهایت با استفاده از ژنراتورها و فرهنگ لغت های مصنوعی برای کنترل پارامترهای متغیر ایجاد می شود. اثربخشی WAF حاصل با استفاده از ترافیک عادی و غیر عادی آزمایش می شودو با استفاده از منحنی های گیرنده  ROC محاسبه می شود. فایروال به دلیل اینکه فایل XML با رفتار عادی برنامه وب بسیار مطابقت دارد ، به دقت بسیار بالا و سطوح پایین مثبت کاذب دست می یابد. محدودیت یک مشکل در ایجاد فایل XML است به دلیل چالش در به دست آوردن حجم زیادی از ترافیک غیر مخرب. با وب سایت هایی که منابع یا محتوا را به صورت پویا اضافه می کنند ، چالش هایی نیز وجود دارد.موسا در مورد گسترش برنامه های وب ، تهدیدها و امضاهای حمله و نحوه کاهش اثربخشی WAF های مبتنی بر امضا مانند ModSecurity ، تأمل می کند.

موسا الزامات سطح بالایی را که یک فایروال موثر effective باید ارائه دهد ، ارائه می دهد ، از جمله توانایی مدیریت تعداد زیاد و پیچیدگی قوانین ، کاربر پسند و به روز رسانی آسان ، و نباید بر عملکرد سرور وب هنگام فیلتر کردن درخواست ها تأثیر بگذارد. موسا رویکرد مبتنی بر شبکه عصبی مصنوعی ANN را پیشنهاد می کند و بر تزریق SQL تمرکز می کند. در زمان نگارش تزریق SQL ، آسیب پذیری برتر توسط OWASP رتبه بندی شد و هنوز هم این رتبه را در اختیار دارد. موسا تکنیک های تزریق SQL را مورد بررسی قرار می دهد و آنها را به عنوان tautology ، پرسش های اتحادیه ، درخواست های piggyback ، پرسش های ناقص ، استنتاج و کدگذاری متناوب طبقه بندی می کند.

موسا جوانب مثبت و منفی مدلهای امنیتی مثبت و منفی را بررسی می کند ، به عنوان مثال ، مشکل در سازگاری با یک برنامه پیچیده و در حال تحول و پیچیدگی و مشکل در به روز رسانی قوانین در پاسخ به الگوهای حمله در حال تحول. موسا یک فایروال مبتنی بر ANN را با استفاده از ویژگی های مبتنی بر شخصیت و سپس ویژگی های مبتنی بر کلمات کلیدی پیاده سازی می کند. در نهایت فایروال در یک وب سرور مبتنی بر Perl ادغام می شود که دقت و عملکرد قابل قبولی را ارائه می دهد. موسا پیشنهاد کرد که هدف از کار در آینده گسترش دیوار آتش برای محافظت در برابر XSS و سایر حملات و جایگزینی موتور آموزشی مبتنی بر Matlab با رابط کاربری گرافیکی به WAF است.Pałka و Zachara 8 استفاده از WAF یادگیری ماشین را برای محافظت از برنامه های وب بررسی می کنند. به طور خاص ، آنها استفاده از سرصفحه درخواست داور را در نظر می گیرند. این شامل آدرس صفحه مراجعه کننده است که ممکن است برای شناسایی سوء استفاده از مرور در نتیجه سابقه مرور غیرمعمول و ارجاعی استفاده شود. آنها همچنین مسائل ناشی از ذخیره سازی داده های WAF را بررسی می کنند و اینکه چگونه این داده ها می توانند به خودی خود آسیب پذیری را نشان دهند در صورتی که داده های حساس در الگوریتم های WAF ذخیره یا پردازش شوند. پاشکا و زاخارا مزایا و معایب یادگیری تحریک شده را در مقابل طرح های یادگیری مداوم بررسی می کنند. یادگیری فعال در برابر حملاتی که مرحله یادگیری را هدف قرار می دهند مقاوم است و نیازهای ذخیره اطلاعات کمتری دارد. با این حال ، یادگیری تحریک شده با تغییرات الگوهای استفاده و تکامل برنامه ، که نیاز به آموزش مجدد دارد ، سازگاری کمتری دارد ، بنابراین برای برنامه های پایدار که تغییر نمی کنند مناسب تر است. یادگیری مداوم از دقت کمتری برخوردار است اما نیاز به راه اندازی اولیه کمتری دارد. با این حال ، یادگیری مداوم ممکن است با تغییر الگوهای استفاده ، مثبت کاذب را ایجاد کند و در برابر حملاتی که خود فرآیند یادگیری را هدف قرار می دهد ، آسیب پذیر باشد. Pałka و Zachara یک WAF مبتنی بر یادگیری ماشین را در Apache بر اساس طول پارامترها و توزیع کاراکترها ، کلاس پارامترها (به عنوان مثال ، عددی ، URL ، ایمیل و غیره) و نوع شمارش شده پیاده سازی کردند.نگوین و همکاران ظهور WAF های مبتنی بر یادگیری ماشینی را تشخیص داده و اهمیت انتخاب ویژگی را در اثربخشی آنها برجسته می کند. نگوین و همکاران ارزیابی استفاده از ویژگی های عمومی (GeFS) 15 با استفاده از 30 ویژگی از پیش تعیین شده که بر اساس دانش تخصصی آنها برای حمله وب مناسب تلقی می شود. نگوین و همکاران ویژگی ها را برای شناسایی همبستگی خطی یا روابط غیر خطی ، سپس با استفاده از انتخاب ویژگی همبستگی CFS یا حداقل-افزونگی-حداکثر-مربوط mRMR بر اساس نتیجه تجزیه و تحلیل کرد. این امر به دلیل عدم ارتباط یا افزونگی با تأثیر جزئی بر دقت تشخیص ، کاهش زیادی در ویژگی ها ایجاد می کند. روش CFS منجر به 11 ویژگی شد که در ارتباط با مجموعه داده CSIC 2010 مورد آزمایش قرار گرفتند که نرخ تشخیص خوب و نرخ مثبت کاذب را ارائه می دهد. نگوین و همکاران لیست مجموعه کامل ویژگی ها و زیر مجموعه ویژگی های انتخاب شده توسط CFS و mRMR.احمد و همکاران نحوه مدیریت WAF های معمولی مبتنی بر امضا توسط مدیران و در نتیجه پیکربندی های لایه ای پیچیده را که مدیریت آنها دشوار است و عملکردی غیر بهینه دارند ، مرور کنید. WAF های مبتنی بر امضا برای مقابله با تهدیدهای در حال توسعه به سازگاری مداوم نیاز دارند. در پاسخ به این امر ، مدیران ممکن است قوانین تخصصی تری برای برنامه های کاربردی ایجاد کنند. مدیران می توانند به جای تعدیل قوانین موجود ، قوانین جدیدی را در پاسخ به تهدیدها ایجاد کنند. نتیجه این است که پیکربندی با لایه به لایه قوانین پیچیده بسیار پیچیده می شود ، میزان مثبت کاذب و منفی کاذب را افزایش می دهد و منجر به عملکرد پایین می شود. این امر با سطح تخصص مورد نیاز ، جزئیات و پیچیدگی قوانین و عدم وجود رابط کاربری یا سایر ابزارها برای ساده سازی وظیفه مدیریت تشدید می شود. احمد و همکاران یک چارچوب مفهومی برای ساختار مدیریت WAF پیشنهاد کرد. چارچوب پیشنهادی اجازه می دهد تا افزونگی ها و روابط شناسایی شوند و راه حل ها به راحتی در چارچوب قوانین موجود ارزیابی شوند.تورانو ، گیمنز و همکاران WAF مبتنی بر ناهنجاری را پیشنهاد کنید. فایروال مجموعه ای از ویژگی ها را بر اساس دانش متخصص و n-gram بر این اساس می سازد که این ترکیب نسبت به روش های جداگانه به کار گرفته شده ، اثربخشی بهتری را ارائه می دهد. تورانو ، گیمنز و همکاران سه رویکرد برای ترکیب دانش تخصصی و ویژگی های n-gram را بررسی کنید: ترکیب-انتخاب (ترکیب دانش تخصصی و ویژگی های n-gram ، سپس انتخاب ویژگی برای کاهش ابعاد) ، انتخاب-ترکیب (انتخاب ویژگی برای کاهش ابعاد و سپس ترکیب انتخاب شدهدانش تخصصی و ویژگی های n-gram) و select-n-gram-ترکیب ویژگی های n-gram را فقط برای کاهش ابعاد انتخاب کنید ، سپس ویژگی های n-gram انتخاب شده را با ویژگی های دانش تخصصی ترکیب کنید). انتخاب ویژگی با استفاده از روش GeFS 15انجام می شود. سپس Torrano -Giménez با استفاده از مجموعه داده های ECML/PKDD 2007 با استفاده از سه رویکرد ترکیبی ، انتخاب ویژگی ها و الگوریتم های درخت تصمیم گیری ، اثربخشی فایروال را اندازه گیری می کند.اپ و همکاران  یک WAF مبتنی بر یادگیری ماشین با استفاده از SVM یک کلاس بسازید. آنها معماری سیستم خود را توصیف می کنند که شامل چهار مرحله است: مسیریابی ، پیش پردازش داده ها ، طبقه بندی و پاسخ. این سیستم با استفاده از پایتون با استفاده از کتابخانه یادگیری ماشینی scikit-learning پیاده سازی می شود و کد منبع و مجموعه داده های آموزشی آنها در github (https://github.com/nico-ralf-ii- fpuna/paper) منتشر می شود. مسیریابی درخواست های ورودی با URL و روش HTTP ، اجازه ایجاد مدل های متمرکز و دقیق تر را می دهد. پیش پردازش داده ها از ویژگی های استخراج بر اساس ویژگی پیام ها ، از جمله طول ، تعداد ارقام ، ترکیبی از کاراکترهای الفبایی و آنتروپی استفاده می کند. طبقه بندی برای هر گروه روش URL/HTTP یک طبقه بندی کننده SVM یک کلاس را آموزش می دهد. هسته های خطی ، چند جمله ای و عملکرد شعاعی RBFبا RBF مورد آزمایش قرار گرفتند و بهترین نتایج طبقه بندی را ارائه کردند. گام پاسخ ، درخواست ها را جلو می برد و درخواست های غیرعادی را ثبت یا مسدود می کند. اثربخشی با استفاده از نرخ مثبت واقعی ، نرخ مثبت کاذب و مشتق از مثبت مثبت مثبت ، کاذب منفی منفی و نتایج قابل مقایسه با سایر WAF های مبتنی بر یادگیری ماشین و نتایج قابل توجهی بهتر در مقایسه با ModSecurity با قوانین پیش فرض محاسبه شد. زمان پاسخ 2-4mS در هر درخواست افزایش یافت و بنابراین برای استفاده در تولید قابل قبول تلقی شد.لیانگ و همکاران رویکرد جدیدی را برای تشخیص ناهنجاری در برنامه های تحت وب با استفاده از شبکه های عصبی مکرر RNNsپیشنهاد کرد. پرسپرترون چند لایه MLPدر این کار به کار گرفته شده است. شایان ذکر است که MLP یک شبکه عصبی مصنوعی پیشرو است. بررسی عملکرد بر اندازه گیری دقت ، حساسیت و ویژگی مدل متمرکز شده است. همانطور که نویسندگان ادعا می کنند ، تحقیقات نشان می دهد که این مدل در مقایسه با برخی از مدلهای موجود در ادبیات که هنوز معرفی نشده اند ، عملکرد خوبی دارد. به عبارت دیگر ، این اثر هیچ معیاری برای مقایسه نتایج آنها ارائه نمی دهد ، اگرچه ادعا می شود عملکرد آنها با آخرین فن آوری قابل مقایسه است! یکی دیگر از نگرانی های این کار این است که KDD CUP 99 و مجموعه داده های اصلی DARPA98 آن که توسط Divekar و همکاران در نظر گرفته شده است را در نظر نگرفته است. بعنوان “پرکاربردترین مجموعه داده ها در سالنامه های تشخیص نفوذ شبکه مبتنی بر ناهنجاری” و توسط Samrin و Vasumathi  در کارهای جالب خود که به بررسی سیستم های تشخیص نفوذ مبتنی بر ناهنجاری می پردازد ، مورد استفاده قرار گرفت.اپلت و همکارانبا تقویت الگوریتم قبلی ML-Driven بر کارهای قبلی خود (Appelt و همکاران) تکیه کنند. آنها اثربخشی الگوریتم افزایش یافته را با الگوریتم های قبلی مقایسه می کنند. در برابر سایر ابزارهای برجسته آزمایش WAF (sqlmap و چارچوب تست WAF) ؛ و عملکرد الگوریتم در برابر ModSecurity و WAF اختصاصی. الگوریتم افزایش یافته نسبت به الگوریتم های قبلی عملکرد بالاتری دارد. Sqlmap و WAF Testing Framework به ترتیب کمتر از الگوریتم مبتنی بر یادگیری ماشین موثر هستند.بارتارت و همکاران عملکرد ModSecurity را با استفاده از مجموعه قوانین اصلی OWASP خارج از جعبه مرور کنید. آنها معایب این رویکرد از جمله نرخ بالای مثبت کاذب ، تشخیص ضعیف حملات روز صفر و عدم انعطاف پذیری در حفاظت از وب سایت های مدیریت شده با محتوای پویا را شناسایی می کنند. بارتارت و همکاران مکمل ModSecurity/CRS را با یک طبقه بندی مناسب برای استفاده در غیاب داده های آموزشی خاص و یک رویکرد مبتنی بر تشخیص ناهنجاری n-gram برای زمانی که داده های آموزشی مخصوص برنامه در دسترس است ، کشف کنید. هر دو روش برای تکمیل ModSecurity/CRS مورد استفاده قرار گرفتند ، با طبقه بندی یک کلاس عملکرد مثبت کاذب را بهبود بخشید و تشخیص ناهنجاری n-gram مقاومت بیشتری را در برابر حملات روز صفر ارائه کرد.وارتونی و همکاران اثربخشی WAF مبتنی بر یادگیری ماشین را با استفاده از طیف وسیعی از الگوریتم ها برای ساخت ، استخراج و طبقه بندی ویژگی ها اندازه گیری کنید. اندازه گیری ساختمان با روش های 1 گرم و 2 گرم اندازه گیری می شود. استخراج ویژگی با استفاده از ترکیبی از رمزگذار خودکار انباشته و شبکه اعتقاد عمیق پیاده سازی شده و در برابر مجموعه داده های CSIC 2010 و ECML/PKDD 2007 آزمایش شده است. تشخیص ناهنجاری با استفاده از یک کلاس SVM ، جنگل جدا شده و پاکت بیضوی اجرا می شود. وارتونی و همکاران روشهای مختلف را با در نظر گرفتن اثربخشی الگوریتمی ، زمان آموزش و عملکرد زمان اجرا مقایسه کنید و نتیجه بگیرید که مدلهای عمیق عملکرد بهتری نسبت به مدلهای سنتی دارند.مرادی و همکاران روش دیگری را برای تشخیص ناهنجاری بررسی کنید. این کار مکانیسم هایی را بر اساس شبکه عصبی عمیق و ترکیب ویژگی موازی پیشنهاد می کند. پیشنهاد “استفاده از رمزگذار خودکار انباشته و شبکه اعتقاد عمیق به عنوان روشهای یادگیری ویژگی ، که در آن فقط داده های معمولی در طبقه بندی مرحله آموزش استفاده می شود ، سپس SVM یک کلاس ، جنگل انزوا و پاکت بیضوی به عنوان طبقه بندی کننده استفاده می شود”. با این وجود ، جریان داده ها در نظر گرفته نشده است و WAF حاصله به عنوان یک سرویس ابری استفاده نمی شود که پذیرش آن را محدود می کند.

2.2  WAF های ترکیبی Tekerek و Bay 12 استفاده از WAF ترکیبی شامل تشخیص مبتنی بر امضا  SBD و تشخیص مبتنی بر ناهنجاری  ABD با استفاده از یک شبکه عصبی مصنوعی را مورد بررسی قرار می دهند. جزء مبتنی بر شبکه عصبی از سه ویژگی ورودی استفاده می کند: تجزیه و تحلیل شخصیت حروف الفبا ، تجزیه و تحلیل فرکانس حروف و تجزیه و تحلیل طول درخواست. WAF حاصله با استفاده از مجموعه داده های CSIC 2010 ، ECML-PKDD 2007 و WAF 2015 آموزش و آزمایش شد. Tekerek and Bay عملکرد و اثربخشی تشخیص سه مرحله ای مبتنی بر امضا و تشخیص مبتنی بر ناهنجاری را اندازه گیری می کند. WAF پیشنهادی از طریق معماری ترکیبی خود به سطوح خوبی از عملکرد دست می یابد. مراحل مبتنی بر امضا سریعتر قبل از مرحله مبتنی بر ناهنجاری کندتر انجام می شود. درخواستهای عادی و غیر عادی قبلی ، که توسط مرحله تشخیص مبتنی بر ناهنجاری مشخص شده اند ، برای افزایش عملکرد تشخیص به مراحل مبتنی بر امضا بازگردانده می شوند.پرابودسای و همکاران WAF ترکیبی شامل سه مرحله را توصیف کنید. مرحله اول مبتنی بر امضا است ، از قوانین مبتنی بر OWASP استفاده می کند و برای فیلتر کردن درخواست هایی که با الگوهای حمله شناخته شده مطابقت دارند ، مورد استفاده قرار می گیرد. اگر درخواست مرحله اول را پاک کند ، به مرحله دوم منتقل می شود که با استفاده از موتور AI اجرا می شود. اگر ترافیک مخرب در مرحله دوم تشخیص داده شود ، درخواست به یک پایگاه دانش اضافه می شود ، در غیر این صورت ، درخواست به فاز سوم که مبتنی بر IP است ارسال می شود. سومین مرحله ، مبتنی بر IP ، آدرس IP را با استفاده از گزارش IP آدرس Virustotal (https://developers.virustotal.com/) بررسی می کند تا مشخص شود آیا آدرس IP مخرب گزارش شده است یا خیر. پس از پاکسازی هر سه مرحله ، درخواست به برنامه منتقل می شود. این مقاله یک سیستم تجاری را توصیف می کند و جزئیات کمی در مورد پیاده سازی موتور AI ارائه می دهد.

2.3 مجموعه داده های گیمنز و همکاران یک مجموعه داده HTTP ارائه می دهد که برای توسعه و آزمایش سیستم های تشخیص نفوذ و WAF ها مورد استفاده قرار می گیرد. مجموعه داده درخواستهای HTTP عادی و غیرعادی ایجاد می کند و شامل حملات وب متداول از جمله تزریق SQL ، XSS و سرریز بافر است. مجموعه داده توسط محققان دیگر از جمله بسیار مورد استفاده قرار گرفته است. هنوز نیاز به توسعه یک مجموعه داده جدید وجود دارد زیرا مجموعه داده های قبلی منسوخ شده بودند و سیستم های واقعی را هدف قرار نمی دادند. مجموعه داده در به طور بالقوه دارای مسائل مشابه است ، زیرا در حال حاضر بیش از 10 سال قدمت دارد و یک سیستم تجارت الکترونیکی سفارشی را هدف قرار می دهد.

2.4 چارچوب های تست Appelt و همکاران. مشکل در پاسخ به تهدیدهای در حال توسعه برای برنامه های تحت وب را تشخیص می دهند. WAF های مبتنی بر قانون معمولاً از الگوریتم های تطبیق پیچیده مبتنی بر الگو استفاده می کنند و برای ایجاد آنها نیاز به تخصص است و ممکن است به دلیل اشکالات پیاده سازی قوانین و خطاهای پیکربندی مستعد ضعف باشند. اپلت و همکاران یک چارچوب آزمایشی خودکار را توصیف کنید که ممکن است برای آزمایش فایروال و پیدا کردن نقاط ضعف ، با تمرکز بر تزریق SQL استفاده شود. یک ژنراتور موردی تصادفی موارد اولیه تست دور زدن را شناسایی می کند ، پس از آن الگوریتم مبتنی بر یادگیری ماشین با دور زدن موارد آزمایش موانع ایجاد می کند و موارد آزمایشی جدیدی را ایجاد و اولویت بندی می کند ، که آزمایش می شوند و دوباره در مدل تولید آزمایش قرار می گیرند. ژنراتور مورد آزمایش مبتنی بر یادگیری ماشین نشان داد که عملکرد بالاتری در مقایسه با ژنراتور مورد تصادفی تصادفی دارد و توانست تعداد زیادی آزمایش دور زدن در برابر ModSecurity را که با مجموعه قوانین اصلی OWASP پیکربندی شده است ، تشخیص دهد.دمتریو و همکاران ابزاری را ارائه کردند که سعی می کرد حضور دشمن در سیستم را مدل کند. این ابزار WAF-A-MoLE نام دارد. این ابزار راه هایی را برای تغییر نحو یک محموله بار از طریق پیشنهاد مجموعه ای از عملگرهای جهش ارائه می دهد. شایان ذکر است که این کار کاملاً بدون تأثیر بر معناشناسی اصلی انجام می شود. ارزیابی این ابزار نشان می دهد که از بسیاری از WAF های موجود که مبتنی بر یادگیری ماشین هستند پیشی می گیرد.

.3. بحث و مباحث باز مروری بر ادبیات ، ظهور WAF هایی است که برای محافظت از برنامه های وب استفاده می شود. به طور خاص ، مرور ادبیات ، مسائل مربوط به WAF های مبتنی بر امضا از جمله آسیب پذیری آنها در برابر حملات روز صفر و مشکل در پیکربندی قوانین و به روز نگه داشتن آنها را مشخص کرده است. با توجه به مطالبی که در قسمت قبل بررسی شد ، می توان دروس زیر را به پایان رساند:

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

2. مقاله به بررسی و اثرگذاری WAF های مبتنی بر یادگیری ماشین پرداخته است که ممکن است برای تکمیل یا استفاده به جای الگوریتم های مبتنی بر امضا مورد استفاده قرار گیرد. در برخی از پیشنهادات ، سیستم ارزیابی شده 98.8٪ دقت را بدست آورده است.

3. در حالی که ادبیات الگوریتم های مختلف را با استفاده از مجموعه های آزمایشی در برنامه های نمایشی ارزیابی کرده است ، اما جزئیات پیاده سازی دقیق الگوریتم ها را ارائه نمی دهد. این امر بازتولید دقیق نتایج آزمایش را دشوار می کند. کار قبلی بر روی تشخیص تزریق SQL با توجه کمتر به سایر کلاس های آسیب پذیری متمرکز شده است. به روزرسانی مجموعه داده های عمومی عمومی می تواند به محققان اجازه دهد تا تکنیک های ماشین و یادگیری عمیق را مورد بررسی قرار دهند تا مدلی قابل اعتماد برای WAF های مبتنی بر ML ارائه دهند که می تواند بر محدودیت های مبتنی بر امضا غلبه کند. شایان ذکر است که چندین قطعه کار یک معماری یادگیری عمیق جامع مانند کار را ارائه کردند.

4. بحث در مورد قطعات مختلف کار زمینه های بهبود را به شرح زیر نشان می دهد:

الف. ارزیابی WAF ها و الگوریتم های مبتنی بر یادگیری ماشین منبع باز ؛

ب. ارزیابی عملکرد سخت افزار میزبانی وب فعلی ؛

ج. کاربرد در سایر کلاسهای حملات فراتر از تزریق.

د. ارزیابی اثربخشی الگوریتم های یادگیری ماشین در محافظت در برابر الگوهای حمله فعلی که چارچوب های برنامه وب را هدف قرار می دهند.

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

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

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

قدردانی این اثر بخشی از پایان نامه کارشناسی ارشد نویسنده اول Simon Applebaum است که به گروه آموزش عالی برنده (دانشگاه لیورپول) ارائه شده است.

واژه نامه اصطلاحات :

ABD – Anomaly Based Detection

ANN – Artificial Neural Network

CGI – Common Gateway Interface

CFS – Correlation Feature Selection

CRS – Core Rule Set

GeFS – Generic Feature Selection

HTTP – Hypertext Transfer Protocol

ML – Machine Learning

MLP – Multilayer Perceptron

OWASP – Open Web Application Security Project

PII – Personally Identifiable Information

RBF – Radial Basis Function

RNN – Recurrent Neural Networks

ROC – Receiver Operating Characteristic

SBD – Signature Based Detection

SQL – Structured Query Language

SVM – Support Vector Machine

URL – Uniform Resource Locator

WAF – Web Application Firewall

XML – Extensible Markup Language

XSS – Cross Site Scripting

دیدگاهتان را بنویسید