Giả sử bạn là một lập trình viên đơn độc đang bắt đầu với cửa hàng Juice Shop (Nước Trái Cây). Website của bạn là một ứng dụng web đơn giản chạy với cơ sở dữ liệu SQL. Vì một số lý do nào đó, nhóm tin tặc Milkshake (nhóm Sữa Lắc) đang bắt đầu tấn công vào trang web của bạn.
Rất may là ngay lúc này bạn đang tiếp cận tới AWS WAF. Vậy là bạn quyết định sẽ triển khai WAF để bảo vệ trang web của bạn.
Ngoài ra thì ngay lúc này, bạn đang không có nhiều thời gian nên bạn sẽ quyết định sẽ sử dụng Nhóm các rule dựng sẵn bởi AWS cho Web ACL của bạn. Với các rule này, website của bạn sẽ được bảo vệ khỏi các tấn công thông thường từ phía nhóm Sữa Lắc.
Web ACLs (Web Access Control List) là cốt lỗi của việc triển khai AWS WAF. Nó bao gồm các rule được sử dụng để đánh giá các yêu cầu được gửi tới WAF của bạn. Web ACL được áp dụng lên ứng dụng web của bạn thông qua Amazon CloudFront distribution, AWS API Gateway API hay một AWS Application Load Balancer.
Managed rule groups là một bộ các rule được tạo và cập nhật bởi đội ngũ AWS hoặc các bên thứ 3 trên AWS Marketplace. Những rule này cung cấp khả năng bảo vệ ứng dụng của bạn khỏi các tấn công thông dụng hoặc đặc thù cho từng loại ứng dụng.
Bài thực hành này sử dụng phiên bản mới nhất của AWS WAF. Hãy đảm bảo bạn không sử dụng WAF Classic.
waf-workshop-juice-shop
.Web ACL for the aws-waf-workshop
.
# This imitates a Cross Site Scripting attack
# This request should be blocked.
curl -X POST <Your Juice Shop URL> -F "user='<script><alert>Hello></alert></script>'"
15. Chạy lệnh.
# This imitates a SQL Injection attack
# This request should be blocked.
curl -X POST <Your Juice Shop URL> -F "user='AND 1=1;"