DDoS RUDY là hình thức tấn công “low and slow”, có thể giả mạo các lưu lượng truy cập hợp lệ, chúng có thể ràng buộc server mục tiêu duy trì hoạt động vô thời hạn. Dù hình thức tấn công không phải mới nhưng RUDY có những cách khiến mục tiêu gặp nhiều khó khăn để ứng phó với chúng. Hãy cùng Vietnix tham khảo thêm về chủ đề tấn công RUDY qua bài viết dưới đây.
Giới thiệu
Cái tên RUDY là viết tắt của “R-U-Dead-Yet?”. Hình thức tấn công này có tính chất khó lường nếu so sánh với các hình thức tấn công “low and slow” tương tự khác.
RUDY sẽ tạo ra số lượng cục lớn các request HTTP đầy dữ liệu để gửi đến server mục tiêu. Tuy nhiên, chúng quan tâm đến cách xử lý dữ liệu của mục tiêu mà không cần tiêu hao nhiều lưu lượng mạng. RUDY sẽ gửi các form biểu mẫu với tốc độ chậm đến vô lý, làm mục tiêu không thể hoàn tất xử lý yêu cầu ban đầu, server bị ép duy trì hoạt động liên tục đến khi không còn khả dụng với các lưu lượng truy cập hợp lệ.
Vì RUDY có giao diện thân thiện cũng như cách sử dụng đơn giản mà những gì các đối tượng cần làm chỉ là quay hướng tấn công vào mục tiêu đã chỉ định. Bất kì dịch vụ web nào chấp nhận nhập vào biểu mẫu đều dễ lọt vào tầm ngắm của RUDY vì hình thức tấn công này hoạt động bằng cách dò tìm các trường biểu mẫu và các quy trình gửi biểu mẫu.
Cách hoạt động của tấn công DDoS RUDY (R-U-Dead-Yet?)
Cuộc tấn công DDoS RUDY hoạt động bằng cách tận dụng các lỗ hổng trong cách server xử lý dữ liệu HTTP. Điều này thường xảy ra thông qua việc gửi các yêu cầu HTTP được tạo ra một cách tinh vi nhằm tận dụng các ranh giới và hạn chế xử lý của máy chủ. Mục tiêu của RUDY là khiến cho máy chủ phải xử lý một số lượng lớn các yêu cầu này đồng thời, dẫn đến quá tải và từ chối dịch vụ đối với người dùng hợp lệ.
Các bước tiến hành tấn công của DDoS RUDY
- Công cụ RUDY sẽ thu thập dữ liệu ứng dụng của mục tiêu tìm kiếm trường biểu mẫu.
- Nếu có, RUDY sẽ tạo request HTTP POST giả mạo việc gửi biểu mẫu hợp lệ. Request có chứa header cảnh báo nội dung khá lớn sẽ được gửi đến.
- Sau đó, công cụ này sẽ thực hiện quá trình gửi dữ liệu bằng cách chia dữ liệu đó thành các gói nhỏ khoảng 1 byte mỗi gói, gửi các gói này đến máy chủ theo các khoảng thời gian ngẫu nhiên, mỗi gói khoảng 10 giây.
- RUDY sẽ gửi với tiến độ vô thời hạn, server sẽ phải duy trì kết nối mở để nhận các gói, hành vi bất thường khi này lại khá khó để phát hiện, vì chúng sẽ rất giống với hành vi người dùng thông thường nhưng trạng thái mạng kém ổn định. Do đó để càng lâu hiệu suất và khả năng xử lý của server sẽ càng giảm dần và mất ổn định.
Một trong những phương pháp RUDY sử dụng là tạo ra các yêu cầu POST HTTP với các dữ liệu rất nhỏ nhưng với các trường header đặc biệt dài. Khi máy chủ nhận được các yêu cầu này, nó phải dành thời gian và tài nguyên để xử lý các trường header dài này. Kết quả là, máy chủ sẽ bị quá tải nhanh chóng nếu nhận được một số lượng lớn các yêu cầu như vậy đồng thời từ các kết nối giả mạo.
RUDY cũng có thể sử dụng các kỹ thuật khác như tạo ra các yêu cầu GET HTTP với các tham số dài hoặc gửi các yêu cầu bằng cách sử dụng TCP slowloris để duy trì các kết nối mở với máy chủ, tiêu tốn tài nguyên và tạo ra sự quá tải. Những chiến thuật này khiến cho việc phát hiện và ngăn chặn cuộc tấn công RUDY trở nên khó khăn đối với các hệ thống bảo mật mạng.
*Header HTTP được đề cập ở đây là cặp key-value được gửi đi cùng bất kỳ request hay reply HTTP và chúng cung cấp thông tin quan trọng như version HTTP đang sử dụng, ngôn ngữ đang sử dụng, lượng nội dung nhiều hay ít,….
Cách ngăn chặn tấn công bằng RUDY
Bởi vì các cuộc tấn công chậm và chậm được thực hiện tinh vi hơn nhiều so với các cuộc tấn công từ chối dịch vụ truyền thống nên chúng có thể khó bị phát hiện nhưng có thể áp dụng các biện pháp bảo vệ để ngăn chặn chúng.
Một biện pháp phòng ngừa như vậy là đặt thời gian chờ kết nối ngắn hơn trên máy chủ web, nghĩa là các kết nối chậm nhất sẽ bị cắt đứt. Tuy nhiên giải pháp này có một nhược điểm: người dùng hợp pháp có kết nối Internet chậm, tính ổn định kém có thể bị máy chủ từ chối dịch vụ.
Ngoài ra, một giải pháp reverse proxy, có thể lọc lưu lượng tấn công “low and slow” như các cuộc tấn công RUDY mà không ngắt kết nối người dùng hợp pháp.
Đôi khi trong một số trường hợp, mọi việc lại có thể nằm ngoài dự đoán. RUDY cũng có thể sử dụng các kỹ thuật khác như tạo ra các yêu cầu GET HTTP với các tham số dài hoặc gửi các yêu cầu bằng cách sử dụng TCP slowloris đặc trưng để duy trì các kết nối mở với máy chủ, tiêu tốn tài nguyên và tạo ra sự quá tải. Những chiến thuật này khiến cho việc phát hiện và ngăn chặn cuộc tấn công RUDY trở nên khó khăn đối với các hệ thống bảo mật mạng.
Tóm lại người dùng khi ứng phó với tấn công DDoS RUDY sẽ có thể tận dụng một số giải pháp sau để giảm thiểu nguy cơ và hậu quả:
- Cập nhật và tối ưu hoá cấu hình hệ thống server
- Sử dụng các giải pháp, dịch vụ chống DDoS
- Thiết lập giới hạn số lượng kết nối, thời gian duy trì kết nối
- Giám sát lưu lượng mạng cẩn thận
- Kiểm tra và lọc các request HTTP
Kết luận
Qua bài viết này hy vọng đã giúp bạn hiểu hơn về hình thức tấn công DDoS RUDY. Từ đó trang bị cho bản thân các kiến thức cũng như các giải pháp để đối phó, giảm thiểu các hành vi tấn công DDoS trong tương lai. Đừng ngần ngại để lại bình luận bên dưới và đội ngũ admin Vietnix có thể hỗ trợ bạn sớm nhất. Ngoài ra các bạn có thể tham khảo và tìm hiểu thêm về chủ đề DDoS ở các bài viết tiếp theo của Vietnix để tích luỹ kiến thức cho chính mình.