Phòng chống tấn công DDoS vào website

MỤC LỤC

Phương pháp lây truyền

Một mô hình đơn giản là kho lưu trữ trung ương, hoặc bộ nhớ cache, với cách tiếp cận: Kẻ tấn công lưu các phần mềm độc hại trong một kho lưu trữ tập tin (ví dụ, một máy chủ FTP) hoặc trang web của một Web, và các máy truy cập sẽ bị nhiễm mã từ kho này. Một mô hình khác là back-chaining, hay là kéo-pull, trong đó những kẻ tấn công mang công cụ của mình từ một máy chủ lưu trữ ban đầu bị tổn hại đến máy chủ để chiếm dụng máy mới, cứ như vậy thành một chuỗi nối tiếp.

Điều khiển mạng lưới máy Agent

    Server thì vẫn tồn tại mà được duy trì bởi người khác, còn kẻ tấn công chỉ cần một kênh thông tin của server trong hàng ngàn kênh chat khác, nên sẽ rất khó để phát hiện, dù cho là nó có thể trở thành một kênh khác lạ khi có tới hàng ngàn, chục ngàn người đột nhiên tham gia chỉ trong vài phút. [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.

    Các cách thức tấn công từ chối dịch vụ

      Có nhiều cách để làm một hệ thống ngừng hoạt động, và thường sẽ tồn tại nhiều lỗ hổng trong hệ thống để những kẻ tấn công sẽ cố gắng khai thác hoặc định vị để tấn công vào trong chúng cho đến khi hắn nhận được kết quả mong muốn: mục tiêu bị phải chuyển sang trạng thái offline. Trong phần đầu gói SYN, khách hàng cung cấp số thứ tự - sequence number của mình, một uniqueper- số kết nối sẽ được sử dụng để đếm dữ liệu được gửi đến máy chủ (vì vậy các máy chủ có thể nhận ra và xử lý mất tích, thứ tiệu dữ liệu. không đúng, hoặc dữ liệu lặp đi lặp lại).

      IP Spoofing

      IP Spoofing cũng giúp kẻ tấn công vượt qua cơ chế bảo vệ của một số máy chủ khi họ lưu địa chỉ các khách hàng thường xuyên và dùng nó làm danh sách địa chỉ tin cậy ưu tiên truy cập trong trường hợp bị tấn công.

      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. 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ự bình thường (hợp pháp), nghi ngờ, hoặc hành vi tấn công Dựa trên mô hình ba tầng này (tấn công, nghi ngờ, bình thường), D-WARD áp dụng tỷ lệ giới hạn tại router ở tất cả các giao thông đi ra của một đích cho trước, ưu tiên giao thông kết nối hợp pháp, hơi.

        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

        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. Đ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.

          Ứ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. 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