فایروال WAF چیست و چه وظایفی بر عهده دارد؟
فایروال وب اپلیکیشن یا Web Application Firewall که به اختصار به آن WAF گفته می شود، به طور خاص برای نظارت بر ترافیک های HTTP بین فضای اینترنت و اپلیکیشن تحت وب طراحی شده تا مانع از حملاتی مانند Cross Site Scripting (XSS)، SQL Injection و غیره گردد.
به عبارتی یک WAF نوعی فایروال است که با هدف تامین امنیت وب اپلیکیشن ها طراحی شده و بارزترین ویژگی آن این است که در سطح شبکه و پروتکل عمل نمی کند، بلکه به طور مداوم ترافیک های HTTP را مورد بررسی قرار داده تا ترافیک های مخرب را شناسایی و مسدود کند و به این ترتیب وب اپلیکیشن ها را از حملات تحت وب، ایمن می سازد.
دستگاه WAF را فایروال لایه 7 نیز می توان در نظر گرفت. در مدل OSI، لایه 7 نزدیک ترین لایه به کاربر نهایی است؛ به عبارت دیگر لایه application و کاربر به طور مستقیم و از طریق وب اپلیکیشن در تعامل هستند.
امروزه اکثر سازمان ها با هدف تسهیل روند مربوط به امور مشتریان، دارای اپلیکیشن مخصوص به خود هستند. همه کلاینت ها و کاربران به سادگی به اطلاعات مهمِ تعبیه شده در این اپلیکیشن ها دسترسی خواهند داشت. اینجاست که تامین امنیت این لایه و وجود یک فایروال قدرتمند مانند WAF در این نقطه محسوس می گردد.
از طرفی webmasterها از WAF در کنار فایروال های معمولی استفاده می کنند و دو فایروال را به عنوان آنالیزی بر ارتباط بین کلاینت و سرورِ وب در یک توالی فرض می کنند. علاوه بر پکت های HTTPS و HTML از WAF برای آنالیز داده های XML، PRC و SOAP نیز استفاده می کنند.
یک فایروال WAF می تواند به صورت نرم افزاری باشد و یا به صورت سخت افزاری.
عملکرد یک WAF چگونه است؟
فایروال های WAF با فیلتر کردن، نظارت و مسدودسازی تمامی ترافیک های مخرب مبتنی بر HTTP/S و ممانعت از دسترسی های غیر مجاز به داده های موجود در اپلیکیشن های تحت وب، اقدامات محافظتی خود را انجام می دهد.
فایروال های WAF را می توان بخشی از پلتفرم امنیتی جامع و گسترده ای دانست که از اپلیکیشن های تحت وب در برابر حملاتی مانند cross-site forgery و SQL injection محافظت می کند. در حقیقت WAF، یک سد دفاعی بین وب اپلیکیشن و دنیای اینترنت ایجاد می کند. بنابراین کلاینت هایی که قصد دسترسی به وب اپلیکیشن دارند، می بایست ابتدا از فایروال مربوطه یا همان WAF عبور کنند.
فایروال WAF در فرایند تجزیه و تحلیل داده ها از یک سری ruleهای تعریف شده تحت عنوان پالیسی استفاده می کند. این پالیسی ها مرتبا در حال به روزرسانی هستند تا بتوانند حملات مختلف سایبری را تشخیص دهند. اساسا فایروال های WAF بر مبنای لیست سفید و لیست سیاه عمل می کنند.
سیستم Blacklist WAFها مبتنی بر یک مدل امنیتی منفی هستند و در برابر حملات شناخته شده، محافظت می کنند. فایروال WAF این حملات را شناسایی و مسدود می کند.
از سوی دیگر whitelist WAFها بر اساس مدل امنیتی مثبت هستند. آن ها تنها ترافیکی که از قبل مجاز دانسته شده را عبور می دهند.
در عمل، اکثر WAFها از ترکیبی از لیست سیاه و لیست سفید برای بهینه سازی عملکردهای امنیتی استفاده می کنند.
فایروال های WAF با کدام تهدیدات مقابله می کنند؟
اصولا یک WAF قادر به مقابله با حملات زیر می باشد:
1- حملات Cross-Site request forgery
این دسته از حملات سایبری، کلیه ی وب سایت ها و وب اپلیکیشن هایی که نیاز به لاگین شدن توسط کاربر دارند را تحت تاثیر قرار می دهند. از طرفی موجب می شود مرورگر کاربر، درخواست های HTTP
را به وب سایت ها ارسال کند تا اقدامات نامناسبی صورت گیرد.
2- Cross-site scripting (XSS)
در اکثر موارد، cross site scripting را باید یک حمله ی مبتنی بر code injection در نظر گرفت. هکرها به هنگام لود شدن یک صفحه ی وب، اقدام به اعمال کدهای مخرب می کنند. در این صورت سایت ها و اپلیکیشن های تعاملی، بیش از همه در معرض خطر قرار می گیرند.
3- SQL injection
در حملات SQL injection، مهاجمان سایبری در SQL query ها برای انتقال اطلاعات مخرب استفاده می کنند.
4- OWASP Top 10
موسسه غیر انتفاعی OWASP، لیستی از ده مورد آسیب پذیر از وب اپلیکیشن ها را لیست کرده که به جز دو مورد فوق، شامل موارد ذیل می گردد:
· Broken authentication
· Sensitive data exposure
· XML external entities (XXE)
· Broken access control
· Security misconfiguration
· Insecure deserialization
· Using components with known vulnerabilities
· Insufficient logging & monitoring
مزایای استفاده از WAF
سازمان ها با به کارگیری WAF از مزایایی برخوردار می شوند که در اینجا به برخی از آن ها اشاره خواهیم کرد:
· امنیت بالاتر
یک فایروال WAF وقتی در کنار سایر اقدامات امنیتی قرار می گیرد، قادر به تامین سطح بالاتری از امنیت شده و دسترسی های غیر مجاز را مسدود می کند.
· تامین امنیت اپلیکیشن های متعدد
یک WAF را می توان به طور همزمان برای چندین وب اپلیکیشن به کار برد به این ترتیب با کل آسیب پذیری های موجود مقابله می شود.
· محافظت از اپلیکیشن ها و سیستم های قدیمی
به طور کلی آسیب پذیری های امنیتی در نرم افزارهای قدیمی بیشتر دیده می شوند که خوشبختانه یک WAF می تواند امنیت آن ها را نیز تامین کند.
انواع WAF
1- Application WAF
به طور معمول، تجهیزات WAF مستقیما پشت یک فایروال شبکه و یا در مقابل سرورهای وب قرار می گیرند و اقدام به تجزیه و تحلیل کل ترافیکی می کنند که از آن ها در حال عبور است. بنابراین می توان گفت این نوع فایروال از رویکردهای متمرکز استفاده می کند. در این نوع WAF، یک المان واحد می تواند از تعدادی وب اپلیکیشن محافظت کند.
2- Host-based WAF
این نوع فایروال مستقیما بر روی سرورهای وب نصب می شوند و می توان آن ها را توسط یک کنسول واحد، مدیریت نمود.
3- Cloud SaaS WAF
این راهکارها در فضای ابری، میزبانی می شوند و به طور کلی مسئولیت کمتری برای سازمان ایجاد می کنند، چون عموما توسط ارائه دهندگان، مدیریت می شوند.
فایروال های WAF در برابر کدام تهدیدات، قادر به محافظت نیستند؟
با اینکه امنیت ارائه شده از سوی فایروال هایWAF، کاملا گسترده و جامع بوده، اما باز هم نمی تواند امنیتی همه جانبه ایجاد کند.
· آسیب پذیری هایی وجود دارند که یک WAF نمی تواند بر روی آن ها تاثیر گذار باشد. در نتیجه، توصیه می شود سازمان ها اقدامات لازم و مناسب را اتخاذ کنند.
· هکرها به خوبی راه های دور زدن فایروال های WAF را می شناسند مانندHTTP request smuggling . طبیعتا در چنین شرایطی، اقدامات بیشتری برای تامین امنیت کامل مورد نیاز می باشد.
· مدیریت filter setting به مهارت بالایی نیاز دارد، در غیر این صورت، WAF به اندازه کافی موثر نخواهد بود.
· بسیاری از WAF ها قادر به پشتیبانی از جاوا اسکریپت یا موارد مشابه نیستند.
· گاهی وجود یک WAF باعث می شود مدیران شبکه نسبت به شناسایی تهدیدات، هوشیاری کمتری داشته باشند. بنابراین با بروز موارد مشکوک، با فرض اینکه WAF، اقدامات لازم را انجام می دهد، مدیران شبکه اقدام خاصی انجام نمی دهند و در نهایت منجر به بروز آسیب پذیری در اپلیکیشن ها می شود.
وجود WAF برای کدام سازمان ها ضروری است؟
استفاده از فایروال های WAF برای سازمان هایی که سیستم پرداخت آنلاین دارند، یک ضرورت است. علاوه بر این، بسیاری از سازمان ها به تراکنش های فوری وابسته هستند، برای این دسته از سازمان ها نیز، وجود یک WAF لازم و ضروری است.
ملاحظات استفاده از WAF
یک فایروال وب اپلیکیشن تنها زمانی عملکرد خوبی دارد که از فیلترها و پیکربندی های مناسبی برخوردار باشد و با کوچک ترین خطا و یا عامل محدودکننده، باید انتظار بروز مشکلاتی را داشته باشیم. دقیقا به همین دلیل است که مدیریت WAF به متخصص و کارشناس مربوطه نیاز دارد. بنابراین سازمان هایی که نتوانند به صورت درون سازمانی از فایروال خود پشتیبانی کنند، توصیه می شود راهکار مدیریت خارجی SaaS را انتخاب کنند.
نکات تکمیلی در مورد WAF
یک فایروال وب اپلیکیشن را باید فاکتوری مهم در ایجاد امنیت جامع و گسترده برای وب سایت سازمان ها دانست؛ اما همواره باید اقدامات امنیتی دیگری، آن را همراهی کند. با توجه به اینکه پیکربندی مناسب برای داشتن یک WAF استاندارد، ضروری است، تعمیرات-نگهداری آن، مستلزم همراهی متخصصان مربوطه می باشد.