𝗪𝗔𝗙 𝗥𝘂𝗹𝗲𝘀 𝗮𝗻𝗱 𝗘𝘃𝗮𝘀𝗶𝗼𝗻
یک دیوار آتش اپلیکیشن وب (WAF) مانند یک نگهبان دیجیتال برای وبسایت شما عمل میکند. این ابزار ترافیک HTTP را بازرسی میکند تا مهاجمان را پیش از رسیدن به اپلیکیشن شما متوقف کند.
فایروالهای سنتی از شبکه شما محافظت میکنند، اما یک WAF از اپلیکیشنهای وب خاص شما محافظت میکند. این ابزار درخواستها و پاسخها را بررسی میکند تا تهدیداتی مانند SQL Injection و Cross-Site Scripting (XSS) را شناسایی کند.
نحوه عملکرد WAFها:
- تشخیص مبتنی بر امضا (Signature-Based Detection): به دنبال الگوهای شناختهشده از کدهای مخرب میگردد.
- تشخیص مبتنی بر ناهنجاری (Anomaly-Based Detection): رفتارهای غیرعادی، مانند افزایش ناگهانی درخواستها را علامتگذاری میکند.
- تشخیص مبتنی بر اعتبار (Reputation-Based Detection): ترافیک از آدرسهای IP مخرب شناختهشده را مسدود میکند.
- تحلیل رفتاری (Behavioral Analysis): نشستهای (sessions) کاربر را برای یافتن نیتهای مخرب در طول زمان مطالعه میکند.
WAFها همچنین قابلیتهای زیر را ارائه میدهند:
- وصلهگذاری مجازی (Virtual Patching): تا زمانی که مشغول کار بر روی یک اصلاح دائمی هستید، بهرهبرداری از آسیبپذیریها را مسدود میکند.
- محدودسازی نرخ (Rate Limiting): با محدود کردن تعداد درخواستها از یک IP واحد، از حملات brute-force جلوگیری میکند.
- مسدودسازی بر اساس موقعیت جغرافیایی (Geo-IP Blocking): ترافیک از مناطق جغرافیایی خاص را متوقف میکند.
مهاجمان از روشهای دور زدن (evasion) برای عبور از این نگهبانها استفاده میکنند. شما باید با این تاکتیکها آشنا باشید:
- کدگذاری و مبهمسازی (Encoding and Obfuscation): مهاجمان با استفاده از کدگذاریهای URL، HTML، Base64 یا Hex، محمولههای مخرب (payloads) خود را پنهان میکنند. این کار باعث میشود کد در نگاه قوانین ساده، عادی به نظر برسد.
- آلودگی پارامتر HTTP (HPP): آنها چندین پارامتر با نام یکسان ارسال میکنند. این کار باعث سردرگمی در نحوه خواندن دادهها توسط WAF و اپلیکیشن میشود.
- تکهتکه کردن (Fragmentation): آنها یک حمله واحد را به قطعات کوچک در بخشهای مختلف یک درخواست تقسیم میکنند.
- حساسیت به حروف کوچک و بزرگ (Case Sensitivity): آنها برای دور زدن فیلترهای ساده، حالت حروف کلمات کلیدی را تغییر میدهند، مانند uNiOn sElEcT.
- سوءاستفاده از منطق تجاری (Business Logic Exploitation): آنها از نحوه عملکرد اپلیکیشن خاص شما سوءاستفاده میکنند. ممکن است WAF یک درخواست را معتبر تشخیص دهد، اما آن درخواست همچنان یک تلاش برای سرقت باشد.
چگونه ایمن بمانیم:
- WAF خود را بهطور منظم بهروزرسانی کنید تا تهدیدات جدید را شناسایی کنید.
- لاگهای خود را برای یافتن الگوهای مشکوک بررسی کنید.
- قوانین خود را تنظیم (tune) کنید تا موارد مثبت کاذب (false positives) کاهش یابد.
- از امنیت لایهبندی شده استفاده کنید. WAF تنها بخشی از یک استراتژی دفاعی بزرگتر است.
یک WAF ابزاری حیاتی است، اما یک راهکار کامل نیست. برای پیشی گرفتن از مهاجمان، نظارت و تنظیم مداوم مورد نیاز است.
منبع: https://dev.to/godofgeeks/waf-web-application-firewall-rules-and-evasion-49p8