WAF چیست
حملات وب اپلیکیشن ها، نفوذ به وب سرور ها، تکنیک هایی مثل XSS، File Inclusion، SQL Injection، DDoS تهدیدات امنیتی بزرگی به شمار می روند. WAF ها شاید یکی از مهم ترین پایه های حفاظتی در برابر این حملات باشند که هر وب سروری به آنها نیاز داشته باشد.
مقدمه:
حملات تحت وب بسیار متنوع اند؛ با وجود انواع دفاع ها و ساختار های امنیتی، یک هکر و مهاجم با تجربه همواره با تعداد زیادی از سناریو ها برای انجام مخرب ترین حملات وب اپلیکیشن و وب سرور ها آمادگی دارد. بخش زیادی از حملات وب اپلیکیشن ها توسط WAF ها محافظت می شوند. مثل هر فایروال دیگری، این سرویس های امنیتی با نظارت بر ترافیک، پروتکل و یا عوامل دیگر در وب اپلیکیشن ها تا حد زیادی از بانک اطلاعاتی نفهته در پشت وب اپلیکیشن ها محافظت می کنند.
WAF چیست؟
WAF در لغت مخفف کلمه Web Application Firewall است. این افزونه های مجازی، از وب اپلیکیشن ها در برابر بسیاری از حملات لایه هفت OSI یعنی (Application) محافظت میکنند. متداول ترین نوع حملات معمولا معمولا Cross-Site Scripting (XSS)، Cross-Site Forgery، SQL Injection و Cookie Poisoning است. این دسته حملات امنیت اطلاعات سرور را نقض و به خطر میندازند.
بطور کلی WAF قادر به محافظت در برابر همه حملات وب نیست؛ این متد از دفاع در برابر حملات معمولا بخشی از ساختار های امنیتی یک وب سرور را تشکیل میدهد و حتی با فایروال های دیگر نیز ترکیب می شود. بنابراین بازه زیادی از حملات قابل دفع می شوند. با قرار دادن WAF در وب اپلیکیشن، پوششی بین وب اپلیکیشن و فضای اینرنت ایجاد میشود. همانطور که یک سرور Proxy از دستگاه و هویت یک کاربر بعنوان میانجی محافظت میکند، WAF ها به نوعی نقش یک Reverse Proxy را بازی میکنند و به ارتباط امن بین کاربر و سرور کمک میکنند.
WAF چگونه کار میکند؟
یک فایروال وب مانند هر فایروال دیگری از طریق تعدادی از قوانین تعریف شده، عمل میکند. هدف قوانین ها حفاظت از وب سرور در برابر آسیب پذیری ها در وب اپلیکیشن با استفاده از فیلتر سازی و قرنطینه کردن ترافیک هاي HTTP/S مشکوک و عدم دریافت دیتای احراز هویت نشده است. در کنار تنوع قوانین و توانایی های یک وب فایروال، ارزش و کیفیت آن با سرعت و سهولت در استفاده سنجیده میشود، وظیفه اصلی WAF ها شناسایی، واکنش و حفاظت از انواع متنوعی از حملات وب در سریعترین زمان است. بعنوان مثال در یک حمله DDoS، محدود سازی به موقع ترافیک و بسته ها توسط WAF از مهم ترین اهداف به شمار می رود.
مدل های امنیتی WAF
WAF ها سه نوع رویکرد امنیتی را معمولا دارا هستند:
Whitelisting:
یک لیست دسترسی که با استفاده از الگوریتم ها و یادگیری ماشین به WAF ترافیک های قابل عبور را معرفی میکند تا ترافیک های خارج از لیست دفع شوند.
Blacklisting:
یک لیست مسدود سازی بر پایه Signature های بروز شده در برابر آسیب پذیری های شناخته شده است. بطوری که بقیه ترافیک ها توسط فایروال پذیرفته شوند.
Hybrid Approach:
در این مدل WAF ترکیبی از هر دو نوع بلاک و وایت لیست کردن ترافیک را انجام میدهد
بیشتر بخوانید : حملات انکار سرویس یا DoS & DDOS
تفاوت WAF ها و Firewall ها
تفاوت کلیدی یک فایروال وب و فایروال عادی، محافظت و حراست در لایه ۳ و ۴ است. در حالی که یک فایروال مبتنی بر وب تنها در لایه ۷ (Application) فعالیت میکند.
تفاوت WAF، IPS و NGFW
یک IPS سیستم جلوگیری از نفوذ به شبکه است، WAF یک فایروال وب اپلیکیشن و NGFW یک فایروال نسل بعدی است؛ تفاوت آنها در چیست؟
يک IPS بطور گسترده تمرکز بیشتری دارد. بطور معمول این سیستم بر پایه قوانین و امضا های آسیب پذیری ها عمل میکند؛ به این معنی است که می تواند آسیب پذیری ها و روش های حمله مبتنی بر signature ها را در پایگاه داده شناسایی میکند؛ سپس شروع به ارسال اخطار مبنی بر وجود ترافیکی که خارج از استاندارد های تعریف شده می کند.
قوانین و علامت ها به مرور زمان با پیدایش آسیب پذیری های جدید تغییر میکنند. بطور عمومی، IPS از تعداد متنوعی از ترافیک پروتکل های مختلفی مثل DNS، SMTP، Telnet، RDP، SSH و FTP محافظت میکند. IPS معمولا در لایه ۳ و ۴ فعالیت اصلی خود را دارد و بطور غیر مستقیم تاثیر امنیتی بر لایه های بالاتر مثل Application را نیز دارد.
یک WAF، فایروال مبتنی بر وب است و بطور به منظور نظارت و آنالیز درخواست های پروتکل HTTP/S طراحی شده است. اگاهی WAF ها معمولا به کاربر و لایه های Application و Session، باخبر از وب اپلیکیشن های پشت آنها و سرویس هایی که ارائه میدهند است. به همین دلیل، از آنها میتوان به عنوان یک میانجی بین کاربر و اپلیکیشن، به منظور آنالیز همه ارتباطات قبل از رسیدن به مقصد یاد کرد.
WAF های قدیمی، تنها از اقدامات و دسترسی های قابل انجام توسط کاربر اطمینان حاصی می کردند. در بسیاری از سازمان ها، WAF ها به عنوان مکانیزم دفاعی مرحله اول و قابل اطمینان برای اپلیکیشن ها هستند؛ به خصوص جهت حفاظت در برابر ۱۰ حمله و آسیب پذیری متداول در OWASP که به شرح زیر است:
- Code Injection
- Broken Authentication
- Sensitive Data Exposure
- XML External Entity (XXE)
- Broken Acces Control
- Security Misconfigurations
- Cross Site Scripting (XSS)
- Insecure Deserialization
یک NGFW یا فایروال نسل بعدی در مواردی نسبت به WAF تمایز پیدا میکند. این نوع از فایروال ها ترافیک خروجی به اینترنت، بین وب سایت ها، حساب های ایمیل و فضای ابری SaaS را زیر نظر دارند. بطور ساده، برخلاف گفته های بالا، این فایروال ها از کاربر محافظت می کنند. NGFW ها قوانین بر پایه کاربر را اجرا می کنند و زمینه هایی را به قوانین امنیتی به منظور اضافه کردن قابلیت هایی مثل فیلتر کردن URL، آنتی ویروس و به طور بالقوه IPS های خودشان فراهم می سازند. در حالی که WAF ها معمولا مثل یک Reverse Proxy عمل میکنند، NGFW ها در اغلب موارد عملکرد یک Forward Proxy را برای کاربران خود دارند.
انواع فایروال های وب و روش های پیاده سازی آنها
WAF ها می توانند به شکل های مختلفی اجرا شوند، هرکدام به نوعی خاص و دارای مزایا و معایب خود هستند. بطورکلی سه نوع WAF دیده می شود:
- WAF های مبتنی بر شبکه، به طور عمومی بر پایه سخت افزار هستند. با نصب آنها بر روی شبکه، تاخیر در شبکه کاهش پیدا میکند. با این حال این نوع از فایروال ها نیازمند فضای ذخیره سازی و حفظ و نگهداری از تجهیزات فیزیکی هستند.
- WAF های مبتنی بر هاست، توسط یک ارائه دهنده سرویس مدیریت که WAF را به عنوان سرویس امنیتی در اختیار می گذارد، مدیریت و نگهداری می شوند.
- WAF های مبتنی بر فضای ابری، یک فایروال مقرون به صرفه و آسان برای اجرا را در اختیار قرار می دهند. آنها به طور معمول یک نصب کلید در دست به سادگی تغییر DNS را دارا هستند. این نوع فایروال ها بطور معمول دارای مقداری هزینه برای کاربران خود هستند و بصورت ماهانه یا سالانه به عنوان سرویس امنیتی دریافت می کنند. این دسته از فایروال ها می توانند راه حلی برای دفاع در برابر تازه ترین نوع حملات شناسایی شده در فضای اینترنت باشند. کاربران این فایروال ها مسئولیت تنظیم، نگهداری و حفاظت از وب اپلیکیشن را به شخص ثالث واگذار می کنند.
چرا به WAF ها نیاز داریم؟
بسیاری از سازمان ها با ریسک های امنیتی بزرگ به علت وجود خلاء و اشکال در متد طراحی و توسعه در لایه Application مواجه می شوند، عواملی مثل افزایش استفاده کابران از امکانات تحت وب و سرویس های نرم افزاری، تغییر فضای ابری و نیروی کاری از راه دور نیاز به استفاده از این فایروال ها را به وجود می آورد. قرار دادن یک WAF به سازمان امکان پیدا کردن منشاء حملات وب اپلیکیشن ها و رابط برنامه نویسی اپلیکیشن ها (API) را در اختیار ما قرار می دهد.
درحالی که WAF ها قادر به حفاظت از سازمان ها در برابر همه تهدیدات دیجیتالی نیستند، اما توانایی شناسایی محافظت از حملات لایه هفت که شامل ۱۰ آسیب پذیری بزرگ OWASP می شود را دارند.
تغییرات و بروز رسانی بازار WAF ها
- یکپارچه سازی سیستم های اطلاعات امنیتی و مدیریت رخداد (SIEM)، تست امنیتی اپلیکیشن (AST) و مدیریت دسترسی وب (WAM)
- ارائه راه حل هایی برای WAF بر پايه یک مدل امنیتی مثبت و استفاده از یادگیری ماشین برای آنالیز درخواست های HTTP/S
- ترکیب شدن WAF ها و ابزار های IoT که شامل قابلیت هایی مثل شناسایی اعتبار پروتکل ها و ردیاب های اثر انگشت هستند
- رونق روش های پیشرفته مقابله با تهدیدات و تعداد زیادی از یکپارچه سازی ها
- کاهش مثبت های کاذب و اشتباهات WAF ها
WAF ها، فایروال هایی ضروری برای هر وب اپلیکیشنی به شمار می روند. توانایی آنها در دفع بازه بزرگی از حملات لایه Application است و توسط سرویس های فضای ابری یا شخص ثالث نیز میتوانند نگهداری و تنظیم شوند. حملاتی مثل SQL Injection، XSS و CSRF تا حد زیادی بوسیله این سری از فایروال ها قابل جلوگیری هستند.
نویسنده مقاله : امیرحسین صابری فرد
منابع :
- Cloudflare Team, What is a WAF? | Web Application Firewall explained
https://www.cloudflare.com/learning/ddos/glossary/web-application-firewall-waf/ - Radware Team, What Is A WAF (Web Application Firewall)?
https://www.radware.com/cyberpedia/application-security/what-is-waf/ - F5 Networks, What is a Web Application Firewall (WAF)?
https://www.f5.com/glossary/web-application-firewall-waf
دیدگاهتان را بنویسید