Tấn công TCP SYN Flood

Thảo luận trong 'Nội Dung Số' bắt đầu bởi Binzz, 15/6/18.

  1. Binzz

    BinzzBinzz là thành viên được đánh giá cao. Vô Danh

    14/10/17
    48
    16
    0
    Nam
    Người Thua Cuộc
    334b Canal St New York, NY
    DDoS attack sử dụng TCP SYN Flood
    SYN Flood là phương thức ddos khá phổ biến hiện nay. Hôm nay tôi sẽ giới thiệu cho các bạn về phương thức tấn công này.
    Tổng quan về giao thức TCP
    TCP là giao thức hướng kết nối connection-oriented nghĩa là nó thiết lập kênh kết nối trước khi truyền dữ liệu đi. TCP thiết lập kết nối bằng quá trình bắt tay 3 bước:
    [​IMG]
    - Bước 1: Đầu tiên client gửi một gói tin mang cờ SYN tới server yêu cầu kết nối.
    - Bước 2: Sau khi nhận được gói tin SYN, server phản hồi lại client bằng 1 gói tin SYN/ACK và chờ xác nhận lại từ client.
    - Bước 3: Client nhận được gói tin SYN/ACK thì sẽ trả lời server bằng gói tin ACK báo với server biết rằng nó đã nhận được gói tin SYN/ACK, kết nối đã được thiết lập và sẵn sàng trao đổi dữ liệu.

    Kịch bản tấn công
    Như vậy ở bước thứ 2, sau khi server gửi gói tin SYN/ACK nó sẽ phải đợi cho đến khi client trả lời hoặc hết thời gian timeout. Bằng việc gửi liên tiếp nhiều gói tin SYN đến server mà không phản hồi lại bằng gói tin ACK buộc server phải đưa các kết nối này vào trong hàng đợi và chờ đợi. Do giao thức TCP sử dụng các khối TCB (Tranmission control block) là cấu trúc dữ liệu của giao thức vận chuyển chứa toàn bộ thông tin của kết nối. Dung lượng tối thiểu của 1 TCB là 280bytes, trong 1 số hệ thống hiện nay con số này còn lên tới 1,300 bytes. Với việc phải chờ đợi các client dẫn đến không gian lưu trữ TCB dần dần cạn kiệt và không thể phục vụ những client hợp lệ khác.

    Có 3 kiểu tấn công chính
    - Tấn công trực tiếp: kẻ tấn công sẽ gửi trực tiếp các gói tin SYN đến server.
    - Tấn công giả mạo: kẻ tấn công sẽ giả mạo IP và gửi gói tin SYN đến server sau đó server sẽ gửi các gói tin phản hồi SYN/ACK tới những IP bị giả mạo, trong trường hợp này những IP đó chính là nạn nhân thứ 2 của cuộc tấn công.
    - Tấn công phân tán trực tiếp: kẻ tấn công sẽ điểu khiển một mạng lưới máy tính đồng loạt gửi các gói tin SYN đến server chiếm băng thông và gây cạn kiệt tài nguyên hệ thống.
    Tiến hành tấn công
    Ở đây tôi sử dụng Tool hping3 để thực hiện tấn công Syn Flood.
    · Tấn công trực tiếp: Sử dụng IP 192.168.1.44 tấn công trực tiếp đến server 192.168.2.45
    [​IMG]
    Gói tin bắt dc trên IP 192.168.1.44:
    [​IMG]
    · Tấn công gián tiếp: Từ Server 192.168.1.44 IP 192.168.1.50 tấn công SYN Flood tới Web Server 192.168.2.45, tuy nhiên trong gói tin SYN đã bị thay đổi Source IP thành 192.168.1.50
    [​IMG]

    Kết quả bắt gói tin trên Server 192.168.1.44:
    [​IMG]

    Kết quả bắt gói tin trên Server 192.168.1.50:
    [​IMG]

    Giải pháp khắc phục
    - Micro blocks: quản trị viên lưu trữ thông tin quan trọng của kết nối trong một ô nhớ giới hạn thay vì lưu trữ toàn bộ thông tin về kết nối trong khi chờ đợi phản hồi từ client. Việc này nhằm tiết kiệm bộ nhớ làm giảm khả năng gây tràn hàng đợi của server.
    - SYN cookies: Server lưu lại tất cả những kết nối vào bảng hash với các thông số: IP, port, và những thông tin khác. Server chỉ cấp bộ nhớ cho kết nối khi nhận được gói tin thứ 3 của quá trình bắt tay 3 bước.
    - RST cookies: khi nhận được gói tin SYN từ client, server cố tình gửi một gói tin không đúng với gói SYN /ACK mà client đang chờ đợi, thông thường client sẽ gửi lại server gói tin RST thông báo rằng nó không nhận được gói tin mong muốn và yêu cầu server gửi lại gói tin trước đó. Như vậy nếu nhận được phản hồi RST từ client thì client này vô hại và server bắt đầu thiết lập kết nối với client.
    - Stack tweaking: quản trị hệ thống có thể nâng cấp không gian hàng đợi để giảm thiểu hậu quả của cuộc tấn công SYN Flood cũng như làm giảm thời gian chờ đợi.
     
    Quan tâm nhiều
    Code ThuThuatOnline bởi SMOD, 10/12/18 lúc 17:41
    Bài viết mới
    Code ThuThuatOnline bởi SMOD, 10/12/18 lúc 17:41
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
© SuperHost 2011 All Rights Reserved. Cám ơn Superhost đã tài trợ Hosting.