WAF چیست؟ + بررسی انواع و ویژگیهای آن
برای حفظ امنیت در حفظ دادهها و بررسی ترافیک ورودی به وب سایت یا اپلیکیشنها، لازم است بدانیم که WAF چیست و چطور میتواند به برقراری امنیت کمک کند.
فایروال وب اپلیکیشن یا همان WAF (مخفف Web Application Firewall) که گاه به آن فایروال لایه ۷ یا به طور ساده فایروال وب هم میگویند یک ابزار امنیتی برای مانیتور کردن، فیلتر کردن و مسدود کردن بستههای متعدد دادههای ورودی و خروجی، از یک وب اپلیکیشن یا وب سایت است. میتوان از بین انواع WAFهای مبتنی بر هاست، فضای ابری و یا شبکه، گزینه مناسبی را برای وب سایت یا برنامه وب انتخاب کرد. اگر به امنیت وب سایت یا برنامه خود اهمیت میدهید، در ادامه این مطلب از بلاگ بلاگ ابر زس با ما همراه شوید تا ببینیم WAF چیست و با ویژگیها، قابلیتها، نحوه عملکرد و اهمیت آن، آشنا شویم.
WAF یا Web Application Firewall چیست؟
قبل از آن که با ویژگیهای تخصصی فایروال وب اپلیکیشن یا WAF (مخفف Web Application Firewall) آشنا شویم، بیایید ببینیم که WAF چیست، چه کاری انجام میدهد و چه تفاوتی با فایروال دارد. فایروالهای معمول تمامی ترافیکی که از آنها عبور میکند را بررسی میکنند؛ با این حال قادر به شناسایی تمامی دیتا در لایه ۷ مدل شبکه OSI (لایه اپلیکیشن) نیستند. اما WAF برای شناسایی دیتاها در لایه ۷ و ایمن کردن وبسایتها و وبسرورها طراحی شده است و البته تنها میتواند ترافیکهای HTTP و HTTPS را شناسایی کند. WAF میتواند به صورت یک نرمافزار یا سرویس پیادهسازی شود یا با یک فایروال سختافزاری همراه باشد.
وظیفه اصلی WAF آن است که ترافیک HTTP (یا HTTPS) در جریان بین وب اپلیکیشن و اینترنت را مانیتور و فیلتر کرده و از برنامه وب محافظت کند. بهعبارتدیگر، WAF از وب اپلیکیشنها در برابر حملات جعلی بین سایت (cross-site forgery)، اسکریپت بین سایتی یا XSS (یا همان cross-site-scripting)، گنجاندن فایل، SQL injection و … محافظت خواهد کرد.
اگرچه فایروال وب اپلیکیشن قادر است تا محافظت گستردهای در برابر انواع حملات و آسیبهای احتمالی داشته باشد، اما ازآنجاییکه یک پروتکل لایه ۷ (در مدل OSI) است، نمیتوان از آن برای همه انواع حملات استفاده کرد. استقرار WAF در یک وب اپلیکیشن، بهعنوان یک لایه محافظ بین برنامه وب و اینترنت عمل میکند. میتوان عملکرد فایروال WAF را با سرور پروکسی مقایسه کرد. سرور پراکسی از یک واسطه برای محافظت از هویت کلاینتی استفاده میکند، درحالیکه WAF نوعی پروکسی معکوس است که با فیلتر کردن کلاینتها ازطریق فایروال وب اپلیکیشن قبل از رسیدن به سرور، از سرور محافظت میکند.
عملکرد WAF ازطریق مجموعهای از قوانین (Policies) کنترل میشود که هدف آن، محافظت در برابر آسیبپذیریهای برنامه ازطریق فیلتر کردن ترافیک مخرب است. WAF از این نظر ارزشمند است که سرعت و سادگی اعمال این قوانین در آن زیاد بوده و این مسئله باعث میشود تا پاسخدهی و واکنش به حملات مختلف، زمان کمتری لازم داشته باشد. به کمک قوانین و سیاستهای WAF، در طول یک حمله DDoS، میتوان محدودیتهای نرخ را بهسرعت اجرا کرد. حالا که میدانیم WAF چیست و چطور عمل میکند، بیایید بررسی کنیم که چرا تا این اندازه اهمیت دارد.
اهمیت برقراری امنیت با WAF
به نظر شما دلیل اهمیت WAF چیست و چرا باید از آن استفاده کرد؟ برقراری امنیت دادهها برای همه سازمانها و کسبوکارهایی که محصول یا خدماتی را در فضای آنلاین ارائه میدهند، بسیار زیاد است. توسعهدهندگان اپلیکیشنهای موبایل، ارائهدهندگان خدمات و سرویسها در رسانههای اجتماعی، سرویسهای مالی و بانکداری دیجیتال و… اهمیت امنیت دادهها را بیشتر درک میکنند. استفاده از فایروال وب اپلیکیشن میتواند به این کسبوکارها کمک کند تا دادهها و سوابق مشتری مانند اطلاعات پرداختها و… را امن کرده و از دسترسی غیرمجاز به آن جلوگیری کنند.
معمولاً روند کار بسیاری از سازمانها به این صورت است که دادههای حساس خود و مشتریانشان را در یک دیتابیس پشتیبان ذخیره میکنند که وب اپلیکیشنها به این دادهها دسترسی دارند. استفاده از اپلیکیشنهای موبایل و دستگاههای IoT برای تسهیل در روند انجام کارهای مختلف و تراکنشهای آنلاین در برنامه، توسط شرکتها و کسبوکارهای مختلف روزبهروز افزایش پیدا میکند. به همین دلیل است که هکرها و افراد سودجو به دنبال دسترسی به دادهها ازطریق این برنامهها هستند.
البته نباید فراموش کنید که هراندازه استفاده از WAF کاربردی و مهم باشد، هنوز هم بهتر است آن را در کنار سایر اقدامات امنیتی از جمله سیستمهای IDS یا تشخیص نفوذ (Intrusion Detection System) در کنار سیستمهای IPS یا پیشگیری از نفوذ (Intrusion Prevention System) و فایروالهای سنتی، استفاده کنید.
انواع فایروال وب اپلیکیشن یا WAF
بهطورکلی، روشهای مختلفی برای اجرا و استفاده از WAF در سیستم دادهها وجود دارد. بیایید ببینیم مهمترین روشهای اجرای WAF چیست.
WAF مبتنی بر شبکه (Network-Based)
این نوع از فایروالهای وب اپلیکیشن معمولاً به سختافزار نیاز داشته و بهصورت لوکال برای افزایش سرعت و به حداقل رساندن تأخیر، نصب میشوند. WAFهای Network Based گرانترین دسته از این فایروالها بوده و به امکانات سختافزاری و فیزیکی نیاز دارند.
WAF مبتنی بر هاست (Host-Based)
روشی که نسبت به WAF مبتنی بر شبکه ارزانتر است، استفاده از WAF های Host Based است. این نوع از فایروالهای وب اپلیکیشن را میتوان در نرمافزار یک برنامه اضافه کرد. همچنین این نوع WAF ویژگیهای بیشتری دارد که قابلیت تنظیم و شخصیسازی بیشتری به آن میدهد. البته باید به این نکته توجه کنید که این نوع از WAF از منابع سرور استفاده کرده، نصب و پیادهسازی آن سختتر بوده و هزینههای نگهداری آن در طولانیمدت بیشتر است. برای اجرای فایروال برنامه وب مبتنی بر هاست، به دستگاهی با سختافزار مناسب و برخی عملکردهای سفارشیسازی نیاز دارید که باعث میشود زمان و هزینه بیشتری برای آن صرف کنید.
WAF مبتنی بر فضای ابری (Cloud-Based)
اگر میخواهید بدانید که سادهترین و مقرونبهصرفهترین نوع اجرای WAF چیست بهتر است گزینههای مبتنی بر خدمات ابری را انتخاب کنید. این روش معمولاً نیازی به هزینههای اولیه بالا و اجرای سیستمهای سختافزار و نرمافزار اختصاصی و سفارشی نداشته و کاربران تنها کافی است هزینه اشتراکهای ماهانه یا سالانه خود را بپردازند. برخی از ارائهدهندگان سرور ابری در کنار منابع زیرساختی شامل رم، پردازنده، استوریج و پهنای باند شبکه، یک فایروال وب اپلیکیشن قابل شخصیسازی را نیز در اختیارتان قرار میدهند.
ویژگیها و قابلیتهای WAF
بیایید ببینیم که ویژگیها و قابلیتهای مهم WAF چیست که باعث شده تا این اندازه اهمیت پیدا کند. مهمترین ویژگیهای فایروال وب اپلیکیشن عبارت است از:
دیتابیسهای الگوی حملات یا Attack Signature
فایروالهای وب از دیتابیسهایی بهره میبرند که در آنها الگوی حملات رایج و شناخته شده، تعریف شده است. فایروال، با استفاده از الگوی حملات میتواند ترافیک مخرب ناشی از ارسال انواع درخواستهای جعلی، پاسخ غیرعادی سرور و آدرسهای IP مخرب را شناسایی کند.
آنالیز الگوی ترافیک مبتنی بر هوش مصنوعی
با استفاده از الگوریتمهای هوش مصنوعی، امکان آنالیز رفتاری الگوهای ترافیک برای شناسایی ناهنجاریهایی که نشاندهنده حمله هستند، فراهم میشود. این ویژگی، این امکان را فراهم میکند تا بتوانید حملاتی را که با الگوهای مخرب شناختهشده مطابقت نداشته و جدید هستند، شناسایی کنید.
پروفایل اپلیکیشن (Application Profiling)
در این ویژگی WAF، ساختار یک اپلیکیشن شامل درخواستهای معمولی، URLها، مقادیر و انواع دادههای مجاز، آنالیز میشود. این روند برای شناسایی و مسدود کردن درخواستهای مخرب توسط WAF مفید خواهد بود.
سفارشیسازی (Customization)
به کمک این ویژگی، اپراتورها اجازه تعریف کردن قوانین امنیتی اعمال شده برای ترافیک برنامه را خواهند داشت. این ویژگی همچنین به سازمانها کمک میکند تا بتوانند رفتار WAF را مطابق با نیازهای خود سفارشیسازی کرده و از مسدود شدن ترافیک واقعی و مجاز، جلوگیری کنند.
استفاده از اطلاعات ترکیبی
این ویژگی، ترکیبی از آنالیز ترافیک ورودی و استفاده از الگوهای حمله، پروفایل برنامه، آنالیز هوش مصنوعی و قوانین سفارشی و انحصاری ایجادشده است و تعیین میکند که آیا ترافیک موردنظر باید مسدود شود یا خیر.
پلتفرمهای حفاظتی DDoS
با این ویژگی، امکان ادغام یک پلتفرم مبتنی بر فضای ابری برای محافظت در برابر حملات DDoS فراهم میشود. چنانچه یک حمله DDoS توسط WAF شناسایی شود، میتوان ترافیک را به پلتفرم حفاظتشده DDoS منتقل کرد تا پهنای باند شبکه همچنان در دسترس باقی بماند. این پلتفرم قادر است تا حجم زیادی از حملات را مدیریت کند.
شبکههای تحویل محتوا (CDN)
از آنجایی که WAFها در لبه شبکه راهاندازی شده و عمل میکنند، در سرویس CDN نیز کاربرد دارد. این سرویس موجب میشود محتوای استاتیک وبسایتها در چندین پاپسایت در سطح جهان توزیع شود و سرعت دسترسی کاربران به محتوا افزایش یابد. به لطف ماهیت توزیع شده CDN، ترافیک مخرب که به سمت پاپسایتها ارسال میشود، توسط WAF شناسایی و دفع شده یا بین پاپسایتهای دیگر توزیع میشود تا وب سرویسها همواره در دسترس باقی بمانند.
نحوه عملکرد WAF
حالا که میدانیم WAF چیست و به چه منظور از آن استفاده میشود، بیایید با نحوه کار و عملکرد آن هم آشنا شویم. مهمترین مواردی که در HTTP توسط WAF آنالیز و بررسی میشود، شامل درخواستهای GET و POST به منظور جلوگیری از حملاتی از جمله HTTP Flood است. پیش از این در مقالهای دیگر تشریح کرده بودیم که حمله HTTP Flood چیست و چگونه با استفاده از راهکارهایی از جمله WAF میتوان با آن مقابله کرد. برای بررسی و فیلتر کردن هر نوع محتوای موجود توسط WAF، ممکن است یکی از سه رویکرد زیر دنبال شود:
قرار دادن در لیست سفید (Whitelisting)
در این روش، تنها درخواستهای مورد اعتماد که در لیست سفید قرار گرفتهاند اجازه عبور از WAF را دارند. به این منظور میتوان لیستی از آدرسهای IP قابلاعتماد و امن ایجاد کرد. از نقاط ضعف این رویکرد این است که احتمال دارد بهاشتباه و به طور ناخواسته، برخی ترافیکهای واقعی و مجاز هم مسدود شوند.
قرار دادن در لیست سیاه (Blacklisting)
در این روش، برای مسدود کردن ترافیک وب مخرب و محافظت از آسیبپذیری سایت یا وب اپلیکیشنها، از لیستهای از قوانینی که برای شناسایی بستههای مخرب تعیین شده، انجام میشود. این روش اغلب برای وبسایتها و وب اپلیکیشنهای عمومی که ترافیک قابلتوجهی از آدرسهای IP ناشناس دریافت میکنند، قابلاستفاده است. یکی از نقاط ضعف قابلتوجه در این روند، این است که به اطلاعات بیشتری برای فیلتر کردن بستههای مخرب بر اساس ویژگیهای خاص نیاز دارد.
امنیت ترکیبی (Hybrid Security)
سومین روش عملکرد WAF آن است که از یک مدل امنیتی ترکیبی که شامل هر دو رویکرد لیستهای سفید و سیاه به طور همزمان استفاده میشود.
صرفنظر از آن که بدانیم مدل امنیتی استفاده شده در روند کار WAF چیست و کدام روش را استفاده میکند، در هر رویکرد تعاملات HTTP آنالیز شده و فعالیتهای مخرب و غیرمجاز یا ترافیک غیرواقعی قبل از رسیدن به سرور کاهش پیدا کرده و یا حتی در بهترین حالت، حذف میشوند. معمولاً اکثر WAFها برای آن که بتوانند با انواع رویکردهای آسیبزننده مقابله کنند، نیاز دارند تا قوانین و خطمشی تعیین شده برای عملکرد خود را به طور مرتب بهروزرسانی کنند. برخی تغییرات و پیشرفتهایی که در حال حاضر در روند یادگیری ماشینی (Machine Learning) وجود دارد، باعث شده تا این قوانین به طور خودکار بهروزرسانی شوند.
جمعبندی
در این مطلب تشریح کردیم که WAF چیست و با جزئیات عملکرد آن آشنا شدیم. یکی از دلایل تمایز WAF با سایر فایروالها، آن است که برخلاف سایر آنها روی هکرهای وب در لایه ۷ مدل OSI (لایه اپلیکیشن) متمرکز است و کاری را انجام میدهد که ممکن است فایروالهای سنتی نتوانند آن را انجام دهند. به دلیل اهمیت و تأثیری که فایروال وب اپلیکیشن روی تأمین امنیت دادهها در وبسایت یا برنامههای وب دارد، مهم است که سازمانها و تیمهای آیتی آنها بدانند که WAF چیست و چطور کار میکند.
سرویس کلود گارد زَس قویترین سرویس حفاظت ابری است که از وبسایت و سرویسهای شما در مقابل انواع حملات سایبری محافظت میکند و فایروال و WAF با تنظیمات پیشرفته را در اختیارتان قرار میدهد.