WAF (Web Application Firewall) คืออะไร?
WAF (Web Application Firewall) คือไฟร์วอลล์เฉพาะทางที่ออกแบบมาเพื่อปกป้องเว็บแอปพลิเคชัน โดยการตรวจสอบ กรอง และบล็อกการจราจร HTTP/HTTPS ที่เป็นอันตราย ก่อนที่จะถึงเซิร์ฟเวอร์เว็บ
WAF ทำงานอย่างไร?
WAF ทำงานเป็น Reverse Proxy อยู่หน้าเว็บแอปพลิเคชัน จับคู่รูปแบบการโจมตีที่รู้จัก (Signatures) และกฎที่กำหนด (Rules/Policies) เพื่อ:
- ตรวจสอบ Request ทุกครั้งที่เข้ามา
- เปรียบเทียบกับฐานข้อมูล Signature และกฎที่กำหนด
- ตัดสินใจ: Allow / Block / Log / Challenge (CAPTCHA)
- ส่งต่อ Request ที่ปลอดภัยไปยัง Backend Server
การโจมตีที่ WAF ป้องกันได้ (OWASP Top 10)
| การโจมตี | คำอธิบาย |
| SQL Injection (SQLi) | ฉีดคำสั่ง SQL ผ่าน Input field |
| Cross-Site Scripting (XSS) | ฉีดสคริปต์ร้ายให้รันบนเบราว์เซอร์เหยื่อ |
| Cross-Site Request Forgery (CSRF) | ลักลอบทำให้ผู้ใช้กระทำการไม่ตั้งใจ |
| File Inclusion (LFI/RFI) | บังคับให้เซิร์ฟเวอร์ include ไฟล์ร้าย |
| Remote Code Execution (RCE) | รันคำสั่งบนเซิร์ฟเวอร์จากระยะไกล |
| Directory Traversal | เข้าถึงไฟล์นอก Web Root |
| Cookie Poisoning | แก้ไข Cookie เพื่อขยับสิทธิ์ |
| Bot/Scraper Attacks | บอทดึงข้อมูลหรือทำ Credential Stuffing |
ประเภทของ WAF
| ประเภท | ตัวอย่าง | ข้อดี | ข้อเสีย |
| Network-based (Appliance) | F5 ASM, Imperva, FortiWeb | ประสิทธิภาพสูง, Low latency | ราคาสูง, ต้องมีฮาร์ดแวร์ |
| Host-based (Agent/Module) | ModSecurity, NAXSI | ติดตั้งบนเซิร์ฟเวอร์โดยตรง, ฟรี/โอเพนซอร์ส | ใช้ทรัพยากรเซิร์ฟเวอร์, ยากต่อการจัดการรวม |
| Cloud-based (SaaS) | Cloudflare WAF, AWS WAF, Azure WAF, Akamai | ตั้งค่าเร็ว, สเกลอัตโนมัติ, ไม่ต้องดูแลฮาร์ดแวร์ | ขึ้นอยู่กับ ISP/Cloud, Latency เพิ่มเล็กน้อย |
ทำไม WAF จึงสำคัญ?
- ป้องกันการโจมตีระดับแอปพลิเคชัน (Layer 7) ที่ Firewall แบบดั้งเดิม (Layer 3/4) จับไม่ได้
- ช่วยปฏิบัติตามมาตรฐาน PCI DSS Requirement 6.6 (สำหรับเว็บไซต์รับชำระเงินบัตรเครดิต)
- ลดความเสี่ยง Data Breach และการหยุดทำงาน (Downtime)
- ให้ Visibility ต่อการจราจรเว็บผ่าน Logging และ Analytics
- ป้องกัน Zero-day ด้วย Behavioral Analysis และ Machine Learning (ในรุ่นใหม่)
AWS WAF - ตัวอย่าง Cloud WAF
- สร้าง Web ACL (Access Control List)
- ผูกกับ CloudFront, ALB, API Gateway, AppSync
- ใช้ Managed Rules (AWS Managed, OWASP Core Rule Set)
- สร้าง Custom Rules ด้วย IP Reputation, Geo-blocking, Rate-based rules
- ดู Metrics ใน CloudWatch
WAF vs Firewall แบบดั้งเดิม
| คุณสมบัติ | Traditional Firewall | WAF |
| OSI Layer | Layer 3/4 (Network/Transport) | Layer 7 (Application) |
| เข้าใจ HTTP/HTTPS | ไม่เข้าใจโครงสร้าง | เข้าใจเต็มที่ (Header, Body, Cookie, Parameter) |
| ป้องกัน SQLi, XSS | ไม่ได้ | ได้ |
| SSL/TLS Inspection | จำกัด | ได้ (Terminate SSL) |
สรุป: ควรใช้ WAF เมื่อไหร่?
- มีเว็บแอปพลิเคชันสาธารณะ (Public-facing web apps)
- รับข้อมูล敏感 (PII, Credit Card, Health Data)
- ต้องการปฏิบัติตาม PCI DSS, GDPR, PDPA
- เคยถูกโจมตีหรือพบช่องโหว่ใน Web App
- ใช้ API Gateway ที่ต้องการป้องกัน