BÁO CÁO AN NINH MẠNG HỆ THỐNG PHÒNG THỦ D-WARD (DDoS Network Attack Recognition and Defense) Học viên thực hiện: Đặng Văn Tuấn Lớp: M12CQDT01-B Email: dangvantuan@vdc-net2e.vn Tóm tắt nội dung Ngày xu hướng hội nhập toàn cầu thương mại điện tử ngày phát triển mạnh dẫn đến gia tăng tội phạm công nghệ cao Số lượng công DDoS có chiều hướng gia tăng khiến cho hệ thống quan hành chính, tổ chức kinh tế cần phải hoạt động cách thường xuyên chịu áp lực lớn từ việc truy cập người dùng, mục tiêu công DdoS Do việc đưa hệ thống phòng chống ngày trở nên quan trọng Trong viết ta nghiên cứu hệ thống DWARD, hệ thống phòng chống nguồn khả phát ngăn chặn công từ mạng nguồn Việc triển khai D-WARD giúp cho nhanh chóng phát ngăn chăn công cơng kẻ cơng nhen nhóm Giới thiệu hệ thống D-WARD D-WARD hệ thống phịng chống DDoS triển khai nguồn Nó có nhiệm vụ là: Phát công DDoS ngăn chặn chúng cách điều khiển traffic Cung cấp dịch vụ tốt traffic hợp lệ mạng triển khai hệ thống đích q trình xảy cơng D-WARD đóng vai trị hệ thống độc lập thành phần hệ thống phòng chống phân tán Với vai trò hệ thống độc lập, D-WARD phát công phản ứng lại cơng mà khơng có truyền thơng hay liên lạc với đối tượng khác Nếu D-WARD triển khai hệ thống phân tán, DWARD nâng cao khả phát cách nhận tín hiệu cơng từ thành phần khác Một điểm yếu hệ thống D-WARD giám sát với traffic ngồi từ mạng Các traffic sinh từ mạng khác khơng phải mạng relay qua khơng bị giám sát Ngồi ra, đặc điểm cịn khiến router cài đặt D-WARD mục tiêu công Các thuật ngữ giả thiết Chúng ta biết hệ thống D-WARD cài đặt router nguồn – router đóng vai trị gateway mạng triển khai (mạng nguồn) mạng Internet D-WARD cấu hình cho tập địa nguồn nội mạng thực giám sát tập địa Tập địa gọi tập địa giám sát Tập D-WARD lấy cách thông qua số giao thức cấu hình tay Sau đó, D-WARD giám sát tất traffic tập địa thông qua nội dung luồng kết nối Một luồng tất traffic sinh từ máy tập địa giám sát tới đích mạng bên ngồi Traffic cặp địa IP số cổng địa IP nằm tập địa giám sát địa mạng định nghĩa kết nối D-WARD giám sát luồng, kết nối từ tập địa giám sát tới địa đích cách so sánh gói tin với mẫu định nghĩa trước Sau đó, tổng hợp kết quả, đưa kết luận kết nối có hành động tương ứng với kết luận kết nối Kiến trúc hệ thống D-WARD Một hệ thống D-WARD gồm có thành phần là: thành phần giám sát, giới hạn băng thơng thành phần sách lưu lượng Và thành phần sách lưu lượng thiết phải cài đặt router nguồn Thành phần giám sát theo dõi tất gói tin qua router nguồn tổng hợp thống kê truyền thông chiều tập địa giám sát phần lại Internet Hình 1: Kiến trúc hệ thống D-WARD Hình vẽ thể thành phần kiến trúc D-WARD Ta thấy rằng, kiến trúc giám sát traffic cách kiểm tra tất traffic interfaces router nguồn Những thống kê so sánh với mơ hình hợp lệ cách định kỳ để phân loại luồng kết nối Những kết phân loại thành phần giới hạn băng thông điều chỉnh để tương ứng với luật Danh sách kết nối hợp lệ luật giới hạn băng thơng chuyển tới thành phần sách lưu lượng – thành phần thực thi nhiệm vụ giới hạn băng thơng đảm bảo gói tin hợp lệ chuyển 4.1 Thành phần giám sát Ở thành phần này, thống kê luồng lưu bảng Flow Table, thống kê kết nối lưu bảng Connection Table Những công giả mạo sinh số lượng lớn ghi vào bảng Để tránh làm tràn hai bảng thành phần giám sát thực sách xóa định kỳ bảng theo phương pháp: Xóa tất ghi cũ Khi bảng tràn nhớ, ghi sử dụng bị xóa bỏ Việc phân loại luồng kết nối thực cách định kỳ Trong trình phân loại, D-WARD so sánh thống kê luồng với mơ hình luồng hợp lệ tương ứng với trường giao thức Phân loại luồng sử dụng để phát công Phân loại kết nối sử dụng để phát kết nối hợp lệ kết nối hoạt động bình thường kết nối khác bị giới hạn băng thơng a Thống kê luồng phân loại luồng Mỗi gói tin khỏi mạng vào mạng ảnh hưởng tới ghi Flow Table Vì luồng khỏi mạng sử dụng giao thức giao vận khác ứng dụng khác nhau, ghi luồng bảng Flow Table bao gồm nhiều trường để thống kê theo loại giao thức Có nhiều kiểu giao vận khác D-WARD triển khai loại là: TCP, UDP ICMP Cho nên luồng thống kê dựa kiểu giao vận Các luồng phân loại sau chu kỳ giám sát luồng(FOI – Flow Observation Internal) Trong trình phân loại, D-WARD so sánh thống kê luồng giao thức tương ứng với mơ hình luồng hợp lệ Kết rơi vào kiểu sau đậy: ATTACK: Xảy thống kê trường không phù hợp với mơ hình tương ứng SUSPICIOUS: Xảy thống kê tất trường phù hợp với mơ hình tương ứng luồng trước vừa phân loại “ATTACK” NORMAL: thống kê tất trường phù hợp với mơ hình tương ứng luồng trước chưa bị xác định “ATTACK” Một công dừng lại, luồng phân loại “SUSPICIOUS” khoảng thời gian gọi Compliance Period Tức sau công, băng thông tăng lên cách từ từ Nếu công quay trở lại trước khoảng thời gian bên hết hạn, luồng phân loại công trở lại Ngược lại, luồng phân loại “NORMAL” Sự khác luồng “SUSPICIOUS” luồng “NORMAL” cố gắng làm cho mức độ ảnh hưởng công lặp lại thấp Quá trình phân loại thực thi việc sử dụng mơ hình sau để so sánh: Mơ hình luồng TCP hợp lệ: TCP giao thức phổ biến Internet (chiếm khoảng 90% traffic) Giao thức TCP sử dụng truyền thông chiều để đạt độ tin cậy trình truyền nhận Chúng ta thấy suốt phiên TCP, luồng liệu từ host nguồn tới host đích điều khiển băng thông gửi giảm xuống tức xảy tắc nghẽn Chúng ta định nghĩa TCPrto tỉ lệ tối đa phép số gói tin gửi chia cho số gói tin nhận luồng Luồng bị phân loại luồng “ATTACK” tỉ lệ tổng số gói tin gửi chiacho số gói tin nhận lớn TCPrto Mơ hình luồng ICMP hợp lệ: Giao thức ICMP xác định nhiều kiểu thông điệp khác “timestamp”, “information request” “echo” chúng có kiểu gói tin reply tương ứng Bằng việc sử dụng quan sát này, định nghĩa ICMPrto tỉ lệ đa phép số lượng goi tin echo, timestamp, request chia cho số lượng gói tin reply tương ứng luồng Mơ hình luồng UDP hợp lệ: Chúng ta biết giao thức UDP sử dụng truyền tin không tin cậy D-WARD định nghĩa ngưỡng mơ hình luồng UDP hợp lệ: nconn số lượng kết nối tối đa phép tới đích pconn số lượng tối thiểu gói tin phép kết nối Những ngưỡng giúp hệ thống phát công UDP sử dụng kết nối giả mạo có nhiều kết nối mà có gói tin kết nối D-WARD phân loại luồng cơng ngưỡng bị vi phạm b Thống kê kết nối phân loại kết nối Mỗi gói tin vào không sửa ghi bảng Flow Table mà sửa ghi Connection Table Một kết nối mang traffic giao thức ứng dụng D-WARD thực phân loại kết nối sau khoảng thời gian COI (Connection Observation Internal) Trong trình phân loại, D-WARD so sánh thống kê kết nối tương ứng với mơ hình kết nối hợp lệ Quá trình phân loại đưa kết sau: - GOOD: Xảy thống kê phù hợp với mơ hình tương ứng - BAD: Xảy thống kê không phù hợp với mơ hình tương ứng - TRANSIENT: Xảy khơng có đủ liệu để thực phân loại Cũng tương tự mơ hình luồng hợp lệ, xây dựng mơ hình kết nối hợp lệ Có mơ hình D-WARD sử dụng là: Mơ hình kết nối TCP hợp lệ: Mơ hình kết nối TCP hợp lệ D-WARD tương tự với mơ hình luồng hợp lệ Nó sử dụng giá trị TCPrto giá trị tỉ lệ tối đa phép số gói tin gửi chia cho số gói tin nhận kết nối Kết nối phân loại “GOOD” tỉ lệ số gói tin gửi chia cho số gói tin nhận luồng nhỏ TCPrto Mơ hình kết nối ICMP hợp lệ: Hệ thống phịng chống D-WARD khơng triển khai mơ hình kết nối ICMP hợp lệ traffic ICMP có kết nối theo nghĩa Mặt khác, việc hủy bỏ traffic ICMP hợp lệ q trình cơng khơng gây thiệt hại lớn cho client hợp lệ Mơ hình kết nối UDP hợp lệ: D-WARD sử dụng mơ hình tương ứng với ứng dụng UDP cụ thể Chúng ta liệt kê số loại ứng dụng sử dụng UDP DNS, NTP, multimedia streaming, VoIP, Internet multi-player game, NFS, ứng dụng chat… c Phân loại gói tin Trong công diễn ra, D-WARD khó phân loại kết nối cách xác dựa gói tin khỏi mạng Vì, khơng có đủ thông tin để thực việc phân loại cho gói tin Cho nên, kết nối phân loại “TRANSIENT” traffic điều khiển sách giới hạn băng thơng Hình : Ví dụ vấn đề phân loại gói tin Trong mơ hình này, mạng nguồn NetS D-WARD bảo vệ Chúng ta giả sử có công TCP SYN sử dụng địa mạng giả mạo gửi từ host A tới nạn nhân V D-WARD phát công sau đặt giới hạn băng thơng luồng từ NetS tới nạn nhân V Các client C1 C2 client hợp lệ thiết lập kết nối từ trước tới nạn nhân V kết nối xác định hợp lệ chịu giới hạn băng thông Trong q trình diễn cơng, client hợp lệ C3 muốn khởi tạo kết nối tới nạn nhân V Bằng việc giám sát, DWARD thấy có nhiều gói tin cơng TCP SYN gói tin TCP_SYN hợp lệ Tuy nhiên để phân biệt gói tin TCP SYN hợp lệ cơng dựa vào hoạt động chúng sau thực trình bắt tay bước Nhưng D-WARD không cho phép thực việc bắt tay bước công TCP SYN xảy Cho nên, kết nối hợp lệ kết nối công bị phân loại “TRANSIENT” bị giới hạn băng thơng Vì việc hủy bỏ gói tin ảnh hưởng đến hiệu kết nối, đặc biệt kết nối TCP Giao thức TCP cho việc gói tin tín hiệu tắc nghẽn mạng giảm tốc độ gửi xuống Nếu gói tin liên tiếp dẫn tới cỡ cửa sổ điều khiển (control window) gói tin giảm xuống theo cấp số mũ Do gói tin bị gói tin bắt đầu kết nối cửa sổ điều khiển giảm xuống giá trị thấp Khi truyền lại cửa sổ điều khiển tăng theo cấp số mũ ngưỡng Kỹ thuật thành công việc giải tắc nghẽn tạm thời Tuy nhiên, chúng làm traffic TCP không ưu traffic công để D-WARD phân biệt cung cấp dịch vụ tốt cho kết nối Sau đây, xem xét số giải pháp để cải thiện vấn đề Đầu tiên, giả thiết cookie TCP SYN triển khai vị trí nạn nhân Tấn cơng tràn TCP SYN điều khiển cách sử dụng TCP SYN cookie Như biết, để khởi tạo kết nối TCP, client gửi gói tin TCP SYN tới server Để đáp ứng lại yêu cầu server gửi gói tin SYN+ACK trở lại client Trong gói tin có trường giá trị sequence number sử dụng để ghép gói tin luồng liệu sử dụng giao thức TCP Mà trường sequence number gửi giá trị ngẫu nhiên chọn client server SYN cookie khởi tạo sequence number xây dựng dựa theo yếu tố sau: t nhãn thời gian m dung lượng tối đa segment giá trị server lưu hàng đợi SYN s kết hàm bí mật mã hóa dựa vào địa IP số cổng server, client t Giá trị s có độ dài 24 bit Việc khởi tạo TCP sequence number SYN cookie tính tốn sau: bit là: t mod 32 bit là: mã hóa giá trị m 24 bit cuối cùng: giá trị s Khi client gửi trả lại gói tin TCP ACK trình bắt tay bước tới server để thơng báo lại với server gói TCP SYN+ACK client nhận, client phải cộng thêm vào trường sequence number gói tin SYN+ACK để vào trường Acknowlegment number gói tin trả server Server trừ từ trường Acknowlegment number gói tin để kiểm tra SYN Cookie gửi tới client Quá trình kiểm tra diễn sau: Kiểm tra giá trị t xem có giống với giá trị t gửi gói tin SYN+ACK hay khơng Nếu khác tức gói tin hết hạn Tính tốn lại giá trị s xem có thật SYN Cookie xác hay khơng Giải mã giá trị m từ bit mã hóa SYN cookie để so sánh với m hàng đợi SYN Nếu tất xác gói tin SYN gói tin hợp lệ Ngược lại, nguyên nhân công Hai là, sử dụng kết nối proxy TCP tức D-WARD triển khai TCP SYN cookie thực q trình bắt tay bước thay client phải bắt tay bước với nạn nhân Một client hoàn thành việc bắt tay bước, D-WARD gửi gói tin TCP SYN tới server thiết lập kết nối tới server Tuy nhiên, gặp phải vấn đề sequence number chọn hệ thống phịng chống khơng giống giá trị trường chọn server thật Để giải vấn đề này, thực theo cách: (1) proxy hoàn toàn kết nối, ghi lại sequence number phù hợp, (2) hủy kết nối cách gửi gói tin RST (reset) tới client, gói tin TCP SYN hợp lệ lần sau gói tin TCP SYN gửi gửi trực tiếp tới server Thông thường người ta thường sử dụng phương pháp thứ sử dụng phương pháp gặp phải hạn chế Đó diễn cơng DWARD phải giữ q nhiều thơng tin trạng thái kết nối sửa gói tin kết nối hợp lệ qua 4.2 Thành phần giới hạn băng thông Thành phần giới hạn băng thông điều chỉnh giá trị giới hạn băng thông sau khoảng thời gian giám sát luồng (Flow Observation Interval) Để đưa giá trị giới hạn băng thông cho luồng hoạt động, thành phần phải đọc kết phân loại từ thành phần giám sát băng thông đặt cho luồng trước từ thành phần sách lưu lượng Đầu tiên, xem xét băng thông đặt cho luồng từ trước lấy từ thành phần sách lưu lượng Nó mơ tả thông qua chặng: đầu tiên, số byte luồng chuyển tới nạn nhân gọi Bsent số byte luồng bị hủy gọi Bdropped Hai giá trị xác định khoảng thời gian giám sát luồng (Flow Observation Interval) Để xác định cụ thể, định nghĩa hệ số tuân thủ luồng fcf (Flow Compliance Factor) thương Bsent chia cho tổng Bsent Bdropped giá trị nằm khoảng từ đến Giá trị FCB cao số gói tin bị hủy thấp - Giảm theo hàm mũ: Khi luồng xác định luồng công lần sau khoảng thời gian dài xác định luồng bình thường, băng thơng bị giới hạn cơng thức sau: Trong tham số cấu hình Nếu luồng tiếp tục bị phân loại cơng giới hạn băng thơng giảm theo hàm mũ theo cơng thức: ( ) Trong đó: : băng thông giới hạn : hệ số tuân thủ luồng Luồng có nhiều gói tin bị hủy tức fcf