Phòng chống và ứng phó với tấn công từ chối dịch vụ phân tán vào website

MỤC LỤC

CÁC CÁCH THỨC TẤN CÔNG TỪ CHỐI DỊCH VỤ

  • Thiết lập nên mạng Agent
    • Điều khiển mạng lưới máy Agent
      • Các cách thức tấn công từ chối dịch vụ

        [17] Ngoài ra còn có một lớp của các cuộc tấn công DDoS với lực lượng tham gia là các máy tính có lỗ hổng bảo mật mà việc khai thác không nhất thiết đòi hỏi phải cài đặt bất kỳ phần mềm độc hại trên máy tính này, nhưng, thay vào đó cho phép kẻ tấn công kiểm soát các máy chủ để làm cho chúng tạo ra các giao thông tấn công. Tuy vậy một số kẻ tấn công sử dụng IP Spoofing cho một vài lý do, như để che giấu địa chỉ của các agent, từ đó che giấu được địa chỉ của handler và của kẻ tấn công tốt hơn, hoặc sử dụng cho tấn công phản xạ nhiều vùng DRDoS là hình thức tấn công mạnh nhất hiện nay giả mạo địa chỉ IP của nạn nhân để yêu cầu một số server lớn gửi các truy vấn hợp pháp đến server nạn nhân, kết quả là nạn nhân bị tấn công các server lớn trên thế giới, và không thể nào chống đỡ nổi.

        CÁC BIỆN PHÁP PHềNG CHỐNG TRUYỀN THỐNG

          Ý tưởng, lấy từ thực tế, là nhà quản trị mạng cố gắng để đẩy lùi các giao thông tấn công trở lại nguồn của nó, hoặc bằng cách rút một cáp mạng trong các bộ định tuyến và xem liệu lưu lượng truy cập có dừng lại không, hay bằng cách quan sát lưu lượng mạng trên các thiết bị giám sát. Việc đặt ra giới hạn tỷ lệ quá cao có thể khiến các giao thông hợp lệ cũng bị giới hạn, mất mát, còn việc đặt ra giới hạn quá thấp có thể khiến kẻ tấn công vượt qua được sự bảo vệ.Nói chung, pushback dường như đòi hỏi các mô hình triển khai tiếp cận tới router. Một lần nữa, mỗi 20.000 gói gửi đến đích, một router sẽ đánh dấu một gói tin với một tham chiếu đến chính nó.Một tần số lấy mẫu thấp đã được lựa chọn để tránh một gánh nặng về cơ sở hạ tầng định tuyến do đánh dấu một khối lượng lớn truy cập trong một cuộc tấn công gửi tràn gói tin.

          Nó là một hệ thống nội tuyến, trong suốt với người sử dụng trên mạng, thông qua việc tập hợp số liệu thống kê giao thông hai chiều từ các router biên tại các mạng nguồn và so sánh chúng với các mô hình giao thông mạng xây dựng dựa trên giao thức ứng dụng và giao vận, phản ánh sự. Cách phòng chống này này không xử lý được vấn đề như các cuộc tấn công phân tán trong đó kẻ tấn công tạo ra các yêu cầu đủ để vắt kiệt các tài nguyên máy chủ hoặc tấn công vắt kiệt tài nguyên cho việc tạo puzzle hay tiêu thụ băng thông của đường mạng dẫn đến máy chủ. Nó bao gồm ba loại nút (router hoặc host): node phát cảnh báo phát hiện một cuộc tấn công, node hạn chế tỷ lệ thi hành giới hạn tốc độ trên tất cả lưu lượng đi đến mục tiêu của cuộc tấn công, và node phân loại giới hạn tỷ lệ giao thông, phân chia các gói tin hợp pháp với các gói tin đáng ngờ đồng thời đánh dấu mỗi gói với phân loại của nó.

          Không có gì ngăn cản kẻ tấn công khỏi việc phát động một cuộc tấn công bằng các nguồn thực và mang giá trị TTL chính xác, và do đó các cuộc tấn công bằng cách sử dụng các mạng bot lớn hoặc sâu với DDoS, mà không cần phải mạo địa chỉ nguồn để thành công, vẫn sẽ là một vấn đề.

          SOS VÀ WEBSOS

          Giao thức Chord

          Từ đó việc lưu trữ và tìm kiếm dữ liệu trong mạng sẽ dễ dàng được thực hiện thông qua việc liên kết mỗi key với các đơn vị dữ liệu để lưu trữ cặp key/ dữ liệu đó tại node mà key ánh xạ đến. Trong mạng Chord, mỗi node được cấp phát một định danh ID thông qua một hàm băm nhất quán trong khoảng [0, 2m] với một giá trị m định trước. Các node trong mạng bao phủ được sắp xếp thứ tự theo định danh của chúng, và được tổ chức theo vòng, thuận chiều kim đồng hồ.

          Giá trị ở hàng thứ i trong bảng finger table của node có định danh x, là node có định danh nhỏ nhất mà lớn hơn hoặc bằng x + 2i-1. Khi node x nhận được gói tin có đích là node định danh y, nó gửi gói tin đến node trong mạng theo bảng finger table của nó sao cho node này có định danh lớn nhất mà còn nhỏ hơn y.

          Hình 1: Định tuyến theo Chord [14].
          Hình 1: Định tuyến theo Chord [14].

          Kiến trúc SOS

          Mạng bao phủ này đóng vai trò một firewall phân tán, được xây dựng theo giao thức Chord với kĩ thuật định tuyến theo cấu trúc, sử dụng bảng băm phân tán DHT. Sau khi node SOAP đã xác thực xong người dùng, nó sẽ lấy địa chỉ Server đích trong gói tin yêu cầu, sử dụng hàm băm của chord để đạt được một giá trị băm. Điều này được thực hiện thông qua việc định kì, các Secret Servlet tương ứng với Server đích sẽ sử dụng hàm băm của Chord với địa chỉ Server đích, nhờ đó lấy được giá trị băm và biết được vị trí của Beacon cần biết nó.

          Còn với các Server đích, cơ chế của chúng đó là install một bộ lọc ở router gần nó nhất, và lựa chọn một số node trong mạng bao phủ SOS để làm Secret Servlet của mình, và cho phép chuyển tiếp kết nối thông qua các bộ lọc đến Server đích. Với kiến trúc đề xuất như vậy, SOS được tin tưởng rằng sẽ trở thành một phương pháp tiếp cận mới và mạnh mẽ trong phương pháp chủ động phòng và chống tấn công từ chối dịch vụ.

          Kiến trúc WebSOS

          • Cơ chế của WebSOS .1 Cơ chế chung

            Chỉ khi hệ thống bị tấn công, nhờ các router chất lượng cao đã được cài đặt bộ lọc địa chỉ IP, các kết nối đến từ bên ngoài sẽ bị lọc và từ chối kết nối đến các máy chủ đích, chỉ có các Secret Servlet mới có quyền truy cập đến các máy chủ này, lúc đó mạng bao phủ WebSOS mới thực sự hoạt động, và người dùng muốn truy nhập vào máy chủ đích phải kết nối thông qua mạng bao phủ này. Khi kết nối đến mạng bao phủ, thông qua việc sử dụng bài kiểm tra Graphic Turing Test hiện đại, giao thông từ con người sẽ được phân biệt chính xác với giao thông từ các chương trình máy tự động do sự đảm bảo của các chương trình CAPTCHA hiện đại có thể khiến các chương trình nhận dạng chữ viết tự không thể thực hiện chính xác. Với thực tế rằng chi phí về thời gian tạo và chứng thực mã hóa với thuật toán RC4 là rất nhỏ (như ở phần 4 sẽ đề cập đến), các node trong mạng bao phủ không cần thiết phải được cài đặt thêm chức năng đặc biệt khác, và khách hàng thì đơn giản chỉ cần được cấp một chứng thực phù hợp từ quản trị của WebSOS.

            Hơn nữa, nhằm tránh việc kẻ tấn công sử dụng IP Spoofing gửi gói tin tấn công có IP nguồn trùng với IP của các Servlet đến Server đích, WebSOS đề xuất sử dụng cơ chế GRE: “Generic Routing Encapsulation” theo Farinacci và các đồng nghiệp vào tháng 3-2000, và Dommety, tháng 9-2000. Ứng dụng của giao thức Chord giúp việc định tuyến trong mạng bao phủ trở nên nhanh chóng, hơn nữa cung cấp tính cân bằng tải, linh hoạt, khả năng phân tán, mở rộng cho các node trong mạng bao phủ cũng như xử lý tốt việc các node trong mạng bao phủ có thể gia nhập và rời khỏi mạng một cách thường xuyên.

            Hình 3: Bài kiểm tra người truy cập sử dụng CAPTCHA. Từ khóa kiểm tra  trong trường hợp này là “zbyc”
            Hình 3: Bài kiểm tra người truy cập sử dụng CAPTCHA. Từ khóa kiểm tra trong trường hợp này là “zbyc”

            THỰC NGHIỆM, CẢI TIẾN VÀ KẾT QUẢ

            • Đề xuất cải tiến

              Chúng ta sẽ tập trung vào kiểu tấn công thứ nhất và thứ hai: tấn công hủy gói tin, và đưa ra giải pháp bằng cách thiết lập một cơ chế nhận diện kiểu tấn công này, và sau đó thiết lập cho proxylet của người dùng thực hiện thay đổi SOAP để kết nối đến server qua con đường định tuyến khác không thông qua node bị chiếm dụng. Sau khi thực nghiệm với hệ thống, tụi thấy hiệu quả của cơ chế là rừ rệt, cỏc trường hợp khi khụng cú gói tin trả lời thăm dò, hoặc các gói tin trả lời từ server bị hủy bỏ, thậm chí cả khi việc giữ đường truyền cho các gói thăm dò/ trả lời thăm dò và hủy các gói tin khác, cơ chế vẫn có thể phát hiện và xử lý hiệu quả qua việc thay đổi SOAP. Ta thực thi kịch bản xây dựng này với cả chương trình gốc và chương trình đã cải tiến, nhằm xem xét tác động của hình thức tấn công này với chương trình gốc, cũng như kiểm tra khả năng của cơ chế cải tiến, xem nó có thể phát hiện và xử lý tốt hình thức tấn công hủy bỏ gói tin của các node bị chiếm dụng hay không.

              Kết quả tất yếu xảy ra đó là khi thực thi kịch bản với chương trình WebSOS gốc, Browser tại client không thể nhận được response từ Server đích, tương đương với việc các người dùng hợp lệ không thể kết nối đến Server đích khi trên đường định tuyến từ client đến Server đích có một node bị chiếm dụng, và thực hiện hình thức tấn công hủy gói tin. Nguyên do là bởi cơ chế đề xuất, khi gửi truy vấn đến server thì đồng thời cứ sau 3 giây một probeRequest lại được gửi lên server (thời gian giữa 2 lần gửi probeRequest có thể điều chỉnh), và sau 3 lần liên tiếp gửi probeRequest không thành công các proxy applet tự động thay đổi SOAP dẫn đến thay đổi đường dẫn định tuyến từ client đến server đích.

              Bảng 1: Độ trễ khi thử nghiệm kết nối đến 1 số trang web
              Bảng 1: Độ trễ khi thử nghiệm kết nối đến 1 số trang web