DDoS từ AWS giảm thiểu tấn công từ chối dịch vụ phân tán cho doanh nghiệp
Trong năm 2024, Việt Nam đã chứng kiến sự gia tăng đáng kể về các cuộc tấn công mạng, ảnh hưởng nghiêm trọng đến nhiều cơ quan và doanh nghiệp. Theo Báo cáo của Hiệp hội An ninh mạng quốc gia, có tới 46,15% cơ quan, doanh nghiệp cho biết đã từng bị tấn công mạng ít nhất một lần trong năm, với tổng số vụ tấn công ước tính hơn 659.000. Tuy đã giảm về số lượng các vụ tấn công ngoại tuyến, nhưng theo thống kê mới nhất, Trong quý III năm 2024, theo báo cáo của Kaspersky, Việt Nam xếp thứ 87 trong số các quốc gia dễ bị tấn công mạng nhất, với 18,7% người dùng internet trở thành mục tiêu của các cuộc tấn công trực tuyến.
Nguồn số liệu: https://vneconomy.vn/hon-46-co-quan-doanh-nghiep-viet-nam-bi-tan-cong-mang-trong-nam-2024.htm
Những kẻ xấu thực hiện các cuộc tấn công DDoS bằng botnet. Thông qua botnet, kẻ tấn công tìm kiếm các lỗ hổng zero-day—cụ thể là trên các thiết bị mạng như bộ định tuyến—và biến các thiết bị này thành một phần của mạng của chúng. Các bot được tấn công trên khắp thế giới đang chờ lệnh từ máy chủ điều khiển.
Bài đăng này xem xét một trường hợp sử dụng thực tế. Công ty giải pháp thanh toán trực tuyến Razorpay có mô hình doanh nghiệp với doanh nghiệp (B2B) trong đó các thương gia gọi API để thanh toán. Do bản chất phức tạp của thanh toán B2B, các mẫu lưu lượng giữa các thương gia quy mô nhỏ và các thương gia quy mô lớn cần được phân biệt. Mô hình kinh doanh này khiến công ty có nguy cơ bị tấn công DDoS và đây là cách AWS giúp họ giải quyết mối lo ngại đang diễn ra này.
Đầu tiên, chúng tôi sẽ giới thiệu phương pháp tiếp cận kiến trúc DDoS ban đầu và sau đó là cách thức sửa đổi để đáp ứng các nhu cầu cụ thể của Razorpay, phù hợp với các khách hàng liên ngành có các yêu cầu khác nhau.
Khuyến nghị cơ bản về DDoS
DDoS là một kỹ thuật tấn công mà các kẻ tấn công gửi nhiều yêu cầu truy cập đến hệ thống. Điều này sẽ dẫn đến tình trạng quá tải, cản trở các hoạt động hệ thống thông thường. Hacker sử dụng mạng botnet, gây gián đoạn và tổn hại đáng kể đối với hệ thống và dịch vụ mạng.
DDoS sáng tạo cho các danh mục tài nguyên khác nhau:
- Trang web tĩnh: Amazon CloudFront là dịch vụ mạng phân phối nội dung (CDN) được sử dụng để lưu trữ các trang web tĩnh. Quy tắc giới hạn tốc độ AWS WAF có thể được sử dụng để giới hạn lưu lượng truy cập trên CDN.
- Trang web động: Trong trường hợp này, có thể sử dụng quy tắc Giới hạn tốc độ WAF chuẩn trên Bộ cân bằng tải ứng dụng (ALB).
- API có ngữ cảnh khách hàng: API nhận các tài sản này thay mặt cho các thương gia khác (ví dụ: người dùng cuối đặt hàng thực phẩm từ ứng dụng giao đồ ăn, hoàn tất thanh toán và yêu cầu được gửi đến api.razorpay.com. Razorpay hiểu rằng người dùng cuối đang cố gắng thanh toán cho ứng dụng giao đồ ăn).
Các giai đoạn ứng phó DDoS
Chúng ta đã thảo luận về kiến trúc DDoS ban đầu, bây giờ hãy cùng khám phá các giai đoạn phản ứng DDoS khác nhau:
- Giai đoạn 1 – Kiểm kê tự động : Tạo hệ thống kiểm kê tự động ghi lại danh sách các API hoặc trang web bị lộ. Các API được xếp hạng theo mức độ lộ diện và rủi ro mất điện để tạo danh sách các tài sản được xếp hạng dựa trên rủi ro.
- Giai đoạn 2 – Phân nhóm tài sản thành các nhóm : Phân nhóm API và trang web (tĩnh hoặc động) thành các nhóm. Giai đoạn này cũng phân nhóm tài sản thành người dùng chưa xác thực hoặc đã xác thực, v.v. Như chúng ta sẽ thảo luận sau trong bài đăng này, hầu hết các API Razorpay đều có ngữ cảnh khách hàng yêu cầu cơ chế phòng thủ nhiều lớp.
- Giai đoạn 3 – Kiểm tra giải pháp : Mô phỏng lưu lượng tấn công để kiểm tra giải pháp dưới nhiều tải, nguồn gốc khác nhau, v.v.
Osam đang có giải pháp cho các đơn vị nghiên cứu và sử dụng hai dịch vụ của AWS là AWS Shield và AWS WAF để chống lại và giảm thiểu tác động của DDoS.
Đọc thêm: https://docs.aws.amazon.com/shield/?id=docs_gateway
https://docs.aws.amazon.com/waf/?id=docs_gateway
AWS Shield có ba tính năng quan trọng để giảm thiểu DDoS:
- Cảnh báo: Kích hoạt cảnh báo khi nghi ngờ có cuộc tấn công DDoS, được tùy chỉnh dựa trên các chỉ số như tổng khối lượng, tỷ lệ lỗi tại ALB và độ trễ phản hồi.
- Tính khả thi: Cung cấp năm giá trị trường quan trọng hàng đầu theo thời gian thực, chẳng hạn như yêu cầu địa chỉ IP của khách hàng, quốc gia, tác nhân người dùng, tiêu đề giới thiệu và các đường dẫn URL để thực hiện hành động.
- Hỗ trợ theo yêu cầu: Cung cấp hỗ trợ theo yêu cầu từ đội ngũ Shield Response (SRT) để hiểu các vector tấn công và tạo các quy tắc AWS WAF dựa trên thông tin chi tiết.
Hình 1. AWS Shield của DDos
AWS WAF có hai loại quy tắc:
- Chặn: Chặn các yêu cầu khớp với các biến mong đợi, từ cá nhân đến sự kết hợp của các trường như IP, đường dẫn URL, nội dung hoặc quốc gia.
- Giới hạn tỷ lệ: Theo dõi tỷ lệ yêu cầu cho mỗi địa chỉ IP gốc và kích hoạt hành động quy tắc trên các IP có tỷ lệ vượt quá giới hạn. Một tuyên bố scope-down cũng có thể được thêm vào quy tắc, chỉ theo dõi và giới hạn tỷ lệ các yêu cầu phù hợp với tuyên bố scope-down. (Chúng tôi sẽ sớm thảo luận về cách Razorpay phụ thuộc nhiều vào việc giới hạn tỷ lệ trong AWS WAF và các giải pháp kiến trúc vi dịch vụ khác.)
Đọc thêm: https://osam.io/aws-waf-la-gi/
Kiến trúc bảo vệ microservices của Razorpay
Razorpay có hai lớp chính bảo vệ các vi dịch vụ nội bộ của họ. Yêu cầu đến API thanh toán api.razorpay.com đi từ Amazon Route 53 đến ALB. AWS WAF và AWS Shield Advanced được triển khai trên ALB. Các yêu cầu sau đó được chuyển tiếp đến các microservices được đặt phía trước bởi API Gateway như trong Hình 2.
Hình 2.Kiến trúc bảo vệ microservices của Razorpay
Cổng API Razorpay
Một API Gateway là một phần hạ tầng quan trọng cho kiến trúc microservice. Razorpay là một tổ chức B2B thực hiện các hành động thay mặt cho các thương nhân. Để đạt được điều này—và hiểu rõ bối cảnh về cả thương nhân và người dùng cuối—một Cổng API tùy chỉnh:
- Làm việc ở quy mô lớn với độ trễ rất thấp.
- Hiểu bối cảnh của thương nhân để cung cấp xác thực và ủy quyền.
- Cung cấp các tính năng bảo mật liên quan đến lưu lượng truy cập độc hại.
Razorpay sử dụng một cổng API tự quản lý gọi là Edge. API Gateway là hệ thống đầu tiên trên đường vào để hiểu ngữ cảnh miền của Razorpay mà các lớp trước không thể. Mỗi yêu cầu đi qua nhiều lớp logic tại API Gateway trước khi được chuyển tiếp đến các dịch vụ tương ứng.
Thông tin chi tiết về giải pháp Razorpay Edge và AWS
Khi Edge thực hiện nhiều phép toán trên mỗi yêu cầu, Razorpay tạo ra các thông tin chi tiết cho mỗi yêu cầu để xây dựng trí tuệ và ngăn chặn các cuộc tấn công DDoS. Các sự kiện này được đưa vào cơ sở dữ liệu chuỗi thời gian gần như theo thời gian thực và tạo ra các thông tin chi tiết bằng cách sử dụng các mô hình học máy (ML). Những hiểu biết:
- Xác định các mẫu độc hại: Tạo ra tỷ lệ phần trăm độ tin cậy giúp xác định hành động tiếp theo, xác minh tính xác thực của người tiêu dùng và phục vụ yêu cầu. Nó cũng chặn các yêu cầu độc hại ở biên.
- Xác định giới hạn tỷ lệ dựa trên mẫu: Xác định giới hạn tỷ lệ dựa trên một tập dữ liệu lớn hơn—bao gồm người tiêu dùng và địa chỉ IP—bằng cách nhìn vào các mẫu hàng tuần và hàng tháng. Khi thông tin này có sẵn tại Razorypay Edge, nó có thể thực hiện nhiều thao tác khác nhau để đảm bảo chỉ các yêu cầu hợp lệ mới đến được lớp dịch vụ. Hãy cùng khám phá luồng yêu cầu để hiểu rõ sự đóng góp của từng giai đoạn đối với việc xử lý DDoS, như trong Hình 3.
Hình 3.Luồng yêu cầu Razorpay Edge để xử lý DDoS
Tất cả các yêu cầu Razorpay đều đi qua API Gateway. Dưới đây là một số khuyến nghị chính:
- Dựa trên dữ liệu phản hồi có sẵn, cổng kiểm tra xem mẫu yêu cầu đã cho có thuộc vào danh mục độc hại hay không. Nếu tỷ lệ tự tin cao đối với một yêu cầu độc hại, hãy chặn yêu cầu đó. Một quy tắc chặn được áp dụng ở lớp AWS WAF. Nếu tỷ lệ tự tin thấp, hãy sử dụng CAPTCHA để kiểm tra tính xác thực của người dùng.
- Áp dụng giới hạn tần suất trên dữ liệu có sẵn trong đối tượng yêu cầu bằng cách sử dụng phản hồi từ một mô hình ML.
- Thực hiện xác thực/nhận dạng và ủy quyền.
- Áp dụng giới hạn tần suất trên dữ liệu lấy từ đối tượng yêu cầu, cũng như sử dụng phản hồi từ mô hình ML.
- Yêu cầu xác minh CAPTCHA của người dùng nếu yêu cầu được xác định là độc hại với độ tin cậy thấp.
Như một thực hành tốt nhất, xuất bản các thông tin chi tiết được tạo ra cho mỗi yêu cầu vào Apache Kafka ra khỏi luồng yêu cầu để tránh ảnh hưởng độ trễ và giảm phạm vi ảnh hưởng.
Kết luận
Với kinh nghiệm triển khai và đồng hành cùng AWS trong nhiều năm qua, OSAM khuyến khích doanh nghiệp sử dụng Amazon Route 53 kết hợp cùng AWS Global Accelerator. Đây là một dịch vụ của AWS giúp cải thiện thời gian đáp ứng và tăng lưu lượng truy cập người dùng cho các ứng dụng chạy trên AWS. Global Accelerator sử dụng hạ tầng mạng toàn cầu của AWS để định tuyến lưu lượng truy cập đến các điểm cuối ứng dụng một cách tối ưu, giúp giảm thiểu độ trễ và tăng cường khả năng mở rộng.