MỞ ĐẦU Tấn công từ chối dịch vụ phân tán (DDoS) đã có lịch sử hơn 15 năm, gây ra nhiều thiệt hại không nhỏ với các Website hoặc các dịch vụ liên quan đến WWW. Đặc biệt khi lƣu lƣợng truy cập đến các dịch vụ Web chiếm đến 90% [1] lƣu lƣợng truy cập Internet toàn cầu. Hiện nay xuất hiện nhiều hình thức tấn công DDoS tinh vi và phức tạp, một trong những cách thức tấn công hiện nay khó chống nhất là kẻ tấn công sử dụng một mạng lƣới máy tính ma hay botnet - gồm số lƣợng lớn các máy tính bị chiếm quyền điều khiển - đồng loạt gửi lƣợng lớn yêu cầu truy vấn tới máy chủ nạn nhân thông qua các kết nối tự động. Kết quả là các ứng dụng đang chạy trên server bị tê liệt, suy giảm hoặc mất khả năng phục vụ ngƣời dùng hợp lệ.
Kẻ tấn công sử dụng mô hình botnet để gửi các yêu cầu tải trang thực sự mà không có sự giả mạo địa chỉ hoặc thông tin nào làm quá trình phân tích phát hiện lƣu lƣợng bất hợp pháp phức tạp hơn nhiều. Những cuộc tấn công tăng lên hàng giờ, năm 2014, Abor Network [1] thống kê mỗi tháng có đến hơn 100 cuộc tấn công DDoS vào các Website công cộng phổ biến đạt băng thông trên 20Gbps. Do mức độ ảnh hƣởng nghiêm trọng của các cuộc tấn công từ chối dịch vụ phân tán tới chất lƣợng dịch vụ và tính sẵn sàng của mạng internet đã dẫn đến các nghiên cứu sâu rộng nhằm hƣớng tới phòng chống dạng tấn công nguy hiểm này. Một trong những giải pháp tối ƣu nhất là xây dựng cơ chế phân loại đặc tính lƣu lƣợng hợp pháp và lƣu lƣợng tấn công, từ đó có chiến lƣợc ƣu tiên lƣu lƣợng tiếp theo.
Vấn đề cốt lõi là xây dựng các đặc tính mô phỏng chính xác nhất hành vi hợp lệ của ngƣời dùng Web, điều mà thƣờng xuyên thay đổi khi xuất hiện các công nghệ Web mới. Vì vậy phần trọng tâm nghiên cứu của chúng tôi là chứng minh rằng sự thay đổi các đặc tính lƣu lƣợng hợp pháp trong phiên kết nối của ngƣời dùng Web hợp pháp hiện nay làm tăng tỉ lệ phát hiện sai truy cập hợp pháp là tấn công của các phƣơng pháp cũ đến mức không thể chấp nhận đƣợc. Các kết quả mô phỏng cũng đã chứng tỏ phƣơng pháp mới của chúng tôi có thể chống đƣợc các dạng tấn công từ đơn giản đến phức tạp với tỉ lệ sai sót dƣới 5%. Trong khi với các phƣơng pháp cũ áp dụng mô hình dữ liệu mới cho tỉ lệ phát hiện sai rất cao đến 40%.
Các kết quả cũng chỉ ra phƣơng pháp mới có thể chịu đựng đƣợc các cuộc tấn công của hàng trăm ngàn máy tính 14 z zombie mà không làm suy giảm tỉ lệ truy cập thành công của ngƣời dùng hợp pháp quá 10%. Do đó kẻ tấn công sẽ phải huy động lƣợng máy tính zombie lớn gấp nhiều lần hoặc phải trả nhiều chi phí cho đợt tấn công hơn để bù đắp lƣợng băng thông bị suy giảm do hiệu quả của phƣơng pháp mang lại. Về bố cục, các phần của luận văn đƣợc tổ chức nhƣ sau: Chƣơng 1: Trong chƣơng này, chúng tôi trình bày tổng quan về lý do chọn bài toán, phạm vi nghiên cứu, chi tiết những ý tƣởng và cách xử lý của các tác giả hiện tại, điểm yếu của chúng. Từ đó chúng tôi định hƣớng giải quyết từng vấn đề của bài toán đƣa ra.
Chƣơng 2: Ở chƣơng này, chúng tôi giới thiệu những điểm cốt lõi của các mô hình hành vi của lƣu lƣợng Web đã đƣợc công bố. Những thay đổi, tiến hóa của mỗi mô hình tƣơng ứng, ảnh hƣởng của những công nghệ Web hiện đại tới các kết quả của các nghiên cứu trƣớc kia trong mỗi mô hình. Chúng tôi cũng chọn lựa một mô hình phù hợp nhất cho những nghiên cứu cải tiến của chúng tôi. Chƣơng 3: Chúng tôi đƣa ra các đề xuất cải tiến và mô tả phƣơng pháp giải quyết từng vấn đề đặt ra của đề xuất cũng nhƣ mô hình thiết kế tổng thể các thành phần của bộ lọc mới.
Chƣơng 4: Đƣa ra các thông số cấu hình, yêu cầu về các thành phần cho từng trƣờng hợp máy chủ Web không bị tấn công, tấn công rồi từ đó đánh giá hiệu năng của phƣơng pháp mới dựa trên các kịch bản và kết quả thu đƣợc. Phần cuối: Tổng kết và đƣa ra kết luận, những vấn đề cần cải tiến trong tƣơng lai. Với triết lý mô tả chi tiết, đầy đủ tiến trình hình thành ý tƣởng, lập kế hoạch, xây dựng chƣơng trình và cải tiến phƣơng pháp, chúng tôi đã cố gắng mô tả rõ ràng nhất những vấn đề chúng tôi đã đọc, gặp phải hoặc tự đặt câu hỏi trong quá trình nghiên cứu để có đƣợc các giải pháp, kết quả cuối cùng. 15 z CHƢƠNG I: TỔNG QUAN VỀ CƠ SỞ CỦA ĐỀ TÀI 1.1 Lý do chọn chủ đề giảm thiểu thiệt hại từ tấn công DDoS Lịch sử của tấn công từ chối dịch vụ bắt đầu từ những năm 2000 khi lần đầu tiên một cậu thiếu niên 15 tuổi Micheal Calce với biệt hiệu aka_mafiaboy từ Quebec, Canada tấn công vào một loạt các Website thƣơng mại điện tử lớn nhƣ Amazon, eBay, Yahoo, Fifa, Dell Inc làm chúng không thể truy cập trong hàng giờ đồng hồ [1].
Năm 2005, một lập trình viên 18 tuổi tên là Farid Essabar đã viết ra sâu máy tính để lây nhiễm và thành lập mạng Botnet tấn công vào máy chủ của hãng tin CNN làm sập dịch vụ trực tuyến của hãng. Hình thức tấn công này đã mở ra một kỷ nguyên mới cho các phƣơng pháp tấn công DDoS mới, nguy hiểm và tinh vi hơn. Ngày nay DDoS đã sử dụng nhiều mánh khóe, kỹ thuật mới hơn nhƣ kỹ thuật khuếch đại tấn công, sử dụng máy chủ điều khiển lệnh từ xa… làm mức độ thiệt hại tăng lên đáng kể. Điển hình là vụ tấn công Spamhus năm 2013 với mức băng thông có thời điểm đến 300Gbps, thậm chí mạng Internet toàn cầu cũng bị ảnh hƣởng khi truy cập vào hầu hết các website đều chậm đi rõ rệt.
Việc không có một cơ chế hiệu quả hoàn toàn để chống lại dạng tấn công nguy hiểm và gây nhiều thiệt hại này là một chủ đề công nghệ sôi động, đƣợc nhiều nhà nghiên cứu quan tâm, chia sẻ và học hỏi kinh nghiệm. Bất cứ công trình nào mang lại hiệu quả phòng chống hoặc giảm thiểu thiệt hại do DDoS cũng đều mang lại lợi ích rất lớn cho thƣơng mại toàn cầu, có khả năng triển khai rộng rãi tạo ra một môi trƣờng mạng Internet an toàn. Đây là động lực chính giúp chúng tôi lựa chọn chủ đề này.2 Phạm vi nghiên cứu Tấn công DDoS có nhiều dạng và để xây dựng đƣợc một giải pháp phòng thủ hiệu quả cho tất cả các dạng tấn công không phải là một việc làm dễ dàng cũng nhƣ khó khả thi trong thực tế. Thực tế để triển khai giải pháp giảm thiểu tấn công vào một mạng cần bảo vệ, ngƣời ta áp dụng tổng hợp các phƣơng pháp rà soát, phát hiện 16 z và cơ chế ngăn chặn khác nhau.
Để tập trung vào nội dung trọng tâm chúng tôi đã nghiên cứu giải quyết, chúng tôi chọn chỉ một số dạng tấn công phổ biến quen thuộc rồi từ đó sẽ áp dụng giải pháp đề xuất để đánh giá tính hiệu quả và hạn chế của nó. Dựa theo các tiêu chí khác nhau thì các chuyên gia có sự phân chia về các dạng tấn công DDoS khác nhau. Ở đây chúng tôi chọn phƣơng pháp phân loại của các chuyên gia tại các công ty đang cung cấp các giải pháp phòng chống DDoS hiệu quả đƣợc nhiều ngƣời sử dụng vì chúng phản ánh thực tế tin cậy nhất hiện trạng tình trạng tấn công DDoS hiện nay: Tấn công vào băng thông (Volumn based Attack): Với dạng tấn công này, mục tiêu của kẻ tấn công là làm cạn kiệt băng thông của mục tiêu thông qua lƣu lƣợng phát sinh cực lớn. Thông thƣờng tính bằng Gbps.
Một số phƣơng pháp tấn công phổ biến là: UDP Flood, ICMP Flood. Tấn công vào giao thức (Protocol Attack): Đây là dạng tấn công nhằm mục đích làm cạn kiệt tài nguyên của máy chủ (bộ nhớ, CPU) hoặc các thiết bị trung gian phục vụ mạng nhƣ tƣờng lửa, hệ thống cân bằng tải, hệ thống chống xâm nhập mạng… Thông thƣờng ngƣời ta đo bằng số gói trên giây. Một số phƣơng pháp tấn công phổ biến của dạng này là: SYN Flood, Ping of Death, Smurf DDoS…vv. Tấn công vào ứng dụng (Application based Attack): Với các dạng tấn công này, mục tiêu chủ yếu của kẻ tấn công là hạ gục Webserver nhƣ Apache, IIS… Đơn vị đo của kiểu tấn công này là số yêu cầu trên giây.
Một số dạng tấn công phổ biến của nó là Shrew Attack, Slowloris, Low rate Attack. Phƣơng pháp tấn công phức tạp nhất: Tấn công DDoS sử dụng mạng máy tính ma botnet đƣợc sử dụng rộng rãi và mang lại hiệu quả nhất. Bƣớc đầu tiên là kẻ tấn công sẽ tìm cách lây nhiễm các Trojian Horse lên máy tính của ngƣời dùng rồi tìm cách chiếm quyền điều khiển máy tính đó – máy sau khi bị chiếm quyền điều khiển này gọi là zombie. Kẻ tấn công sau đó có thể sử dụng máy tính của ngƣời dùng vào các mục đích khác nhau, trong đó có sử dụng làm địa chỉ nguồn tấn công DDoS, mà ngƣời dùng không hề hay biết.
Mô hình tấn công sử dụng botnet giản lƣợc đƣợc minh họa nhƣ sau: 17 z Hình 1 Mô hình tấn công DDoS sử dụng mạng máy tính ma botnet Nhƣ vậy với việc sử dụng botnet thì kẻ tấn công có thể lợi dụng mỗi zombie nhƣ một ngƣời dùng hợp pháp thực thụ để tiến hành bất kỳ kiểu tấn công nào vào mục tiêu mà hắn muốn. Mô hình tấn công vào ứng dụng Web sử dụng botnet và phƣơng pháp phòng chống là mục tiêu nghiên cứu chính của đề tài này do kiểu tấn công này gây thiệt hại lớn và khó chống hơn nhiều so với các phƣơng pháp tấn công khác.2 Những kết quả của các nghiên cứu liên quan và đánh giá Hiện đã có rất nhiều những nghiên cứu, thử nghiệm và đánh giá theo cách giảm thiểu thiệt hại do tấn công DDoS bằng cách phân biệt lƣu lƣợng bất thƣờng từ kẻ tấn công và lƣu lƣợng hợp pháp sinh ra khi ngƣời dùng bình thƣờng tƣơng tác với website. Chúng tôi thống kê lại các nghiên cứu theo hai chủ đề chính: 1.1 Phƣơng pháp tấn công DDoS DDoS (Distributed Denial of Service) là một nỗ lực tấn công làm cho ngƣời dùng không thể tiếp tục sử dụng dịch vụ hoặc tài nguyên mạng [2].