Tường lửa ứng dụng web (Web Application Firewall – WAF) là một giải pháp nhằm bảo vệ cho ứng dụng web tránh khỏi các lỗi bảo mật, các cuộc tấn công từ mã độc và tin tặc. Trong những năm gần đây, xu hướng tấn công vào ứng dụng web đang ngày càng trở nên phổ biến. Các kỹ thuật tấn công chủ yếu là: Cross-site scripting, SQL injection và nhiều các kỹ thuật khác… Tất cả các kỹ thuật này đều nhắm vào lớp ứng dụng trong mô hình OSI. Các lỗ hổng trong ứng dụng web chủ yếu xảy ra do người lập trình, cấu hình hệ thống và các lỗ hổng trong các nền tảng, thư viện. Để khắc phục các lỗi trên ứng dụng web, người lập trình cần hiểu và viết được các đoạn mã ở mức độ bảo mật nhất, tuy nhiên việc viết đoạn mã sao cho “bảo mật” nhất thường rất khó thực hiện, bởi các lẽ:
- Các đơn vị lập trình thường không có hoặc thiếu đội ngũ chuyên trách về việc kiểm tra và sửa lỗi bảo mật mã nguồn ứng dụng.
- Áp lực phải hoàn thành ứng dụng web trong thời gian nhanh khiến cho các ứng dụng web được đưa vào vận hành mà không qua các khâu kiểm thử.
- Việc dùng các công cụ kiểm tra lỗi web tự động đôi khi cũng không tìm ra hết các lỗi và đặc biệt là các lỗ hổng mới. Do vậy, việc bảo mật một ứng dụng web đó là một quá trình phòng thủ theo chiều sâu bao gồm các khâu phát triển, vận hành, xây dựng cơ sở hạ tầng bảo vệ tốt và có một đội ngủ chuyên trách vấn đề bảo mật riêng cho web.
Giải pháp tường lửa ứng dụng web – WAF
Tường lửa ứng dụng web (Web Application Firewall – WAF) là một giải pháp nhằm bảo vệ cho ứng dụng web tránh khỏi các lỗi bảo mật web nói trên. WAF là một thiết bị phần cứng hoặc phần mềm được cài lên máy chủ có chức năng theo dõi các thông tin được truyền qua giao thức http/https giữa trình duyệt của người dùng và máy chủ web tại lớp 7. Một WAF có khả năng thực thi các chính sách bảo mật dựa trên các dấu hiệu tấn công, các giao thức tiêu chuẩn và các lưu lượng truy cập ứng dụng web bất thường. Đây là điều mà các tường lửa mạng khác không làm được.
Mô hình của một hệ thống Tường lửa ứng dụng Web (WAF)
Kiến trúc tường lửa ứng dụng web
1. Vị trí WAF – Tường lửa ứng dụng Web
WAF có 02 hình thức triển khai, bao gồm dạng phần cứng và giải pháp cloudbased. Các hệ thống WAF cứng thường được đặt sau tường lửa mạng và trước máy chủ ứng dụng web. Việc đặt WAF được thực hiện sao cho tất cả các lưu lượng đến ứng dụng web cần qua WAF trước. Tuy nhiên, đôi khi cũng có ngoại lệ khi WAF chỉ được dùng để giám sát cổng đang mở trên máy chủ web. Ngoài ra, các chương trình WAF còn được cài đặt trực tiếp lên máy chủ web và thực hiện các chức năng tương tự như các thiết bị WAF là giám sát các lưu lượng đến và ra khỏi ứng dụng web.
Một ví dụ triển khai WAF trong máy chủ web Windows
2. Mô hình bảo mật của WAF
Một tường lửa ứng dụng web hoạt động dựa theo 2 mô hình bảo mật: Positive và Negative. Mô hình Positive chỉ cho phép các lưu lượng hợp lệ được định nghĩa sẳn đi qua và chặn tất cả các lưu lượng còn lại. Mô hình Negative sẽ cho phép tất cả các lưu lượng vượt qua và chỉ chặn các lưu lượng được mà WAF cho là nguy hại. Đôi khi cũng có các WAF cung cấp cả 2 mô hình trên, tuy nhiên thông thường WAF chỉ cung cấp 1 trong 2 mô hình. Với mô hình Postitive thì đòi hỏi nhiều cấu hình và tùy chỉnh. Còn mô hình Negative chủ yếu dựa vào khả năng học hỏi và phân tích hành vi của lưu lượng mạng.
3. Mô hình hoạt động
WAF có thể hoạt động ở các mô hình riêng biệt, dưới đây là một số mô hình tham khảo:
- Reverse Proxy: đây là chức năng được sử dụng phổ biến khi triển khai WAF. Trong mô hình này, WAF giám sát tất cả các lưu lượng đi đến ứng dụng web, sau đó thay vì cho các địa chỉ IP bên ngoài gửi yêu cầu trực tiếp đến máy chủ web thì WAF đứng ra làm trung gian để gửi các yêu cầu này đến máy chủ web thay cho trình duyệt gốc rồi gửi trả lại kết quả cho các địa chỉ IP kia. Mô hình này có nhược điểm là tạo ra độ trễ khi kết nối từ trình duyệt đến ứng dụng web.
- Transparent Proxy: Ở mô hình này, WAF đứng giữa tường lửa mạng và máy chủ web và hoạt động tương tự ở mô hình Reverse Proxy nhưng không đứng ra làm trung gian kết nối như bên Reverse Proxy. Mô hình này không đòi hỏi phải thay đổi điều gì trong hạ tầng mạng nhưng có thể không cung cấp được một số dịch vụ như mô hình Reverse Proxy có thể.
- Layer 2 Brigde: Ở mô hình này, WAF đứng giữa tường lủa mạng và máy chủ web, nhưng hoạt động giống như một thiết bị Switch ở lớp 2. Mô hình này giúp mạng hoạt động với hiệu năng cao và mạng thay đổi không đáng kể, tuy nhiên nó lại không thể cung cấp các dịch vụ cao cấp khác mà các mô hình WAF khác có thể.
- Host/Server Based: Đây là các phần mềm được cài trực tiếp lên máy chủ web. Các loại Host based không cung cấp các tính năng tương tự như các loại WAF network base. Tuy nhiên mô hình này có thể khắc phục được vài điểm yếu mà các mô hình network base (các thiết bị WAF cứng) có. Tuy nhiên nó cũng làm tăng mức độ tải của máy chủ web.
Các sản phẩm và giải pháp WAF phổ biến nhất hiện nay giành cho website
1. Các phiên bản WAF mã nguồn mở phổ biến:
- ModSecurity: Đây là phần mềm nguồn mở có thể hoạt động như một module trong máy chủ Apache hoặc là một thành phần độc lập. ModSecurity sử dụng biểu thức chính quy trong việc bảo vệ máy chủ web từ các cuộc tấn công được xác định trước dựa theo các dấu hiệu hoặc các cuộc tấn công bất thường khác. Bên cạnh đó, ModSecurity cũng có khả năng lọc các siêu ký tự do người dùng chèn vào ứng dụng web.
- URLScan: Đây là một sản phẩm của Microsoft dành riêng cho các máy chủ web IIS. URL scan không chỉ bảo vệ máy chủ IIS 6 khỏi các điểm yếu từ các phiên bản cũ hơn mà còn cung cấp thêm các biện pháp bảo vệ khác như lọc dữ liệu mã hóa trên URL hoặc lọc các siêu ký tự do người dùng chèn vào để chống lại các loại tấn công như XSS, SQL Injection…
- WebKnight: Đây cũng là 1 sản phẩm dành cho các máy chủ web IIS.
2. Ứng dụng CyStack WebShield
CyStack WebShield: Đây là một sản phẩm của Việt Nam do công ty an ninh mạng CyStack xây dựng và phát triển. Giải pháp cung cấp các tính năng giúp bạn bảo vệ website của mình dễ dàng. WebShield cung cấp các tính năng để bạn có thể bảo vệ website của mình tự động mà không cần cài đặt. Bạn chỉ cần cấu hình để website đi qua CyStack Network và CyStack Protecting sẽ làm nhiệm vụ ngăn chặn tấn công, mã độc vào website của bạn.
Ngoài ứng dụng Tường lửa WAF, CyStack WebShield là một nền tảng thống nhất với nhiều ứng dụng hữu ích giúp bạn vận hành website an toàn và ổn định hơn:
- Vulnerability Scanner: Tự động quét và phát hiện lỗ hổng bảo mật cho website.
- Website Monitoring: Giám sát 24/7 và cảnh báo sự cố, tình trạng gián đoạn cho website.
- Malware Removal: Tự động quét, phát hiện và làm sạch mã độc trên máy chủ website.
> Đăng ký dùng thử CyStack WebShield miễn phí 14 ngày tại đây. <