Cuộc tấn công CPDoS khiến các trang được phân phát qua CDN không khả dụng

Các nhà nghiên cứu từ Đại học Hamburg và Cologne
phát triển một kỹ thuật tấn công mới vào mạng phân phối nội dung và proxy bộ nhớ đệm - CPDoS (Từ chối dịch vụ bị nhiễm độc bộ đệm). Cuộc tấn công cho phép quyền truy cập vào một trang bị từ chối thông qua việc đầu độc bộ đệm.

Vấn đề là do bộ nhớ đệm của CDN không chỉ hoàn thành thành công các yêu cầu mà còn xảy ra trường hợp máy chủ http trả về lỗi. Theo quy định, nếu có vấn đề với việc tạo yêu cầu, máy chủ sẽ phát ra lỗi 400 (Yêu cầu không hợp lệ); ngoại lệ duy nhất là IIS, lỗi này phát sinh lỗi 404 (Không tìm thấy) đối với các tiêu đề quá lớn. Tiêu chuẩn này chỉ cho phép lưu vào bộ nhớ đệm các lỗi có mã 404 (Không tìm thấy), 405 (Phương thức không được phép), 410 (Đã qua) và 501 (Không được triển khai), nhưng một số CDN cũng lưu vào bộ nhớ đệm các phản hồi có mã 400 (Yêu cầu không hợp lệ). trên yêu cầu đã gửi.

Những kẻ tấn công có thể khiến tài nguyên ban đầu trả về lỗi “400 Yêu cầu Không hợp lệ” bằng cách gửi yêu cầu có tiêu đề HTTP được định dạng theo một cách nhất định. Các tiêu đề này không được CDN tính đến, do đó thông tin về việc không thể truy cập trang sẽ được lưu vào bộ đệm và tất cả các yêu cầu hợp lệ khác của người dùng trước khi hết thời gian chờ có thể dẫn đến lỗi, mặc dù thực tế là trang gốc phân phát nội dung mà không có bất kỳ vấn đề.

Ba tùy chọn tấn công đã được đề xuất để buộc máy chủ HTTP trả về lỗi:

  • HMO (Ghi đè phương thức HTTP) - kẻ tấn công có thể ghi đè phương thức yêu cầu ban đầu thông qua các tiêu đề "X-HTTP-Method-Override", "X-HTTP-Method" hoặc "X-Method-Override", được một số máy chủ hỗ trợ, nhưng không được tính đến trong CDN. Ví dụ: bạn có thể thay đổi phương thức “GET” ban đầu thành phương thức “DELETE”, bị cấm trên máy chủ hoặc phương thức “POST”, không áp dụng cho tĩnh;

    Cuộc tấn công CPDoS khiến các trang được phân phát qua CDN không khả dụng

  • HHO (Tiêu đề HTTP quá khổ) - kẻ tấn công có thể chọn kích thước tiêu đề sao cho vượt quá giới hạn của máy chủ nguồn, nhưng không nằm trong giới hạn CDN. Ví dụ: Apache httpd giới hạn kích thước tiêu đề ở mức 8 KB và Amazon Cloudfront CDN cho phép tiêu đề lên tới 20 KB;
    Cuộc tấn công CPDoS khiến các trang được phân phát qua CDN không khả dụng

  • HMC (HTTP Meta Character) - kẻ tấn công có thể chèn các ký tự đặc biệt vào yêu cầu (\n,\r,\a), được coi là không hợp lệ trên máy chủ nguồn nhưng bị bỏ qua trong CDN.

    Cuộc tấn công CPDoS khiến các trang được phân phát qua CDN không khả dụng

Dễ bị tấn công nhất là CloudFront CDN được Amazon Web Services (AWS) sử dụng. Amazon hiện đã khắc phục sự cố bằng cách vô hiệu hóa bộ nhớ đệm lỗi, nhưng các nhà nghiên cứu phải mất hơn ba tháng để bổ sung biện pháp bảo vệ. Vấn đề này cũng ảnh hưởng đến Cloudflare, Varnish, Akamai, CDN77 và
Nhanh chóng, nhưng cuộc tấn công thông qua chúng chỉ giới hạn ở các máy chủ mục tiêu sử dụng IIS, ASP.NET, bình и Chơi 1. Nó được ghi nhận, 11% tên miền của Bộ Quốc phòng Hoa Kỳ, 16% URL từ cơ sở dữ liệu Lưu trữ HTTP và khoảng 30% trong số 500 trang web hàng đầu được Alexa xếp hạng có thể bị tấn công.

Để giải quyết vấn đề này nhằm chặn một cuộc tấn công từ phía trang web, bạn có thể sử dụng tiêu đề “Cache-Control: no-store”, tiêu đề này cấm lưu vào bộ nhớ đệm phản hồi. Trong một số CDN, ví dụ:
CloudFront và Akamai, bạn có thể tắt tính năng lưu lỗi vào bộ nhớ đệm ở cấp cài đặt cấu hình. Để bảo vệ, bạn cũng có thể sử dụng tường lửa ứng dụng web (WAF, Tường lửa ứng dụng web), nhưng chúng phải được triển khai ở phía CDN trước các máy chủ lưu trữ bộ đệm.

Nguồn: opennet.ru

Thêm một lời nhận xét