WAF چیه و چطور کار میکنه؟
⭕WAF یا Web Application Firewall⭕
یه فایروال مخصوص لایه ۷ از مدل OSI هست که دقیقاً برای محافظت از اپلیکیشنهای تحت وب طراحی شده. برخلاف فایروالهای معمولی که روی ترافیک شبکه یا لایههای پایینتر تمرکز دارن، WAF مستقیماً با پروتکلهای HTTP و HTTPS تخصصی کارمیکنه داره.
هدف اصلی WAF اینه که جلوی حملات تحت وب مثل SQL Injection، Cross-Site Scripting (XSS)، File Inclusion، و کلی تهدید دیگه رو بگیره.
WAF دقیقاً چه کاری میکنه؟
وقتی ترافیک وب از سمت کاربر (کلاینت) به سمت وبسایت ما ارسال میشه، WAF وارد عمل میشه
تمام requestها و responseها رو بررسی میکنه
مقدار تمام inputهایی که کاربر فرستاده رو تحلیل میکنه
دنبال الگوهای مخرب، کدهای مشکوک، و رفتارهای غیرعادی میگرده
اگه چیزی مشکوک باشه، اون درخواست رو بلاک میکنه یا هشدار میده
برای اینکه بتونه این کار رو انجام بده، WAF باید ترافیک رو بخونه و تحلیل کنه. اما چطور این امکان رو پیدا میکنه؟ اینجاست که بحث پروکسیها مطرح میشه.
پروکسی و نقش اون در WAF
WAF
معمولاً خودش رو جای وبسرور جا میزنه. یعنی وقتی کاربر از بیرون میخواد به سایت ما وصل بشه، در واقع اول به WAF وصل میشه
چرا؟ چون WAF به صورت یه Reverse Proxy وسط قرار میگیره.
پروکسی چیه؟
پروکسی یه واسطهست که بین کلاینت و سرور قرار میگیره و ترافیک رو دریافت، تحلیل و بعداً ارسال میکنه. این وسط، پروکسی ترافیک رو:
Decapsulate (بازش میکنه و میخونه)
بعد از پردازش، دوباره Encapsulate میکنه (بستهبندیش میکنه و میفرسته جلو)
دو حالت کلی برای استفاده از پروکسی داریم:
1. Reverse Proxy (پروکسی معکوس):
برای وقتی که یه کلاینت از بیرون شبکه میخواد به سایت ما دسترسی داشته باشه.
در این حالت:
ادرس IP پابلیک ما روی WAF تنظیم شده
کلاینت فکر میکنه داره به سرور ما وصل میشه، ولی در واقع WAF درخواست رو میگیره ‼
بعد از بررسی، WAF خودش درخواست رو به سرور داخلی میفرسته، با IP خودش به عنوان مبدا
یعنی لایه ۳ و ۴ تغییر میکنه، در نتیجه این روتینگ نیست، پروکسیه
2. Forward Proxy (پروکسی مستقیم):
برای وقتی که کاربر داخل شبکه ما میخواد به یه سایت بیرونی وصل بشه.
اینجا WAF یا یه پراکسی دیگه میاد بین کاربر و اینترنت قرار میگیره
میتونه ترافیک خروجی رو هم بررسی و محدود کنه
چرا WAF ترافیک رو میتونه بخونه؟
به خاطر اینکه در این سناریو، WAF پایان ارتباط TLS هست SSL Termination یعنی
گواهی SSL روی WAF نصب شده
ترافیک HTTPS به WAF میرسه و اون میتونه دیکریپتش کنه
بعد از تحلیل، دوباره به صورت رمزنگاریشده یا غیررمزنگاریشده به سرور فرستاده میشه
قابلیتهای مهم WAF:
جلوگیری از حملات OWASP Top 10
بررسی دقیق Request/Response
فیلتر بر اساس IP، Geo، User-Agent و ...
قابلیت Rate Limiting و جلوگیری از Brute Force
گزارشگیری و لاگبرداری از ترافیک مشکوک
بعضیهاش حتی قابلیت Bot Management دارن
انواع WAF:
Cloud-based WAF
مثل Cloudflare, AWS WAF، نیاز به نصب نداره، مقیاسپذیر و راحت
Host-based WAF
نصب روی همون سروری که اپلیکیشن هست (مثل ModSecurity روی Apache/NGINX)
Network-based WAF
به صورت فیزیکی یا مجازی روی شبکه قرار میگیره و ترافیک رو مستقیم بررسی میکنه
https://t.me/ViperNull
Post #146
614