Cơ chế điều khiển tắc nghẽn TCP là rất thích hợp để đối phó với tình trạng tắc nghẽn cao, nhưng nó có một lỗ hổng có thể khai thác: các giá trị của RTO được định nghĩa trước (và do đó dự đoán được) dưới ùn tắc nặng. Tối thiểu cho RTO là 1 giây và, do đó, các giá trị có thể trở lại trong thời gian rút lui theo hàm mũ là bội của 1 giây. Thuộc tính này của thuật toán làm cho hệ thống dễ bị tấn công sử dụng thời gian ngắn, đúng lúc bùng nổ tốc độ cao của các gói tin để điền vào bộ đệm nút cổ chai, ngay trước khi RTO hết hạn.
Một kẻ tấn công biết rằng thời gian của bên gửi có thể sử dụng mô hình lưu lượng tấn công "sóng vuông" (tốc độ cao, các vụ nổ thời gian ngắn), để buộc bên gửi phải nhiều lần vào trạng thái thời gian hết hạn truyền lại. Khi bộ đệm nút cổ chai sẽ được lấp đầy với lưu lượng tấn công, thông lượng đạt được của bên gửi sẽ được gần như bằng không. Như mô hình lưu lượng tấn công - thể hiện trong hình 5- truyền (bùng nổ) các gói tin với tốc độ cao, thời gian ngắn và sau đó đợi ra khỏi chu kỳ giữa hai bùng nổ trước khi nó bùng nổ một lần nữa. Với hy vọng rằng các vụ nổ tiếp theo sẽ xảy ra các luồng của nạn nhân bắt đầu phát lại.
Kẻ tấn công định kỳ gửi các vụ nổ ngắn của gói vào một liên kết nút cổ chai trong mạng. Tốc độ gửi trong một vụ nổ là đủ cao để lấp đầy hàng đợi nút cổ chai một cách nhanh chóng. Sau khi hàng đợi đầy, các gói tin TCP đi qua các nút cổ chai bị loại bỏ do tràn bộ đệm. Nếu một số lượng lớn các gói tin trong một cửa sổ TCP bị loại bỏ, kết nối được buộc phải thời gian chờ (timeout). Kẻ
tấn công nằm yên giữa các bùng nổ của truyền tải, vì vậy tần suất gửi trung bình tổng thể của nó là thấp.
Các cuộc tấn công có ba thuộc tính: tốc độ gửi, độ dài bùng nổ và chu kỳ giữa hai lần bùng nổ.
Tốc độ gửi là tốc độ mà kẻ tấn công gửi các gói tin vào mạng. Từ khi ý định của kẻ tấn công là để nhanh chóng lấp đầy các bộ đệm nút cổ chai, chính xác trước khi nạn nhân cố gắng truyền lại, tốc độ này phải cao hơn băng thông của liên kết nút cổ chai. Nếu tốc độ đủ cao để điền vào bộ đệm nút cổ chai, gói của nạn nhân sẽ bị hủy bỏ và mất gói tin sẽ tạo nên nhiều luồng TCP vào thời gian chờ (timeout).
Chiều dài bùng nổ xác định dài bao lâu kẻ tấn công lũ lụt các gói tin trong mỗi lần bùn nổ. Điều này phụ thuộc vào tốc độ gửi, RTT của các luồng, và băng thông của liên kết nút cổ chai. Nếu chiều dài bùng nổ quá dài, sau đó kẻ tấn công có nguy cơ bị phát hiện, trong khi bùng nổ ngắn có thể không đủ để lấp đầy bộ đệm nút cổ chai (đối với một tốc độ nhất định).
Chu kỳ giữa hai bùng nổ là thời gian giữa hai vụ bùng nổ liên tiếp của lưu lượng tấn công. Cả hai tốc độ gửi và thời gian bùng nổ cần phải được lựa chọn cẩn thận bởi những kẻ tấn công sao cho cuộc tấn công thành công và vẫn không bị phát hiện. Một tốc độ gửi quá cao hoặc chiều dài bùng nổi dài không cần thiết có thể kích hoạt các cơ chế phòng chống DoS dựa trên bộ định tuyến. Nó đã được đề xuất bởi [3] rằng với chiều dài bùng nổ dưới 300ms sẽ cho phép kẻ tấn công tần suất thấp đi qua tương đối không bị phát hiện. Các thí nghiệm cho thấy một chiều dài bùng nổ bằng 200ms là đủ để gây ra thông lượng bằng 0 với chu kỳ giữa hai bùng nổ thích hợp.
Chu kỳ giữa hai bùng nổ ra lệnh tần số mà kẻ tấn công truyền tải bùng nổ của các gói tin. Một kẻ tấn công sẽ muốn đồng bộ hóa với nạn nhân bằng cách chọn một khoảng thời gian giữa các vụ nổ tương ứng chính xác với RTO của nạn nhân. Bằng cách này, kẻ tấn công có thể điều tiết thông lượng trong khi truyền tải số lượng ít dữ liệu có thể làm giảm nguy cơ bị phát hiện.
Tb Rb Ta Time R at e
Hình 5. Mô hình tấn công DoS tần suất thấp
Hình 5 biểu diễn tấn công từ chối dịch vụ tần suất thấp sử dụng ba tham số (Ta, Tb, Rb). Ta biểu diễn chu kỳ tấn công, Tb biểu diễn độ rộng tấn công và Rb biểu diễn tốc độ tấn công.
Kẻ tấn công có thể làm giảm nguy cơ bị phát hiện bởi cơ chế phát hiện dựa trên bộ định tuyến sử dụng bùng nổ tốc độ kép của lưu lượng: đầu tiên kẻ tấn công sử dụng một tốc độ rất cao (cao hơn so với liên kết nút cổ chai), với một thời gian chu kỳ ngắn, và sau đó kẻ tấn công làm giảm tốc độ lưu lượng bùng nổ để đánh giá các liên kết của nút cổ chai. Ban đầu, tốc độ cao được sử dụng để nhanh chóng lấp đầy các bộ đệm của liên kết nút cổ chai và sau đó tốc độ đảm bảo rằng các bộ đệm vẫn còn đầy đủ trong suốt thời gian dài bùng nổ. Cách tiếp cận này đòi hỏi một tốc độ rất cao với thời gian ban đầu chu kỳ rất nhỏ và do đó nó khó khăn hơn để phát hiện. Trong nghiên cứu này chỉ xem xét cuộc tấn công đơn tốc độ [3].
Tóm lại, tần suất thấp là một đặc tính độc đáo của kiểu tấn công này. Kẻ tấn công hoạt động chỉ ở những khoảnh khắc khi TCP đang gửi các gói tin. Theo [6], khi chiều dài bùng nổ tấn công là ngắn hơn 300ms, các chương trình quản lý hàng đợi AQM hiện có như RED [19] và RED-PD [20] không thể phân biệt giữa các luồng tấn công và luồng hợp pháp.