WAF (Web Application Firewall): ধারণা, কার্যকারিতা, প্রকার ও বাস্তবায়ন গাইড
WAF (Web Application Firewall) হলো একটি বিশেষাইজড সিকিউরিটি সমাধান যা ওয়েব অ্যাপ্লিকেশন (HTTP/HTTPS ট্রাফিক) কে লেয়ার ৭ (Application Layer)-এ সুরক্ষা প্রদান করে। এটি hagy ফায়ারওয়াল (Layer 3/4) বা IPS-এর থেকে আলাদা, কারণ এটি HTTP প্রোটোকল, অ্যাপ্লিকেশন লজিক এবং ইউজার ইনপুট বুঝতে পারে।
WAF কীভাবে কাজ করে? (How WAF Works)
- ট্রাফিক ইন্টারসেপশন: WAF ক্লায়েন্ট এবং ওয়েব সার্ভারের মাঝপথে বসে (Reverse Proxy / Transparent Bridge / Out-of-band via SPAN) সব HTTP/HTTPS রিকোয়েস্ট/রেসপন্স ইন্টারসেপ্ট করে।
- পার্সিং ও নরমালাইজেশন: URL, হেডার, কুকি, বডি (JSON, XML, Form Data), মাল্টিপার্ট ফরম — পার্স করে ডিকোড/নরমালাইজ করে (URL ডিকোড, HTML এন্টিটি ডিকোড, বেস৬৪ ডিকোড)।
- রুল ইঞ্জিন ইভ্যালুয়েশন: প্রতিটি রিকোয়েস্টকে রুল সেটের সাথে মিলিয়ে দেখা হয়:
- নেগেটিভ সিকিউরিটি মডেল (Blocklist): পরিচিত আটাক সিগনেচার (OWASP CRS, Vendor Rules) ম্যাচ করলে ব্লক।
- পজিটিভ সিকিউরিটি মডেল (Allowlist): শুধু আনুমোদিত প্যাটার্ন (Regex, Schema Validation) আলো করা — আরও সুরক্ষিত কিন্তু মেইনটেনেন্স বেশি।
- বিহেভিয়োরাল / ML-ভিত্তিক: বেসলাইন ট্রাফিক প্যাটার্ন থেকে অ্যানোমালি ডিটেক্ট (বট, ক্রিডেনশিয়াল স্টাফিং, স্ক্র্যাপিং)।
- অ্যাকশন এক্সিকিউশন: Block, Alert, Challenge (CAPTCHA/JS Challenge), Rate Limit, Redact (সেনসিটিভ ডেটা মাস্ক), Virtual Patch (CVE-স্পেসিফিক রুল)۔
- লগিং ও রিপোর্টিং: আটাক লগ, কনফিডেন্স স্কোর, ATT&CK ট্যাগিং, SIEM ইন্টিগ্রেশন (CEF, JSON, Syslog)।
WAF কী কী আটাক রোধ করে? (OWASP Top 10 Coverage)
| OWASP Top 10 (2021) | WAF প্রোটেকশন |
| A01: Broken Access Control | Forceful Browsing, IDOR ডিটেকশন (সিমিত — অ্যাপ কনটেক্সট দরকার) |
| A02: Cryptographic Failures | Sensitive ডেটা এক্সপোজার (ক্রেডিট কার্ড, SSN) রেসপন্স বডিতে ডিটেক্ট → Redact/Block |
| A03: Injection (SQLi, NoSQLi, LDAPi, Command Injection) | কোর স্ট্রেঙ্গথ — সিগনেচার + সেমান্টিক অ্যানালাইসিস দিয়ে ব্লক |
| A04: Insecure Design | বিজনেস লজিক ফ্ল — WAF-এ কভার করা কঠিন (Threat Modeling দরকার) |
| A05: Security Misconfiguration | Error messages, Debug endpoints, Default creds এক্সপোজার ব্লক |
| A06: Vulnerable Components | CVE-স্পেসিফিক ভার্চুয়াল প্যাচিং (Log4Shell, Spring4Shell) |
| A07: Identification & Authentication Failures | Brute Force, Credential Stuffing → Rate Limit, CAPTCHA, Bot Management |
| A08: Software & Data Integrity Failures | CI/CD পাইপলাইন ইন্টিগ্রেশন, Subresource Integrity (SRI) এনফোর্স |
| A09: Security Logging & Monitoring Failures | WAF লগ → SIEM → অ্যালার্টিং (WAF নিজে লগিং করে) |
| A10: Server-Side Request Forgery (SSRF) | আউটবাউন্ড URL ফেচিং প্যাটার্ন, মেটাডেটা সার্ভিস IP (169.254.169.254) ব্লক |
WAF টপোলজি / ডিপ্লয়মেন্ট মোড
| মোড | বিবরণ | ফায়দা | বাধা |
| Reverse Proxy (Inline) |
DNS A 레코र्ड WAF IP-কে পয়েন্ট করে → WAF → Origin Server
ফুল ইনসপেকশন, SSL টার্মিনেশন, ক্যাশিং, DDoS প্রোটেকশন
লেটেন্সি, সিঙ্গেল পয়েন্ট অফ ফেইলচার (HA দরকার)
| Transparent Bridge (Layer 2) |
WAF ব্রিজ মোডে — IP না পরিবর্তন করে ট্রাফিক ইনসপেক্ট
নো DNS চেঞ্জ, নো লেটেন্সি (প্রায়), নেটওয়ার্ক আর্কিটেকচার অপরিবর্তিত
SSL ডিক্রিপশন জটিল, HA জটিল
| Out-of-Band / SPAN / TAP |
মিররড ট্রাফিক বিশ্লেষণ — ব্লক করতে পারে না (Detection Only)
জিরো ইমপ্যাক্ট, সহজ ডিপ্লয়
রিয়েল-টাইম ব্লকিং নেই, এনক্রিপ্টেড ট্রাফিক দেখতে পায় না (কী না থাকলে)
| Cloud WAF / SaaS WAF |
ভেন্ডর ক্লাউডে (CDN Edge-এ) — DNS চেঞ্জ করে ট্রাফিক রুট
গ্লোবাল এজ, অটো স্কেল, থ্রেট ইন্টেল শেয়ার্ড, নো মেইনটেনেন্স
ডেটা সোভেরেনিটি, লেটেন্সি (Edge-এ মিনিমাইজ), কাস্টমাইজেশন লিমিট
WAF vs ট্রেডিশনাল ফায়ারওয়াল vs IPS
| ফিচার | ট্রেডিশনাল ফায়ারওয়াল (L3/L4) | IPS (Network-based) | WAF (L7) |
| প্রোটোকল বোঝাপড়া | IP, TCP, UDP, ICMP | TCP/UDP পেইলোড (স্ট্রিম-ভিত্তিক) | HTTP/HTTPS, REST, GraphQL, gRPC, WebSocket |
| SSL/TLS ইনসপেকশন | সীমিত (SNI ভিত্তিক) | কঠিন, পারফরম্যান্স ইস্যু | নেটিভ SSL টার্মিনেশন, ডিক্রিপশন, রি-এনক্রিপশন |
| অ্যাপ্লিকেশন লজিক | না | সীমিত | হ্যাঁ (Session, CSRF, Business Logic) |
| OWASP Top 10 কভারেজ | ন्यূনতম | আংশিক (SQLi, XSS সিগনেচার) | সম্পূর্ণ (রুল সেট + ML) |
| ফালস পজিটিভ রিস্ক | কম | মাঝারি | উচ্চ (টিউনিং দরকার) |
WAF বেছে নেওয়ার সময় বিবেচ্য ফ্যাক্টর
- ডিপ্লয়মেন্ট মোড: অন-প্রেম, ক্লাউড (SaaS), হাইব্রিড, কুবেরনেটিস Ingress Controller (NGINX WAF, ModSecurity, Coraza)।
- পরফরম্যান্স: Throughput (Gbps), Latency (ms), Concurrent Connections, SSL TPS।
- রুল সেট: OWASP Core Rule Set (CRS) বেসলাইন, ভেন্ডর স্পেসিফিক রুল, কাস্টম রুল লেখার সহজতা (ModSecurity SecLang, Lua, WASM)।
- বট ম্যানেজমেন্ট / API সিকিউরিটি: বট ডিটেকশন (fingerprint, behavioral), API Schema Validation (OpenAPI/Swagger), GraphQL Depth Limiting।
- ইন্টিগ্রেশন: SIEM (Splunk, Sentinel, Elastic), SOAR, CI/CD (GitLab, Jenkins, ArgoCD), DevSecOps পাইপলাইন।
- কমপ্লায়েন্স: PCI-DSS Requirement 6.6 (WAF বা কোড রিভিউ), SOC 2, HIPAA, GDPR।
প্রমুখ WAF ভেন্ডর (২০২৪)
- Cloud/SaaS WAF: Cloudflare WAF, AWS WAF, Azure Front Door WAF, Google Cloud Armor, Akamai App & API Protector, Fastly Next-Gen WAF, Imperva Cloud WAF, F5 Distributed Cloud WAF
- On-Prem / Virtual Appliance: F5 BIG-IP ASM (Advanced WAF), FortiWeb, Imperva SecureSphere, Barracuda WAF, Citrix ADC (AppFirewall), Radware AppWall
- Open Source / Self-Hosted: ModSecurity (OWASP CRS), Coraza (ModSecurity-compatible, Go), NGINX App Protect (WAF module), Kong Gateway (Plugin), Traefik (Middleware), Envoy (ExtAuthz + WAF filter)
WAF বাস্তবায়নের সেরা অভ্যাস
- লার্নিং মোড (Learning Mode) → টিউনিং → ব্লকিং মোড: ২-৪ সপ্তাহ লগ কালেক্ট করুন, ফালস পজিটিভ আইডেন্টিফাই করুন, এক্সেপশন রুল লিখুন, তারপর ব্লকিং অন করুন।
- OWASP CRS 3.x / 4.x বেসলাইন ব্যবহার করুন: Paranoia Level 1 (Production) বা 2 (High Security) থেকে শুরু করুন।
- API-স্পেসিফিক রুল: OpenAPI Spec আপলোড করুন → স্বয়ংক্রিয় রুল জেনারেশন (Schema Validation, Parameter Constraints)।
- রেট লিমিটিং ও বট ম্যানেজমেন্ট: লগইন, রেজিস্ট্রেশন, পাসওয়ার্ড রিসেট এন্ডপয়েন্টে স্ট্রিক্ট রেট লিমিট + CAPTCHA/JS Challenge।
- ভার্চুয়াল প্যাচিং: CVE প্রকাশ হলে ২৪ ঘন্টার মধ্যে WAF রুল ডিপ্লয় করুন (Vendor Managed Rules বা Custom Rule)।
- মাল্টি-লেয়ার ডিফেন্স: WAF + Secure Coding (SAST/DAST/SCA) + Runtime Protection (RASP) + Network Segmentation।