0
0
Lập trình
Harry Tran
Harry Tran106580903228332612117

Hướng Dẫn Triển Khai Web Application Firewall (WAF) Trên Amazon Web Services (AWS) Đầy Đủ và Chi Tiết

Đăng vào 3 tuần trước

• 4 phút đọc

1. Giới thiệu về Web Application Firewall (WAF)

Web Application Firewall (WAF) là một dịch vụ vượt trội của Amazon Web Services (AWS) nhằm bảo vệ các ứng dụng web trước các cuộc tấn công mạng. WAF hoạt động bằng cách chặn các yêu cầu không mong muốn hoặc độc hại trước khi chúng có thể ảnh hưởng đến ứng dụng của bạn. WAF AWS có khả năng xác định và ngăn chặn nhiều loại cuộc tấn công phổ biến như DDoS, SQL Injection, Cross-site Scripting (XSS) và nhiều biện pháp phòng thủ khác. Dịch vụ này sử dụng các quy tắc bảo mật để kiểm tra và phân tích tất cả yêu cầu đến ứng dụng web của bạn.

Lợi ích nổi bật của WAF AWS:

  • Bảo vệ mạnh mẽ: Ngăn chặn các cuộc tấn công như DDoS, SQL Injection và XSS.
  • Quy tắc bảo mật linh hoạt: Cấu hình quy tắc theo nhu cầu riêng của doanh nghiệp, dễ dàng điều chỉnh.
  • Tích hợp với các dịch vụ AWS: Có khả năng tích hợp hoàn hảo với Amazon CloudFront, AWS Application Load Balancer, AWS Elastic Beanstalk, AWS API Gateway, tạo ra giải pháp bảo mật đồng bộ cho các ứng dụng web.
  • Giám sát và báo cáo: Cung cấp các tính năng theo dõi và báo cáo hiệu suất, giúp quản lý và đáp ứng kịp thời trước các cuộc tấn công.

Cách thức hoạt động của WAF:

  • Xác định quy tắc bảo mật: Người dùng có thể tạo và tùy chỉnh các quy tắc bảo mật theo môi trường.
  • Phân tích yêu cầu web: WAF sẽ tự động phân tích tất cả yêu cầu đến ứng dụng dựa theo quy tắc đã thiết lập.
  • Kiểm tra và chặn yêu cầu: Các yêu cầu không đáp ứng quy tắc bảo mật sẽ bị chặn, còn lại là chuyển tiếp vào hệ thống.
  • Báo cáo và giám sát: Cung cấp báo cáo chi tiết để theo dõi tình trạng hoạt động và bảo mật của ứng dụng.

2. Mô hình triển khai WAF cho môi trường Dev/Prod

Trong bài viết này, chúng ta sẽ triển khai WAF theo mô hình rõ ràng, có tổ chức để đáp ứng nhu cầu bảo mật cho cả môi trường phát triển (Dev) và sản xuất (Prod).

3. Hướng dẫn triển khai WAF

Để thực hiện triển khai WAF, chúng ta cần có ít nhất các quyền truy cập sau trong tài khoản AWS:

Copy
* AWSWAFConsoleFullAccess 
* AWSWAFFullAccess
* AmazonS3FullAccess
* CloudFrontFullAccess
* ElasticLoadBalancingFullAccess
* AmazonEC2ReadOnlyAccess
* AmazonVPCFullAccess
* AWSMarketplaceFullAccess

Khởi tạo WebACL cho môi trường Dev/Test gắn với Application Load Balancer (ALB)

  • Truy cập vào AWS Console, tìm kiếm dịch vụ WAF & Shield
  • Chọn Web ACL và nhấn Create web ACL
  • Tại phần resource type, chọn nguồn tài nguyên là CloudFront hoặc Regional resources như Application Load Balancers, Amazon API Gateway, v.v.
  • Tiến hành thêm nguồn tài nguyên cần gán.

Khởi tạo các quy tắc cho Web ACL vừa tạo

  • Chọn ACL đã tạo và nhấn Add ruleAdd managed rule groups
  • Chúng ta sử dụng Rule Amazon IP reputation list và Web Exploits OWASP Rules (của F5 managed rule groups)
  • Kích hoạt từng quy tắc và thiết lập hành động thành COUNT để theo dõi tác động, sau đó có thể chuyển từ COUNT sang BLOCK khi mọi vấn đề bảo mật đã được giải quyết.

Khởi tạo rule group

  • Truy cập vào WAF & Shield → Rule groups → Create rule group
  • Đặt tên cho rule group và theo dõi qua CloudWatch metric → Nhấn Next
  • Thêm các rule vào rule group (chúng ta sẽ thêm các rule liên quan đến Mitigate DDoS)

Trong trường hợp này, ta sẽ tạo quy tắc loạt cho giới hạn tỷ lệ và sẽ cấu hình để kiểm soát lượt truy cập.

Enable Logging và lưu trữ vào S3

Khởi tạo S3 Storage theo hướng dẫn trong tài liệu Amazon, sau đó trong tab Logging and metrics trên Console Web ACL, bật logging và chọn bucket S3 vừa khởi tạo để lưu trữ logs.

4. Các công cụ hỗ trợ kiểm tra bảo mật

Dưới đây là một số công cụ hữu ích trong việc kiểm tra và quét lỗ hổng bảo mật cho hệ thống:

  • Acunetix: Công cụ quét lỗ hổng bảo mật chuyên dụng, thường xuyên cập nhật các mối đe dọa mới.
  • JMeter: Phần mềm mã nguồn mở dùng để kiểm thử hiệu suất và mô phỏng tải, giúp đánh giá khả năng chịu tải của hệ thống.

5. Một số lỗi thường gặp khi triển khai

  • Thiếu quyền khi mua rule trong Marketplace.
  • Không đủ quyền truy cập để subscribe Marketplace trong IAM.
  • Vấn đề với việc tạo bucket S3 không xuất hiện trong tab Logging của Web ACL.
  • Tên bucket cần tuân theo quy tắc aws-waf-logs-NameBucket.
  • Trỏ CNAME đến CloudFront có thể gặp lỗi do SSL từ bên thứ ba.
  • Những thách thức liên quan đến request SSL từ AWS vào CloudFront.

6. Kết luận

Việc triển khai AWS WAF đã nâng cao đáng kể khả năng bảo mật cho ứng dụng web của bạn. Các quy tắc tùy chỉnh kết hợp với các quy tắc quản lý giúp ngăn chặn hiệu quả nhiều mối đe dọa và bảo vệ dữ liệu quan trọng, đảm bảo dịch vụ hoạt động liên tục. Tính linh hoạt và khả năng tích hợp cao của AWS WAF đã thể hiện sự đáng tin cậy cho doanh nghiệp trong việc đối phó với các mối đe dọa ngày càng tinh vi trong môi trường mạng hiện nay.
source: viblo

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào