WAF چیست؟ + معرفی انواع ان
امروزه بیش از 70 درصد حملات اینترنتی از طریق وب سایت ها صورت میگیرد، فایروال برنامه های وب یا WAF به منظور جلوگیری از این حملات توسعه یافته است که در این پست آموزشی با آن آشنا میشوید.
WAF چیست؟
حملات هکرها در لایه های مختلف OSI صورت میگیرد که یکی از این لایه ها، Application نام دارد. لایه کاربرد، هفتمین لایه شبکه است و پیچیده ترین حملات در این لایه اتفاق میافتد. WAF مخفف Web Application Firewall فایروالی است که این نوع حملات را شناسایی کرده و در برابر آن ها عکس العمل نشان میدهد.
این حملات شامل:
- SQL Injection
- XSS
- باگ CSRF
- Buffer Overflow
- Malicious Robots
- Information leakage
- Malicious and Illegal Encoding
- Web Server and OS Attacks
- OS command injection
- باگ RFI
- Session Hijacking
- DOS
- Protection against common attacks
- Site Reconnaissance
- Parameter Tampering
- Directory Traversal
WAF چگونه کار میکند؟
WAF به گونه ای طراحی شده است که بر روی لایه Application قرار میگیرد و ترافیک ورودی/خروجی مبتنی بر HTTP/HTTPS را بررسی میکند. هر زمان که ترافیک مخربی از هر دو درخواست GET و POST را شناسایی کند، به سرعت عکس العمل نشان میدهد.
برخلاف فایروال های معمولی که فقط به عنوان یک دروازه ایمن از سرورها عمل میکنند، WAF یک اقدام امنیتی است که بین سرویس گیرنده (Client) و وب سرور قرار دارد. بیشترین حملات مخرب، معمولا به صورت خودکار انجام میگیرند که تشخیص این نوع تهدیدات بسیار سخت است؛ زیرا غالبا برای تقلید از ترافیک انسان طراحی شده و قابل شناسایی نیست.
WAF بازرسی عمیقی از هر درخواست و پاسخ را برای همه اشکالات متداول ترافیک وب انجام میدهد. این بازرسی به WAF کمک میکند تا تهدیدات را شناسایی و مسدود کند و از رسیدن آن ها به سرور جلوگیری کند.
انواع WAF
فایروال وب اپلیکیشن مبتنی بر شبکه
(Network-based web application firewall)
فایروال های تحت وب مبتنی بر شبکه (NWAF) به طور سنتی مبتنی بر سخت افزار هستند و به دلیل نصب محلی، تاخیر در ورودی/خروجی را کاهش میدهند. این بدان معناست که NWAF نزدیک سرور برنامه نصب شده و دسترسی به آن آسان است. اما این راهکاری بسیار گران است؛ چرا که باید به صورت سخت افزاری خریداری شود و تخصص های امنیتی داخلی را میطلبد.
فایروال وب اپلیکیشن مبتنی بر میزبان
(Host-based web application firewall)
فایروال های وب اپلیکیشن مبتنی بر میزبان (HWAF) به عنوان ماژول های یک وب سرور وجود دارند. این نوع از WAF یک راه حل بسیار ارزان تر در مقایسه با WAF های مبتنی بر سخت افزار است که برای برنامه های وب کوچک طراحی شده اند. هنگامی که یک WAF در سرور ادغام شود، میتواند مصرف منابع سرور محلی، پیچیدگی پیاده سازی و هزینه های نگهداری را افزایش دهد.
فایروال وب اپلیکیشن مبتنی بر ابر
(Cloud-based web application firewall)
فایروال های برنامه تحت وب مبتنی بر ابر گزینه ای مقرون به صرفه هستند و به عنوان پروکسی معکوس عمل میکنند. راه حل های مبتنی بر ابر زمانی مناسب است که نمیخواهید خود را با قابلیت های عملکردی محدود کنید و یا میخواهید از سیستمی که به تعمیر نیاز دارد نگهداری کنید.
لیست سیاه WAF، لیست سفید WAF و WAF ترکیبی
WAF ها میتوانند تحت مدل های مختلفی از جمله لیست سیاه (امنیت منفی)، لیست سفید (امنیت مثبت) و مدل های امنیتی ترکیبی کار کنند.
- لیست سیاه: مدل لیست سیاه با محافظت از برنامه وب در برابر حملات شناخته شده یا امضاهای خاص کار میکند. این نوع امنیت مانع از حملاتی میشود که از این موضوعات شناخته شده یا آسیب پذیری ها سوءاستفاده میکنند. اشکال این مدل این است که انواع مختلف لیست های سیاه در لحظه ایجاد میشوند و به دلیل درصد بالای حملات ZERO DAY منسوخ شده اند.
- لیست سفید: مدل لیست سفید از امضا و تصمیم گیری منطقی استفاده میکند و اجازه میدهد ترافیکی مطابق با معیارهای خاص جریان داشته باشد. یعنی ممکن است درخواست ها از طریق URL های خاص مجاز باشند و از طریق سایر سایت ها مسدود شود. نقطه ضعف این مدل زمانی است که شما یک ویژگی برنامه جدید را معرفی می کنید در این صورت تعمیر و نگهداری اضافی نیاز است.
- مدل ترکیبی: همانطور که از نام آن پیداست، از هر دو مدل لیست سیاه و لیست سفید استفاده میکند.
WAF در مقابل فایروال شبکه
انتخاب بین فایروال شبکه و فایروال وب اپلیکیشن ممکن است گیج کننده به نظر برسد،
اما تفاوت های آشکاری بین این دو وجود دارد.
برنامه های فایروال شبکه برای کنترل دسترسی به منابع شبکه محلی استفاده میشوند؛ یعنی به عنوان دروازه بان بین شبکه محلی و اینترنت عمل میکنند. فایروال های شبکه قوانینی برای تعیین مجاز بودن یا نبودن بازدید از صفحات وب را دارند. مانند WAF، این راه حل های امنیتی میتوانند به صورت سخت افزاری یا نرم افزاری ارائه شوند.
همانطور که قبل تر گفتیم، WAF برای نظارت بر ترافیک ورودی/خروجی از یک برنامه وب طراحی شده است. ترافیک مشکوک به صورت جداگانه بررسی میشود و سپس بر اساس اینکه آیا این ترافیک مخرب است یا خیر فیلتر میشود. WAF ها اغلب در بین سازمان هایی که خدمات مبتنی بر اینترنت ارائه میدهند محبوب هستند.
خلاصه اموزش WAF چیست :
WAF برای کمک به محافظت از شبکه شما در برابر تهدیدات احتمالی که هنوز شناسایی نشده اند، طراحی شده است. اجرای این راه حل میتواند سازمان شما را از تهدید هایی مانند 0 day، آسیب پذیری های امنیتی، تزریق SQL، باگ XSS و… محافظت کند.