Hiện nay, tấn công DDoS đang ngày càng phổ biến, gây ra những hậu quả to lớn. Vì vậy, mỗi người dùng cần phải hiểu biết anti DDoS protection là gì. Từ đó có thể ngăn chặn và bảo vệ trang web của mình khỏi tấn công DDoS.
Nội dung
Tấn công DDoS là gì?
Denial of Service (viết tắt: DoS) là một loại tấn công phá hoại. Nó có mục đích làm ảnh hưởng đến tính khả dụng của một hệ thống. Chẳng hạn như website hoặc app để hợp pháp hóa cho các end user. Thông thường, những kẻ tấn công tạo ra khối lượng lớn các packet hoặc các request nhằm áp đảo mục tiêu. Còn đối với Distributed Denial of Service (viết tắt: DDoS), kẻ tấn công sử dụng nhiều source bị xâm nhập hoặc được kiểm soát để tạo ra cuộc tấn công.
Nói chung, các cuộc tấn công DDoS có thể được tách biệt theo lớp (layer) của mô hình Open Systems Interconnection (OSI) mà chúng tấn công. Chúng phổ biến nhất ở các layer như Network (layer 3), Transport (Layer 4), Presentation (Layer 6) và Application (Layer 7)
Mô hình Open Systems Interconnection (OSI):
# | Layer | Ứng dụng | Mô tả | Vector example |
7 | Application | Data | Network process đến app | HTTP floods, DNS query floods |
6 | Presentation | Data | Data representation và mã hóa Data | SSL abuse |
5 | Session | Data | Interhost communication | N/A |
4 | Transport | Segments | End-to-end connections và reliability | SYN floods |
3 | Network | Packets | Path determination và logical addressing | UDP reflection attacks |
2 | Datalinks | Frames | Physical addressing | N/A |
1 | Physical | Bits | Media, signal, và binary transmission | N/A |
Phân loại tấn công DDoS
Trong khi suy nghĩ về các kỹ thuật anti DDoS protection là gì, sẽ rất hữu ích khi ta nhóm chúng thành các cuộc tấn công khác nhau. Cụ thể là Infrastructure layer (Layers 3 và 4) và Application Layer (Layer 6 và 7).
Tấn công lớp cơ sở hạ tầng
Các cuộc tấn công ở Layer 3 và 4, thường được phân loại là Infrastructure Layer Attacks. Đây cũng là kiểu tấn công DDoS phổ biến nhất và bao gồm các vector như synchronized (SYN) floods. Ngoài ra còn có các reflection attack khác như User Datagram Packet (UDP) floods. Các cuộc tấn công này thường có quy mô lớn với mục đích làm quá tải dung lượng của mạng hoặc các app server. Nhưng may mắn thay, đây cũng là những kiểu tấn công có signature rõ ràng và dễ bị phát hiện hơn.
Tấn công lớp ứng dụng
Các cuộc tấn công ở Layer 6 và 7, thường được phân loại là các Application layer attacks. Các cuộc tấn công này ít phổ biến hơn. Mặt khác, chúng cũng có xu hướng phức tạp hơn. Các cuộc tấn công này thường có quy mô nhỏ so với các Infrastructure layer attack nhưng thường tập trung vào “mặt tiền” của app. Do đó app sẽ không khả dụng cho người dùng thực. Ví dụ: các request HTTP flood đến một login page, hoặc một API tìm kiếm đắt tiền. Hoặc thậm chí là WordPress XML-RPC flood (còn được gọi là WordPress pingback attacks).
Các kỹ thuật anti DDoS protection là gì?
Giảm diện tích bề mặt tấn công
Một trong những kỹ thuật đầu tiên để giảm thiểu các cuộc tấn công DDoS là giảm thiểu diện tích bề mặt có thể bị tấn công. Do đó hạn chế các option cho những kẻ tấn công. Nó cũng cho phép bạn tập trung xây dựng các biện pháp bảo vệ ở một nơi duy nhất. Chúng ta không để app hoặc các resource của mình tiếp xúc với các port, protocol hoặc các app từ nơi mà chúng không thể có được bất cứ thông tin nào. Do đó, giảm thiểu các điểm có thể bị tấn công và cho phép chúng ta tập trung nỗ lực giảm thiểu.
Trong một số trường hợp, bạn có thể thực hiện việc này bằng cách đặt tài computation resource của mình sau Content Distribution Networks (CDNs) hay Load Balancers và hạn chế lưu lượng truy cập Internet trực tiếp đến các phần nào đó của hệ thống như các database server của bạn. Trong các trường hợp khác, bạn có thể sử dụng firewall hoặc các Access Control List (ACL) để kiểm soát lưu lượng truy cập đến các app của bạn.
Lập kế hoạch cho qui mô
Có hai cân nhắc chính để giảm thiểu các cuộc tấn công DDoS quy mô lớn. Đó là bandwidth capacity (hoặc transit capacity) và server capacity để giảm thiểu các cuộc tấn công.
Transit capacity
Khi xây dựng các app, hãy đảm bảo bạn được cung cấp nhiều kết nối Internet dự phòng. Từ đó cho phép bạn xử lý khối lượng lớn lưu lượng truy cập. Vì mục tiêu cuối cùng của các cuộc tấn công DDoS là làm ảnh hưởng đến tính khả dụng của các resources/app của bạn. Vì vậy ta nên xác định vị trí của chúng, không chỉ gần với các end user mà còn gần với các trao đổi lớn trên internet. Khi đó, user sẽ dễ dàng truy cập vào app của bạn ngay cả khi lưu lượng truy cập cao. Ta có thể sử dụng Content Distribution Networks (CDNs). Hoặc có thể là smart DNS để cung cấp thêm một network infrastructure layer bổ sung. Nhằm giải quyết các truy vấn DNS từ các vị trí thường gần với end user hơn.
Server capacity
Hầu hết các cuộc tấn công DDoS là các volumetric attack sử dụng nhiều resource. Do đó, điều quan trọng là bạn có thể nhanh chóng tăng hoặc giảm tài nguyên tính toán. Bạn có thể làm điều này bằng cách chạy trên các tài nguyên lớn hơn hoặc những tài nguyên có các tính năng như network interfaces mở rộng hơn. Ta cũng có thể sử dụng những mạng được cải tiến để hỗ trợ khối lượng lớn hơn. Ngoài ra, người ta cũng thường sử dụng bộ load balancer để liên tục theo dõi và chuyển tải giữa các resource nhằm ngăn chặn quá tải bất kỳ một resource nào.
Thế nào là lưu lượng bình thường và bất thường
Bất cứ khi nào chúng ta phát hiện mức lưu lượng truy cập tăng cao chạm vào host, baseline chỉ có thể chấp nhận lượng truy cập nhiều nhất mà host của chúng ta có thể xử lý. Đồng thời cũng không được ảnh hưởng đến tính khả dụng. Khái niệm này được gọi là rate limiting. Ta cũng có thể chỉ chấp nhận lưu lượng truy cập hợp lệ bằng cách tự phân tích các packet riêng lẻ một cách thông minh. Để làm được điều này, bạn cần hiểu các đặc điểm của các lưu lượng tốt mà mục tiêu thường nhận được. Sau đó có thể so sánh từng packet với baseline này.
Triển khai Firewall cho các các cuộc tấn công ứng dụng phức tạp
Một phương pháp hay là sử dụng Web Application Firewall (WAF) để chống lại các cuộc tấn công. Chẳng hạn như SQL Injection hoặc giả mạo cross-site request, cố gắng khai thác lỗ hổng trong chính app của bạn. Ngoài ra, do tính chất độc đáo của các cuộc tấn công này, bạn sẽ có thể dễ dàng tạo các biện pháp giảm nhẹ tùy chỉnh chống lại các request không hợp lệ có thể có các đặc điểm như ngụy trang thành traffic hợp lệ hoặc đến từ các IP xấu, các vị trí khác thường v.v. Đôi khi, nó cũng có thể hữu ích trong việc giảm thiểu các cuộc tấn công và tạo các biện pháp bảo vệ tùy chỉnh.
Theo Amazon.