v DANH MỤC CÁC THUẬT NGỮ VÀ TỪ VIẾT TẮT Ký hiệu Giải thích DoS Tấn công từ chối dịch vụ Denial of Service DDoS Tấn công từ chối dịch vụ phân tán Distributed Denial Internet Tập hợp
Trang 1i
LỜI CAM ĐOAN
Luận văn thạc sỹ này do tôi nghiên cứu, thực hiện dưới sự hướng dẫn của Thầy giáo TS Nguyễn Khanh Văn và sự giúp đỡ về triển khai thực nghiệm của NCS Trần Mạnh Thắng – hiện đang công tác tại Cục An toàn thông tin – Bộ thông tin và Truyền thông Với mục đích tìm hiểu, học tập, nghiên cứu để nâng cao kiến thức và trình độ chuyên môn tôi đã làm luận văn này một cách cầu thị, nghiêm túc và hoàn toàn trung thực
Để hoàn thành bản luận văn này, ngoài các tài liệu tham khảo đã liệt kê, tôi xin cam đoan không sao chép toàn văn các công trình nghiên cứu hoặc luận văn tốt nghiệp của người khác
Tôi xin chân thành cảm ơn Thầy giáo TS Nguyễn Khanh Văn, NCS Trần Mạnh Thắng đã hướng dẫn tận tình chu đáo để tôi hoàn thành đề tài này
Hà nội, tháng 9 năm 2015
Học viên
Nguyễn Đình Mỹ
Trang 2ii
MỤC LỤC
LỜI CAM ĐOAN i
MỤC LỤC ii
DANH MỤC CÁC THUẬT NGỮ VÀ TỪ VIẾT TẮT v
DANH MỤC CÁC HÌNH VẼ, BẢNG BIỂU vi
CHƯƠNG MỞ ĐẦU 1
CHƯƠNG 1: TỔNG QUAN VỀ TẤN CÔNG TỪ CHỐI DỊCH VỤ PHÂN TÁN 6
1.1 Nghiên cứu tổng quan về tấn công từ chối dịch vụ phân tán 6
1.1.1 Giới thiệu về DDoS 6
1.1.2 Các giai đoạn của một cuộc tấn công DDoS([4]) 7
1.1.3 Kiến trúc tổng quan của mạng tấn công DDoS 7
1.1.4 Phân loại tấn công DDoS 11
1.1.5 Một số đặc tính của công cụ tấn công DDoS 17
1.1.6 Một số công cụ tấn công DDoS 21
1.2 Tác động nghiêm trọng và mức độ ảnh hưởng của các cuộc tấn công DDoS trong nước và trên thế giới 25
1.2.1 Đối với trong nước 25
1.2.2 Trên thế giới 27
CHƯƠNG 2: NGHIÊN CỨU THUẬT TOÁN PHÁT HIỆN VÀ GIẢM THIỂU MỘT SỐ HÌNH THỨC TẤN CÔNG DDOS 31
2.1 Một số thuật toán phát hiện tấn công DDoS 31
2.1.1 Thuật toán ngưỡng giới hạn khả năng đáp ứng([3]) (Adaptive Threshold Algorithm) 32
2.1.2 Thuật toán tổng tích lũy([7]) (Cumulative sum – CUSUM) 33
2.1.3 Thuật toán theo dõi IP nguồn([7]) (Source IP Address Monitoring-SIM) 35 2.2 Phân tích phát hiện tấn công DDoS 36
2.2.1 Hệ thống phát hiện DDos hiện nay 36
2.2.2 Các yêu cầu đối với môt hệ thống phát hiện DDoS 37
Trang 3iii
2.2.3 Phát hiện các cuộc tấn công DDoS 38
2.3 Phòng chống tấn công DDoS 38
2.4 Một số giải pháp phòng chống tấn công DDoS 41
2.4.1 Giải pháp chống DDoS của Cisco 41
2.4.2 Giải pháp chống DDoS của Abor 44
2.4.3 Giải pháp chống DDoS của Huawei 45
CHƯƠNG 3: TÌM HIỂU ỨNG DỤNG SNORT TRONG VIỆC GIẢM THIỂU HÌNH THỨC TẤN CÔNG DDOS 46
3.1 Sơ lược về IDS/IPS 46
3.1.1 Định nghĩa về IDS/IPS 46
3.1.2 Sự khác nhau giữa IDS và IPS 47
3.1.3 Phân loại IDS/IPS([5]) 48
3.1.3.1 Network based IDS – NIDS 48
3.1.3.2 Host based IDS – HIDS 51
3.1.4 Cơ chế hoạt động của hệ thống IDS/IPS 52
3.1.4.1 Phát hiện sự lạm dụng 52
3.1.4.2 Phát hiện sự bất thường 53
3.2 Tìm hiểu sản phẩm Snort trong việc giảm thiểu hình thức tấn công DDoS 56
3.2.1 Giới thiệu về Snort 56
3.2.2 Kiến trúc của Snort([5]) 57
3.2.2.1 Modun thu thập và giải mã gói tin([5]) (Packet Sniffer) 58
3.2.2.2 Mô đun tiền xử lý([5]) (Preprocessors) 59
3.2.2.3 Mô-đun phát hiện (Detection Engine) 61
3.2.2.4 Mô-đun cảnh báo và log([5]) (Alerting/Logging) 62
3.2.3 Bộ luật của Snort([5]) 63
3.2.3.1 Giới thiệu về bộ luật 63
3.2.3.2 Cấu trúc luật của Snort 64
3.2.3.3 Phần tiêu đề (Rule header) 66
3.2.3.4 Phần tùy chọn([5])(Rule Option) 71
Trang 4iv
CHƯƠNG 4: TRIỂN KHAI VÀ THỰC NGHIỆM HỆ THỐNG 73
4.1 Chuẩn bị cài đặt máy chủ 75
4.1.1 Cài đặt máy chủ ứng dụng web 75
4.1.2 Cài đặt máy chủ giám sát, cảnh báo của hệ thống 75
4.2 Chuẩn bị nguồn tấn công 77
4.3 Tiến hành thử nghiệm theo kịch bản 77
KẾT LUẬN 82
TÀI LIỆU THAM KHẢO 84
Trang 5v
DANH MỤC CÁC THUẬT NGỮ VÀ TỪ VIẾT TẮT
Ký hiệu Giải thích
DoS Tấn công từ chối dịch vụ (Denial of Service)
DDoS Tấn công từ chối dịch vụ phân tán (Distributed Denial
Internet Tập hợp các mạng liên kết với nhau
Router Bộ/thiết bị định tuyến
Switch Bộ/thiết bị chuyển mạch
Traffic Lưu lượng
Website Trang web
Threshold Ngưỡng
NIDS Hệ thống phát hiện xâm nhập dựa trên mạng
IIS Các dịch vụ thông tin internet
Trang 6vi
DANH MỤC CÁC BẢNG BIỂU, HÌNH VẼ
Bảng 1.1 Tập lệnh của Handler 20
Bảng 1.2 Tập lệnh của Agent 21
Hình 1.1 Mô hình Agent – Handler 8
Hình 1.2 Kiến trúc mạng tấn công kiểu Agent – Handler 9
Hình 1.3 Kiến trúc mạng tấn công kiểu dựa vào mạng IRC 10
Hình 1.4 Phân loại tấn công kiểu DDoS 11
Hình 1.5 Tấn công khuếch đại 13
Hình 1.6 Mô tả về bắt tay ba bước 15
Hình 1.7 Tấn công TCP SYN 15
Hình 1.8 Công cụ tấn công DDoS 17
Hình 1.9 Giao diện của Slowloris đang hoạt động 22
Hình 1.10 Giao diện hoạt động của LOIC 23
Hình 1.11 Kết quả theo dõi khi thực hiện tấn công bằng LOIC vào máy chủ web 24
Hình 1.12 Thống kê DDoS Intelligence, Quý 1 (xanh)và Quý 2 (đỏ) năm 2015 29
Hình 2.1 Biểu đồ trực quan của thuật toán ngưỡng giới hạn đáp ứng([9]) 33
Hình 2.2 Sơ đồ khối của thuật toán SIM 35
Hình 2.3 Địa điểm khác nhau để thực hiện việc phát hiện và phản ứng DDoS([6]) 39
Hình 2.4 Một phân loại của các cơ chế phòng chống tấn công ngập lụt DDoS mức mạng/giao vận thông dựa trên vị trí triển khai([6]) 40
Hình 2.5 Cách phân loại theo cơ chế phòng vệ chống lại các cuộc tấn công DDoS([6]) 41
Hình 3.1 Các vị trí đặt IDS trong mạng 47
Hình 3.2 Mô hình NIDS 48
Hình 3.3 Mô hình kiến trúc hệ thống Snort 57
Hình 3.4 Mô tả chức năng của mô-đun Packet Sniffer 58
Hình 3.5 Xử lý một gói tin Ethernet 59
Hình 3.6 Mô-đun tiền xử lý của Snort 61
Hình 3.7 Sơ đồ mô-đun phát hiện 62
Trang 7vii
Hình 3.8 Sơ đồ mô-đun cảnh báo và log 63
Hình 3.9 Cấu trúc luật của Snort 65
Hình 3.10 Cấu trúc Header luật của Snort 65
Hình 4.1 Đề xuất mô hình để triển khai phòng chống DDoS 73
Hình 4.2 Mô hình tác giả triển khai thực nghiệm 74
Hình 4.3 Máy chủ ứng dụng web đang hoạt động 75
Hình 4.4 Giao diện phần mềm quản lý cảnh báo 77
Hình 4.5 Ứng dụng web hoạt động bình thường 77
Hình 4.6 Trạng thái Snort đã được bật, chưa có cảnh báo nào 78
Hình 4.7 Ứng dụng giám sát cảnh báo cũng không ghi nhận được cảnh báo nào được đưa ra và lưu vào CSDL 78
Hình 4.8 Giao diện màn hình khi sử dụng hping3 để tấn công 79
Hình 4.9 Ứng dụng website bị tấn công tê liệt 79
Hình 4.10 Giao diện cảnh báo trên Terminal của Snort 80
Hình 4.11 Giao diện cảnh báo của ứng dụng giám sát 80
Hình 4.12 Giao diện các IP nguồn tấn công được lưu trên ứng dụng giám sát 81
Trang 8Do đó, bên cạnh việc thiết kế, xây dựng HTTT (trang/cổng thông tin điện tử, thư điện tử, các ứng dụng tác nghiệp,…) hiện đại, đáp ứng nhu cầu thông tin và hỗ trợ xử lý công việc Các cơ quan, tổ chức cần phải bảo vệ tốt những hệ thống đó, đảm bảo hoạt động ổn định và tin cậy Vì vậy, đảm bảo an toàn và bảo mật thông tin
là vấn đề cấp thiết trong mọi cơ quan, tổ chức, doanh nghiệp
Nhiệm vụ đặt ra của chúng ta là cần xây dựng chính sách bảo mật đầy đủ, rõ ràng Phải xác định rõ tài nguyên gì cần phải bảo vệ, bảo vệ mức nào Mặt khác, trong tình hình hiện nay tính chất, mức độ và phạm vi của các cuộc tấn công vào HTTT ngày càng gia tăng bởi việc tiếp cận với các kỹ thuật và sử dụng các công cụ tấn công từ nhiều nguồn trên internet rất dễ dàng, các phần mềm hỗ trợ tấn công được thiết kế tinh vi, tính năng mạnh và đặc biệt là rất dễ vận hành sử dụng Tin tặc thường nhắm hệ thống của các tổ chức, cơ quan và thông tin cá nhân vì nhiều mục đích như: cạnh tranh trong kinh doanh, đánh cắp thông tin cá nhân để thu lợi tài chính, phục vụ chính trị,thể hiện năng lực,…
Tất cả những mối nguy hại trên cho thấy vai trò của vấn đề đảm bảo an toàn thông tin rất quan trọng đối với cuộc chiến phức tạp, khốc liệt và liên tục với mạng lưới tấn công mà thế giới cũng như Việt Nam đã, đang và sẽ xảy ra Dù là tổ chức, doanh nghiệp hay cá nhân thì mục tiêu cần đạt được đối với đảm bảo an toàn thông
Trang 9Khái niệm về tấn công từ chối dịch vụ (DoS)
Tấn công từ chối dịch vụ (Denial of Service - DoS) là dạng tấn công nhằm ngăn chặn người dùng hợp pháp truy nhập các tài nguyên mạng Tấn công DoS đã xuất hiện từ khá sớm, vào đầu những năm 80 của thế kỷ XX Tấn công từ chối dịch
vụ phân tán (Distributed Denial of Service - DDoS) là một dạng phát triển ở mức độ cao của tấn công DoS được phát hiện lần đầu tiên vào năm 1999 Sự khác biệt cơ bản của tấn công DoS và DDoS là phạm vi tấn công Lưu lượng tấn công DoS thường phát sinh từ một hoặc một số ít host nguồn, còn lưu lượng tấn công DDoS thường phát sinh từ rất nhiều host nằm rải rác trên mạng Internet Hiện nay, có hai phương pháp tấn công DDoS chủ yếu Phương pháp thứ nhất, kẻ tấn công gửi các gói tin được tạo theo dạng đặc biệt gây lỗi trong giao thức truyền hoặc lỗi trong ứng dụng chạy trên máy nạn nhân Một dạng tấn công DDoS điển hình theo phương pháp này là tấn công khai thác lỗ hổng an ninh của các giao thức hoặc dịch vụ trên máy nạn nhân Phương pháp tấn công DDoS thứ hai phổ biến hơn phương pháp thứ nhất, gồm hai dạng: (1) dạng tấn công DDoS gây ngắt quãng kết nối của người
Trang 10Kể từ cuộc tấn công DDoS đầu tiên được xác nhận vào năm 1999([3]), nhiều cuộc tấn công DDoS gây ngập lụt đã được thực hiện vào hệ thống mạng của các công ty và các tổ chức Hầu hết các cuộc tấn công DDoS gây ngập lụt cho đến hiện nay đều tập trung vào làm ngắt quãng hoặc ngừng dịch vụ chạy trên hệ thống nạn nhân Hậu quả là làm giảm doanh thu, tăng chi phí phòng chống và phục hồi dịch
vụ Ví dụ, vào tháng Hai năm 2000, hệ thống mạng của công ty Internet Yahoo phải hứng chịu đợt tấn công DDoS đầu tiên làm các dịch vụ của công ty phải ngừng hoạt động trong 2 giờ, gây thiệt hại lớn về doanh thu quảng cáo Tháng 2/2004, một đợt tấn công DDoS rất lớn xuất phát từ một lượng rất lớn các máy tính bị nhiễm virus Mydoom làm trang web của tập đoàn SCO không thể truy nhập Vào tháng 12/2010, một nhóm tin tặc có tên là “Anonymous” đã tạo ra một loạt các cuộc tấn công DDoS gây ngừng hoạt động các trang web của các tổ chức tài chính, như Mastercard, Visa International, Paypal và PostFinance Tháng 9/2012, một đợt tấn công DDoS rất lớn do nhóm tin tặc “Izz ad-Din al-Qassam Cyber Fighters” thực hiện gây ngắt quãng hoặt ngừng hoạt động các trang web ngân hàng trực tuyến của
9 ngân hàng lớn của Mỹ Các dạng tấn công DDoS được thực hiện ngày một nhiều với quy mô ngày một lớn và tinh vi hơn nhờ sự phát triển của các kỹ thuật tấn công
và sự lan tràn của các công cụ tấn công
Tại Việt Nam, gần đây là vào tháng 6/2013, rất nhiều các trang báo điện tử của Việt Nam, trong đó có những trang với lượng truy cập lớn như báo điện tử Dân trí (http://dantri.com.vn), báo điện tử Vietnamnet (http://vietnamnet.vn) và báo Tuổi trẻ (http://tuoitre.com.vn) đã phải hứng chịu một đợt tấn công DDoS vô cùng mạnh
mẽ
Trang 114
Tháng 10/2014 hàng loạt website thuộc hệ thống của Công ty Cổ phần truyền thông Việt Nam (VCCorp) và các website được hỗ trợ vận hành bởi đơn vị này đồng loạt gặp sự cố
Các cuộc tấn công từ chối dịch vụ phân tán gây ra nhiều hậu quả nghiêm trọng trên thế giới cũng như tại Việt Nam Hiện nay chưa có giải pháp nào có thể ngăn chặn triệt để kiểu tấn công này, các cơ quan đơn vị ít khi quan tâm những vấn đề về cảnh báo, chuẩn bị phương án đối phó với dạng này, hầu hết các khi có tấn công dạng này xảy ra, cơ quan, tổ chức thường thuê các thiết bị và nhân lực xử lý sự cố, hoặc tận dụng các mối quan hệ để nhận được sự hỗ trợ của các cơ quan chức năng mà chưa có giải pháp lâu dài và bài bản Việc nghiên cứu đưa ra giải pháp cảnh báo và hướng đến là xây dựng một hệ thống chống tấn công DDoS là một nhu cầu thực tế cấp thiết hiện nay Vì vậy, đề tài sẽ tập trung nghiên cứu theo hướng đề xuất, giới thiệu giải pháp để tiến tới xây dựng hệ thống phòng chống tấn công DDoS hiệu quả trong thực tế
Bài toán đặt ra và kết quả đạt đƣợc khi nghiên cứu
Nhận thức được các vấn đề nêu trên, mục đích cuối cùng là đảm bảo ATTT cho các hệ thống đối với các cuộc tấn công nói chung Cụ thể đảm bảo ATTT, phát hiện ngăn chặn được tấn công DDoS bằng cách nào? Mô hình nào để giảm thiểu hình thức tấn công DDoS hiệu quả? Công tác dự báo, cảnh báo có vai trò như thế nào đối với phòng chống tấn công DDoS để từ đó đề xuất mô hình nhằm giảm thiểu một số hình thức tấn công DDoS Chính vì những lý do nêu trên, tác giả đã lựa chọn đề tài Nghiên cứu thuật toán phát hiện và giảm thiểu một số hình thức tấn công DoS Nội dung cụ thể của luận văn bao gồm một số vấn đề chính và liên quan như sau:
- Khảo sát tổng quan về tấn công từ chối dịch vụ phân tán (Chương 1): Tác giả trình bày các thu hoạch cụ thể của mình trong quá trình nghiên cứu khảo sát về tấn công
từ chối dịch vụ phân tán; tìm hiểu tác động nghiệm trọng và mức độ ảnh hưởng của các cuộc tấn công dịch vụ phân tán
- Trình bày một số thuật toán phát hiện tấn công từ chối dịch vụ phân tán (Chương 2): Tác giả trình bày nội dung các thuật toán, kết hợp với áp dụng các thuật toán vào thực tế Nghiên cứu đề xuất mô hình triển khai giải pháp cảnh bảo nhằm giảm thiểu hình thức tấn công từ chối dịch vụ phân tán
Trang 12- Triển khai mô hình thực nghiệm theo đề xuất của tác giả nhằm cảnh báo sớm để giảm thiểu tác hại của hình thức tấn công DDoS gây ra (Chương 4) Từ đó có thể
đề xuất hướng nghiên cứu và ứng dụng trong thời gian tới đối với nhiệm vụ giảm
thiểu hình thức tấn công từ chối dịch vụ phân tán
Trong quá trình nghiên cứu, thực hiện đề tài tác giả đã đạt được một số kết quả như: hiểu được các vấn đề cơ bản nguy cơ tiềm ẩn và hậu quả khi bị tấn công DDoS; Tìm hiểu các thuật toán phát hiện tấn công DDoS, trên cơ sở đó tìm hiểu sản phẩm Snort đối với phát hiện, cảnh báo để giảm thiệu tác của tấn công dạng này; Đề xuất và triển khai thực nghiệm mô hình nhằm phát hiện và cảnh báo tấn công DDoS hiệu quả
Trang 131.1 Nghiên cứu tổng quan về tấn công từ chối dịch vụ phân tán
1.1.1 Giới thiệu về DDoS
Ngày 7/2/2000, yahoo.com đã phải ngưng phục vụ hàng trăm triệu user trên toàn thế giới nhiều giờ liền Vài giờ sau, Yahoo đã tìm ra nguyên nhân gây nên tình trạng này là do họ phải gánh chịu một đợt tấn công DDoS với quy mô vài nghìn máy tính liên tục gửi hàng triệu yêu cầu đến các máy chủ dịch vụ làm các máy chủ này không thể phục vụ các user thông thường khác
Tiếp tục sau đó ít ngày, một sự kiện tương tự diễn ra nhưng có phần “ồn ào” hơn do một trong các nạn nhân mới là hãng tin CNN, Fifa.com, amazon.com, dell.com, Zdnet.com, E-trade.com, Ebay.com Đây là những công ty lớn thuộc nhiều lĩnh vực khác nhau Theo Yankke Group, tổng thiệt hại do cuộc tấn công lên đến 1.2 triệu USD, nhưng không đáng kể bằng sự mất mát về lòng tin của khách hàng, uy tín của các công ty là không thể tính được Theo kết quả điều tra đã được công bố thì cậu bé 15 tuổi người Canada, với nickname “mafiaboy” đã tìm tòi và tải
về một số chương trình và công cụ của các hacker Cậu bé này đã dùng một công cụ DDoS có tên là TrinOO để gây nên các cuộc tấn công kiểu DDoS khủng khiếp trên Một điểm đáng lưu ý khác là Mafiaboy bị bắt do tự khoe khoang trên các phòng chát công cộng, không ai tự truy tìm được dấu vết của cậu bé này([6])
Từ đó đến nay, trên thế giới cũng như tại Việt Nam, có rất nhiều công ty khổng lồ khác đã gục ngã dưới các cuộc tấn công kiểu DDoS, trong đó có cả Microsoft Tuy nhiên cuộc tấn công trên là điển hình nhất về DDoS, nó nói lên một đặc điểm của DDoS: “Rất dễ thực hiện, hầu như không thể tránh, hậu quả rất nặng nề”
Trang 147
1.1.2 Các giai đoạn của một cuộc tấn công DDoS ([4])
Một cuộc tấn công DDoS thông thường gồm bao gồm 03 giai đoạn
Giai đoạn 1: Giai đoạn chuẩn bị
- Chuẩn bị công cụ là giai đoạn quan trọng của cuộc tấn công, công cụ sử dụng cho tấn công thông thường hoạt động theo mô hình client-server Hacker có thể viết phần mềm này hay tải từ Internet một cách dễ dàng, có rất nhiều công cụ DDoS được cung cấp miễn phí trên mạng
- Kế tiếp, hacker dùng các kỹ thuật tấn công khác để nắm trọn quyền một số host trên mạng, tiến hành cài đặt các phần mềm cần thiết trên các host này Việc cấu hình và thử nghiệm toàn bộ mạng tấn công (attack network - bao gồm mạng lưới các máy đã bị lợi dụng cùng với các phần mềm đã được thiết lập trên đó, máy của hacker hoặc một số máy khác đã được thiết lập tạo thành các điểm phát động tấn công) cũng sẽ được thực hiện trong giai đoạn này
Giai đoạn 2: Giai đoạn xác định mục tiêu và thời điểm
- Sau khi xác định mục tiêu lần cuối, hacker sẽ có hoạt động điều chỉnh mạng tấn công chuyển hướng tấn công về phía mục tiêu
- Yếu tố thời điểm sẽ quyết định mức độ thiệt hại và tốc độ đáp ứng của mục tiêu đối với cuộc tấn công
Giai đoạn 3: Phát động tấn công và xóa dấu vết
Đúng thời điểm đã định, hacker phát động tấn công từ máy của mình Lệnh tấn công này có thể đi qua nhiều cấp mới đến host thực sự tấn công Toàn bộ mạng tấn công (có thể lên đến hàng nghìn máy), sẽ vắt cạn năng lực của máy chủ mục tiêu, ngăn chặn không cho các máy chủ này hoạt động như thiết kế
- Sau một khoảng thời gian tấn công thích hợp, Hacker tiến hành xóa mọi dấu vết có thể truy ngược đến mình Việc này đòi hỏi các kỹ thuật xóa dấu vết ở trình độ cao
1.1.3 Kiến trúc tổng quan của mạng tấn công DDoS
Nhìn chung mạng tấn công DDoS có hai mô hình chính:
+ Mô hình Agent – Handler
+ Mô hình IRC – Based (mô hình dựa vào mạng trao đổi thông tin)
Trang 158
Dưới đây là sơ đồ chính phân loại các kiểu tấn công DDoS (Hình 1.1.)
Mô hình Agent - Handler
Hình 1.1 Mô hình Agent – Handler Theo mô hình này, mạng tấn công gồm 3 thành phần: Agent, Client và Handler:
Client: là thành phần phần mềm cơ sở để hacker điều khiển mọi hoạt động của mạng tấn công
Handler: là một thành phần phần mềm trung gian giữa Agent và Client, làm nhiệm vụ giúp Client điều khiển các Agent
Agent: là thành phần phần mềm thực hiện sự tấn công vào mục tiêu, nhận điều khiển từ Client thông qua các Handler
Kiến trúc mạng tấn công kiểu Agent – Handler được mô tả trên Hình 1.2
Kênh riêng / Kênh bí mật
Trao đổi Client –
Handler
Trao đổi Client – Handler
Mạng tấn công DDoS
Kênh công cộng
Trang 169
Hình 1.2 Kiến trúc mạng tấn công kiểu Agent – Handler Hacker sẽ từ Client giao tiếp với Handler để xác định số lượng Agent đang hoạt động, điều chỉnh thời điểm tấn công và cập nhật các Agent Tùy theo cách Hacker thiết lập cấu hình mạng tấn công, các Agent sẽ chịu sự quản lý của một hay nhiều Handler Thông thường Hacker sẽ đặt phần mềm Handler trên một bộ định tuyến hay một máy chủ có lưu lượng mạng lưu thông nhiều Việc này nhằm làm cho các giao tiếp giữa Client, Handler và Agent khó bị phát hiện Các giao tiếp này thông thường xảy ra trên các giao thức TCP, UDP hay ICMP Chủ nhân thực sự của các máy tính bị cài Agent thông thường không hề hay biết họ bị lợi dụng vào cuộc tấn công kiểu DDoS, do người dùng không đủ khả năng phát hiện Mặt khác, các Agent được cài dưới dạng cửa hậu (Backdoor) thường chỉ sử dụng rất ít tài nguyên hệ thống làm cho người dùng hầu như không thể thấy ảnh hưởng của chúng đến hiệu năng của hệ thống
Mô hình dựa vào mạng IRC (IRC – Based)
Internet Relay Chat (IRC) là một hệ thống liên lạc trực tuyến qua mạng Internet, IRC cho phép người dùng tạo một kết nối đến đa điểm đến nhiều người dùng khác và trao đổi thảo luận (chat) theo thời gian thực Kiến trúc của mạng IRC bao gồm nhiều máy chủ IRC trên khắp mạng giao tiếp với nhau qua nhiều kênh Mạng IRC cho phép người dùng tạo ba loại kênh: kênh chung; kênh riêng; kênh bí mật
Victim
Trang 17- Kênh bí mật (Secret Channel): Tương tự kênh riêng nhưng không thể xác định bằng bộ định vị kênh (channel locator)
Kiến trúc mạng tấn công của kiểu dựa vào IRC được mô tả trên hình 1.3 như sau
Hình 1.3 Kiến trúc mạng tấn công kiểu dựa vào mạng IRC
Mô hình mạng tấn công dựa vào IRC cũng tương tự như mô hình Agent – Handler nhưng mô hình này sử dụng các kênh giao tiếp IRC làm phương tiện giao tiếp giữa Client và Agent (không sử dụng Handler) Sử dụng mô hình này, Hacker còn có thêm một số lợi thế khác như:
+ Các giao tiếp dưới dạng bản tin trao đổi (chat message) làm cho việc phát hiện ra chúng là vô cùng khó khăn
+ Lưu lượng IRC có thể di chuyển trên mạng với số lượng lớn mà không bị nghi ngờ
Agent
Victim IRC NETWORK
Trang 1811
+ Không cần phải duy trì danh sách các Agent, hacker chỉ cần đăng nhập (logon) vào máy chủ IRC là đã có thể nhận được báo cáo về trạng thái các Agent do các kênh gửi về
+ Sau cùng: IRC cũng là một môi trường chia sẻ tệp tin tạo điều kiện phát tán các mã Agent lên các máy khác
1.1.4 Phân loại tấn công DDoS
Nhìn chung, có rất nhiều biến thể của kỹ thuật tấn công DDoS nhưng nếu nhìn dưới góc độ chuyên môn thì có thể chia các biến thề này thành hai loại dựa trên mục đích tấn công: Làm cạn kiệt băng thông và làm cạn kiệt tài nguyên hệ thống([6]) Dưới đây là sơ đồ mô tả sự phân loại các kiểu tấn công DDoS
Hình 1.4 Phân loại tấn công kiểu DDoS
Amplification Attack
Protocol Exploit Attack Malformed Paclket
Flaggle Attack
Direct Attack
Loop Attack
TCP SYN Attack
Spoof Source Attack
PUSH +ACK SYN Attack
IP @ Attack
IP Packet Options Attack
Spoof Source Attack
Spoof Source Attack
Spoof Source Attack
Trang 19Có hai loại tấn công làm cạn kiệt băng thông mạng:
+ Tấn công ngập lụt (Flood Attack): Điều khiển các Agent gửi một lưu lượng lớn đến hệ thống dịch vụ của mục tiêu, làm dịch vụ này bị hết khả năng cung cấp băng thông.([2])
+ Tấn công khuếch đại (Amplification Attack): Điều khiển các Agent hay Client tự gửi thông điệp đến một địa chỉ IP quảng bá, làm cho tất cả các máy trong mạng con (subnet) này đồng loạt gửi thông điệp đến hệ thống dịch vụ của mục tiêu Phương pháp này làm gia tăng lưu lượng không cần thiết, làm suy giảm băng thông của mục tiêu.([3])
Tấn công ngập lụt: ([4])
Trong phương pháp này, các Agent sẽ gửi một lượng lớn lưu lượng mạng làm
hệ thống dịch vụ của mục tiêu bị chậm lại, hệ thống bị treo hay đạt đến trạng thái hoạt động bão hòa Hậu quả là người dùng thực sự của hệ thống không sử dụng được dịch vụ như mong đợi
Ta có thể chia tấn công ngập lụt thành hai loại:
+ Tấn công ngập lụt UDP (UDP Flood Attack): Do tính chất truyền không theo hướng kết nối của UDP, hệ thống nhận gói tin UDP chỉ đơn giản nhận vào tất
cả các gói tin mình cần phải xử lý Một lượng lớn các gói tin UDP được gửi đến hệ thống dịch vụ của mục tiêu sẽ đẩy toàn bộ hệ thống đến ngưỡng tới hạn
Các gói tin UDP này có thể được gửi đến các cổng tùy ý hay chỉ duy nhất một cổng Thông thường các gói tin sẽ được gửi đến nhiều cổng làm cho hệ thống mục tiêu phải căng ra để xử lý phân hướng cho các gói tin này Nếu cổng bị tấn công không sẵn sàng thì hệ thống mục tiêu sẽ gửi ra một gói tin ICMP thông báo "không tới được cổng đích" (“destination port unreachable”) Thông thường các phần mềm
Trang 20 Tấn công khuếch đại
Tấn công khuếch đại nhắm đến việc sử dụng các chức năng hỗ trợ địa chỉ IP quảng bá của các bộ định tuyến (router) nhằm khuyếch đại và hồi chuyển cuộc tấn công Mô đun này cho phép bên gửi chỉ định một địa chỉ IP quảng bá cho toàn subnet bên nhận thay vì nhiều địa chỉ Bộ định tuyến sẽ có nhiệm vụ gửi đến tất cả địa chỉ IP trong mạng con (subnet) đó quảng bá gói tin mà nó nhận được
Hacker có thể gửi thông điệp quảng bá trực tiếp hay thông qua một số Agent nhằm làm gia tăng cường độ của cuộc tấn công Nếu Hacker trực tiếp gửi thông điệp, thì có thể lợi dụng các hệ thống bên trong mạng để quảng bá như một Agent
Hình 1.5 Tấn công khuếch đại
Trang 21+ Tấn công Fraggle: Tương tự như tấn công Smurf nhưng thay vì dùng gói tin ICMP ECHO REQUEST, Hacker dùng gói tin UDP ECHO gửi đến mục tiêu Thật
ra còn một biến thể khác của tấn công Fraggle sẽ gửi gói tin UDP ECHO đến cổng charge (port 19/UNIX) của mục tiêu, với địa chỉ bên gửi là cổng echo (port 7/UNIX) của mục tiêu, tạo nên một vòng lặp vô hạn Hacker phát động cuộc tấn công bằng một ECHO REQUEST với địa chỉ bên nhận là một địa chỉ broadcast, toàn bộ hệ thống thuộc địa chỉ này lập tức gửi REPLY đến cổng echo của nạn nhân, sau đó từ nạn nhân một ECHO REPLY lại gửi trở về địa chỉ quảng bá, quá trình cứ thế tiếp diễn Đây chính là nguyên nhân làm cho tấn công Flaggle nguy hiểm hơn tấn công Smurf rất nhiều
b) Những kiểu tấn công làm cạn kiệt tài nguyên:
Tấn công làm cạn kiệt tài nguyên là kiểu tấn công trong đó Hacker gửi những gói tin dùng các giao thức sai chức năng thiết kế, hay gửi những gói tin với dụng ý làm tắc nghẽn tài nguyên mạng, làm cho các tài nguyên này không phục vụ người dùng thông thường khác được
Tấn công khai thác giao thức (Protocol Exploit Attack ([4])
+ Tấn công TCP SYN: TCP hỗ trợ truyền nhận với độ tin cậy cao nên sử dụng phương thức bắt tay giữa bên gửi và bên nhận trước khi truyền dữ liệu Bước đầu tiên, bên gửi gửi một gói tin SYN REQUEST (Synchronize) Bên nhận nếu nhận được SYN REQUEST sẽ trả lời bằng gói tin SYN/ACK REPLY Bước cuối cùng, bên gửi sẽ truyền gói tin cuối cùng ACK và bắt đầu truyền dữ liệu
Trang 2215
Hình 1.6 Mô tả về bắt tay ba bước
Nếu bên máy chủ đã trả lời một yêu cầu SYN bằng một SYN/ACK REPLY nhưng không nhận được gói tin ACK cuối cùng sau một khoảng thời gian quy định thì nó sẽ gửi trả lại SYN/ACK REPLY cho đến hết thời gian timeout Toàn bộ tài nguyên hệ thống “dự trữ” để xử lý phiên giao tiếp nếu nhận được gói tin ACK cuối cùng sẽ bị “phong tỏa” cho đến hết thời gian timeout
Hình 1.7 Tấn công TCP SYN
Nắm được điểm yếu này, Hacker gửi một gói tin SYN đến nạn nhân với địa chỉ bên gửi là giả mạo, kết quả là nạn nhân gửi SYN/ACK REPLY đến một địa chỉ khác và sẽ không bao giờ nhận được gói tin ACK cuối cùng Cho đến hết thời gian timeout, nạn nhân mới nhận ra được điều này và giải phóng các tài nguyên hệ thống Tuy nhiên, nếu lượng gói tin SYN giả mạo đến với số lượng nhiều và dồn dập, hệ thống của nạn nhân có thể bị hết tài nguyên
Malicious
TCP
Client
Victim TCP Server
SYN packet with a deliberately fraudulent (spoofed) source IP return address
Service Port 1-1023
ACK SYN/ACK
80
Trang 2316
+ PUSH = tấn công ACK: Trong giao thức TCP, các gói tin được chứa trong
bộ đệm (buffer), khi bộ đệm đầy thì các gói tin này sẽ được chuyển đến nơi cần thiết Tuy nhiên, bên gửi có thể yêu cầu hệ thống unload buffer trước khi bộ đệm đầy bằng cách gửi một gói tin với PUSH và ACK mang giá trị là 1 Những gói tin này làm cho hệ thống của nạn nhân unload tất cả dữ liệu trong bộ đệm TCP ngay lập tức và gửi một gói tin ACK trở về khi thực hiện xong điều này, nếu quá trình được diễn ra liên tục với nhiều Agent, hệ thống sẽ không thể xử lý được lượng lớn gói tin gửi đến và sẽ bị treo
Tấn công bằng gói tin độc hại (Malformed Packet Attack) ([4])
Tấn công bằng gói tin độc hại là cách tấn công dùng các Agent để gửi các gói tin có cấu trúc không đúng chuẩn nhằm làm cho hệ thống của nạn nhân bị treo
Có hai loại tấn công bằng gói tin độc hại:
+ Tấn công địa chỉ IP (IP address attack): dùng gói tin có địa chỉ gửi và nhận giống nhau làm cho hệ điều hành của nạn nhân không xử lý nổi và bị treo
+ Tấn công phần lựa chọn gói tin IP (IP packet option attack): ngẫu nhiên hóa vùng OPTION trong gói tin IP và thiết lập tất cả các bit QoS lên 1, điều này làm cho hệ thống của nạn nhân phải tốn thời gian phân tích Nếu sử dụng số lượng lớn Agent có thể làm hệ thống nạn nhân hết khả năng xử lý
Trang 2417
1.1.5 Một số đặc tính của công cụ tấn công DDoS
Hình 1.8 Công cụ tấn công DDoS
Các công cụ tấn công DDoS có rất nhiều điểm chung như: cách cài phần mềm Agent, phương pháp giao tiếp giữa các Hacker, handler và Agent, điểm chung về loại hệ điều hành hỗ trợ các công cụ này Sơ đồ trên mô tả sự so sánh tương quan giữa các công cụ tấn công DDoS này
a) Cách thức cài đặt DDoS Agent ([4])
Hacker có thể dùng phương pháp active và passive để cài đặt phần mềm agent lên các máy khác nhằm thiết lập mạng tấn công kiểu Agent-Handler hay IRC-based
Cách cài đặt Active
+ Quét (Scanning): dùng các công cụ như Nmap, Nessus để tìm những sơ hở trên các hệ thống đang hoạt động nhằm cài đặt phần mềm Agent Chú ý, Nmap sẽ trả về những thông tin về một hệ thống đã được chỉ định bằng địa chỉ IP Nessus tìm kiếm từ những địa chỉ IP bất kỳ về một điểm yếu biết trước nào đó
+ Cửa hậu (Backdoor): Sau khi tìm thấy được danh sách các hệ thống có thể lợi dụng, Hacker sẽ tiến hành xâm nhập và cài phần mềm Agent lên các hệ thống này Có rất nhiều thông tin sẵn có về cách thức xâm nhập trên mạng, như trang web của tổ chức Common Vulnerabilities and Exposures (CVE) Trang này liệt kê và
Trang 25 Cách cài đặt bị động
+ Bug Website: Hacker có thể lợi dụng một số lỗi của trình duyệt web để cài phần mềm Agent vào máy của user truy cập Hacker sẽ tạo một website mang nội dung tiềm ẩn những code và lệnh để đặt bẫy người dùng Khi người dùng truy cập nội dung của website, thì website tải và cài đặt phần mềm Agent một cách bí mật Trình duyệt web IE thường là mục tiêu của cách cài đặt này, với các lỗi của ActiveX có thể cho phép trình duyệt web IE tự động tải và cài đặt mã thực thi trên máy của user duyệt web
+ Lỗ file: Một phương pháp khác là nhúng mã thực thi vào trong các file thông thường Khi người dùng đọc hay thực thi các file này, máy của họ lập tức bị nhiễm phần mềm Agent Một trong những kỹ thuật phổ biến là đặt tên file rất dài, do ngầm định của các hệ điều hành chỉ hiển thị phần đầu của tên file nên Hacker có thể gửi kèm theo email cho nạn nhân file như sau: iloveyou.txt_hiiiiiii_NO_this_is_DDoS.exe
Do chỉ thấy phần “Iloveyou.txt” hiển thị nên người dùng sẽ mở file này để đọc
và lập tức file này được thực thi và phần mềm Agent được cài vào máy nạn nhân Ngoài ra còn nhiều cách khác như ngụy trang file, ghép file…
- Rootkit: Là những chương trình dùng để xóa dấu vết về sự hiện diện của Agent hay Handler trên máy của nạn nhân Rootkit thường được dùng trên phần mềm Hander đã được cài, đóng vai trò xung yếu cho sự hoạt động của mạng tấn
Trang 2619
công hay trên các môi trường mà khả năng bị phát hiện của Handler là rất cao Rootkit rất ít khi dùng trên các Agent do mức độ quan trọng của Agent không cao
và nếu có mất một số Agent cũng không ảnh hưởng nhiều đến mạng tấn công
b) Giao tiếp trên mạng tấn công
- Giao thức: Giao tiếp trên mạng tấn công có thể thực hiện trên nền các giao thức TCP, UDP, ICMP
- Mã hóa các giao tiếp: một vài công cụ DDoS hỗ trợ mã hóa giao tiếp trên toàn bộ mạng tấn công Tùy theo giao thức được sử dụng để giao tiếp sẽ có các phương pháp mã hóa thích hợp Nếu mạng tấn công ở dạng IRC-based thì kênh riêng và kênh bảo mật đã hỗ trợ mã hóa giao tiếp
- Cách kích hoạt Agent: Có hai phương pháp chủ yếu để kích hoạt Agent Cách thứ nhất là Agent sẽ thường xuyên quét thăm dó Handler hay kênh IRC để nhận chỉ thị Cách thứ hai là Agent chỉ đơn giản là “nằm vùng” chờ chỉ thị từ Handler hay kênh IRC
c) Các nền tảng hỗ trợ Agent:
Các công cụ DDoS thông thường được thiết kế hoạt động tương thích với nhiều hệ điều hành khác nhau như: Unix, Linux, Solaris hay Windows Các thành phần của mạng tấn công có thể vận hành trên các môi trường hệ điều hành khác nhau
Thông thường Handler sẽ vận hành trên các hệ điều hành chạy trên các server lớn như Unix, Linux hay Solaris Agent thông thường chạy trên hệ điều hành phổ biến nhất là Windows do cần số lượng lớn dễ khai thác
d) Các chức năng của công cụ DDoS
Mỗi công cụ DDoS có một tập lệnh riêng, tập lệnh này được Handler và Agent thực hiện Tuy nhiên ta có thể phân loại tổng quát tập lệnh chung của mọi công cụ như sau:
Trang 2720
Bảng 1.1 Tập lệnh của Handler
TẬP LỆNH CỦA HANDLER
Log On Dùng để logon vào Handler software (user + password)
Turn On Kích hoạt Handler sẵn sàng nhận lệnh
Log Off Dùng để Logoff ra khỏi Handler software
Turn Off Chỉ dẫn Handler ngưng hoạt động, nếu Handler đang quét tìm
Agent thì dừng ngay hành vi này Initiate Attack Ra lệnh cho Handler hướng dẫn mọi Agent trực thuộc tấn
công mục tiêu đã định List Agents Yên cầu Handler liệt kê các Agent trực thuộc
Kiss Agents Loại bỏ một Agent ra khỏi hàng ngũ Attack-Network
Add victim Thêm một mục tiêu để tấn công
Duration
Thiết lập độ dài của cuộc tấn công vào mục tiêu
BufferSize Thiết lập kích thước buffer của Agent (nhằm gia tăng sức
mạnh cho Agent) Help Hướng dẫn sử dụng chương trình
Trang 2821
Bảng 1.2 Tập lệnh của Agent
TẬP LỆNH CỦA AGENT
Turn On Kích hoạt Agent sẵn sàng nhận lệnh
Turn Off Chỉ dẫn Agent ngưng hoạt động, nếu Agent đang quét tìm
Handler/IRC Channel thì dừng ngay hành vi này lại Initiate Hacker Ra lệnh Agent tấn công mục tiêu đã định
Download
Upgrades
Cập nhật phần mềm Agent (downloaf file exe về và thực thi)
Set Spoofing Thiết lập cơ chế giả mạo địa chỉ IP cho các Agent hoạt động
Thiết lập kích thước của attack packet
Help Hướng dẫn sử dụng chương trình
1.1.6 Một số công cụ tấn công DDoS
Slowloris
Được phát triển bởi Robert "RSnake" Hansen, Slowloris là phần mềm tấn công DDoS dựa trên máy tính đơn lẻ để đưa làm sập máy chủ website viết trên ngôn ngữ lập trình Perl Đây là kĩ thuật tương tự như SYN flood (tạo nửa kết nối để làm cạn kiệt tài nguyên máy chủ) nhưng diễn ra ở lớp HTTP (lớp ứng dụng) Để tấn công, tin tặc gửi yêu cầu HTTP đến máy chủ, nhưng không gửi toàn bộ yêu cầu, mà chỉ gửi một phần (và bổ sung nhỏ giọt, để khỏi bị ngắt kết nối) Với hàng trăm kết nối như vậy, tin tặc chỉ tốn rất ít tài nguyên, nhưng đủ để làm treo máy chủ, không thể tiếp nhận các kết nối từ người dùng hợp lệ Được thiết kế cho tàng hình nhưng đạt hiệu quả, Slowloris có thể được sửa đổi để gửi tiêu đề chủ khác nhau trong các sự kiện mà một máy chủ ảo là mục tiêu, và các bản ghi được lưu giữ riêng cho mỗi máy chủ ảo
Tính năng khác của Slowloris là trong suốt quá trình tấn công, do kết nối chưa hoàn chỉnh, sẽ không có thông tin gì trong log Chỉ đến khi ngưng kết nối, sẽ có hàng loạt
Trang 2922
lỗi 404 trong log do truy vấn sai Không phải mọi máy chủ đều bị ảnh hưởng bởi kiểu tấn công này Các máy chủ như Microsoft IIS hoặc nginx không “hề hấn” gì trước Slowloris Nếu dùng nginx làm proxy nghịch, tuy nhiên Apache chạy phía sau vẫn nghe trên IP công cộng (vì còn chạy một website thử nghiệm khác, không qua proxy) nên đã bị tấn công Thông thường Slowloris hoạt động trên hệ điều hành Backtrack 5
Cú pháp để kích hoạt Slowloris trên Backtrack 5 như sau:
#./slowloris.pl –dns IP_address –port 80 –num 1000 –cache
Trong đó:
- IP_address là địa chỉ máy chủ web
- Num 1000: là số kết nối
Hình 1.9 Giao diện của Slowloris đang hoạt động
Tuy nhiên, quản trị có thể tìm cách hạn chế của các tấn công dạng này như:
- Không dùng Apache nữa! Nếu dùng Apache sau proxy nghịch, thì chỉ cho nghe trên cổng của 127.0.0.1 hoặc các IP cục bộ
- Giảm Timeout cho Apache Tuy nhiên cách này không mấy hiệu quả, tin tặc chỉ phải gửi thêm nhiều gói tin mà thôi
- Giới hạn số kết nối đến Apache cho mỗi IP Có thể dùng mod_qos chẳng hạn
để làm việc này
Trang 3023
- Giải quyết ở lớp dưới: cấu hình firewall để giới hạn số kết nối đến cổng 80 trên mỗi IP
LOIC (Low Orbit Ion Cannon)
LOIC là một phần mềm mã nguồn mở thường dùng để kiểm tra tình hình mạng và
là một ứng dụng tấn công từ chối dịch vụ, được viết bằng ngôn ngữ C # LOIC ban đầu được phát triển bởi Praetox Technologies, nhưng sau đó được đưa ra phát triển trên cộng động mạng và bây giờ được lưu trữ trên nhiều nền tảng mã nguồn mở khác nhau Công cụ này trước đây thường được nhóm hacker Anonymous sử dụng LOIC thực hiện một tấn công từ chối dịch vụ (hoặc khi nhiều cá nhân sử dụng, thì
đó sẽ là cuộc tấn công DDoS) trên máy chủ web bằng phương pháp ngập lụt với các gói tin TCP và UDP với khả năng làm gián đoạn các dịch vụ của máy chủ cụ thể Với người dùng cố tình sử dụng khi kết nối với nhau thì đó là một hình thức tạo botnets tự nguyện
Ý tưởng của phần mềm này từ việc tạo ra một phiên bản Javascript độc lập gọi là JS Loic, ngoài ra còn có phiên bản dành cho trình duyệt web
Hình 1.10 Giao diện hoạt động của LOIC
Qua thử thực hiện cuộc tấn công từ vài máy trạm vào máy chủ chạy ứng dụng web quy mô nhỏ cơ quan và kết quả cho thấy như sau:
Trang 3124
Hình 1.11 Kết quả theo dõi khi thực hiện tấn công bằng LOIC vào máy
chủ web
Nhìn vào hình trên rất dễ nhận thấy Networking hoạt động với đường biểu
đồ và công suất lên đến 96%, điều đó nói lên sự nguy hiểm và hoạt động của LOIC hiệu quả như thế nào
Các chuyên gia an ninh của BBC cho thấy việc viết lên một luật tốt cho firewall có thể lọc ra lưu lượng truy cập nhiều nhất từ các cuộc tấn công DDoS bởi Loic, do đó ngăn ngừa các cuộc tấn công từ là hoàn toàn hiệu quả Cụ thể, họ tuyên
bố rằng cách lọc ra tất cả lưu lượng UDP và ICMP giúp giải quyết có hiệu quả các cuộc tấn công Loic Bởi vì các nhà cung cấp dịch vụ internet cung cấp băng thông ít hơn cho mỗi khách hàng của họ để cung cấp mức độ dịch vụ bảo đảm cho tất cả các khách hàng của họ một lúc, các luật của loại tường lửa để có hiệu quả khi được thực hiện tại một điểm ở thượng nguồn của đường lên ứng dụng internet Nói cách khác,
nó có thể gây ra gián đoạn lưu lượng đường truyền của nhà cung cấp dịch vụ ISP cho khách hàng bằng cách gửi một số lưu lượng lớn hơn mức cho phép của khách hàng được cung cấp đường truyền Do đó, các cuộc tấn công Loic được dễ dàng xác định trong bản ghi hệ thống, và các cuộc tấn công có thể được theo dõi ngược đến các địa chỉ IP được sử dụng tại các cuộc tấn công vào hệ thống
Trang 3225
1.2 Tác động nghiêm trọng và mức độ ảnh hưởng của các cuộc tấn công DDoS trong nước và trên thế giới
1.2.1 Đối với trong nước
Theo báo cáo tình hình bảo mật tháng 6/2015 của CMC InfoSec gần đây nhất, cả nước có 41.044 địa chỉ IP thuộc sự quản lý của Việt Nam nhiễm mã độc tham gia mạng Botnet, sau khi sàng lọc đã cảnh báo tới đầu mối của 76 địa chỉ IP thuộc các cơ quan nhà nước Đa số các địa chỉ IP bị nhiễm lại từ các lần cảnh báo trước Số lượng cảnh báo được thực hiện 01 tuần 01 lần, tuy nhiên nhiều đơn vị nhận được không xử lý hoặc xử lý không triệt để dẫn đến nguyên nhân bị cảnh báo lại nhiều lần Các mã độc nằm trong mạng Botnet ghi nhận chủ yếu là Downadup và Sality Những mã độc này đã được ghi nhận từ lâu và các phần mềm Antivirus đã cập nhật mẫu nhận dạng và gỡ bỏ, tuy nhiên vẫn chưa được xử lý triệt để Trước đó, trong thời gian từ ngày 20 đến 26/06 VNCERT tiếp nhận 54 trường hợp sự cố Phishing, sau khi kiểm tra xác thực có 34 trường hợp tồn sự cố VNCERT đã nhanh chóng gửi 33 yêu cầu điều phối cho các đơn vị liên quan như Viettel, ODS, FPT, Quang Trung Soft để phối hợp với quản trị viên website xử lý và đã khắc phục 29 trường hợp Liên quan đến các tiếp nhận các sự cố lừa đảo trên website này có 8 trường hợp là của các ngân hàng và các tổ chức tài chính([1]), điều đó đã nói lên tình trạng nghiêm trong và nguy cơ tấn công DDoS trong nước ta rất cao Quay lại thời gian trước đây, có một số vụ hacker tấn công như sau:
- Ngày 1/2/2012 website Bkav.com.vn bị tấn công DDoS và để lại đường dẫn chứng minh việc mình đã upload thành công dữ liệu vào máy chủ của trang web cùng lời bình luận ngắn gọn “chỉ thế là đủ” Theo nhận định từ những chuyên gia trong lĩnh vực bảo mật web, hacker đã “thừa sức” leo thang đặc quyền Nếu muốn, hậu quả có thể trở nên nghiêm trọng hơn rất nhiều
- Forum BKAV bị tấn công đúng ngày lễ Tình yêu 14/2/2012 Sáng ngày 14/2, diễn đàn Bkav (forum.bkav.com.vn) bị tấn công DDoS khiến người dùng không thể truy cập được và hiện lên thông báo “the page cannot be displayed”
Ngay sau khi hiện tượng website www.bkav.com.vn khó truy cập, tại trang chủ http://www.anonymousvn.blogspot.com, nhóm Anonymous đã đưa thông tin xác
Trang 3326
nhận việc đã tấn công và thâm nhập thành công vào server của Bkav Điều này đồng nghĩa với việc, rất có thể nhóm hacker này đã tạo ra những thay đổi trong hệ thống máy chủ của Bkav Nhiều người lo xa còn cho rằng, Anonymous có thể đã chèn được mã độc vào chính phần mềm diệt virus của công ty này
- Đầu tháng 7/2012, trang web của Trung tâm Đào tạo lập trình viên Aprotrain
Aptech bị tấn công DDoS khiến người dùng không được vào trang web Bộ phận kỹ thuật kiểm tra hồ sơ (file) nhật ký thấy số lượng kết nối vào máy chủ tăng bất thường (chỉ trong thời gian ngắn, số kết nối tăng thêm 2.000 lượt), hiệu năng sử dụng Ram, CPU đều trên 90%
- Chiều 8/7/2013, báo điện tử Dân trí đã đưa ra thông báo về việc trang báo này bị tấn công từ chối dịch vụ (DDoS) với quy mô lớn chưa từng có tại Việt Nam trong suốt 1 tuần vừa qua Đợt tấn công này chủ yếu nhằm vào các website có hệ thống máy chủ đặt tại Trung tâm Điện toán - Truyền số liệu KV 2 (VDC2) và ảnh hưởng đến nhiều báo điện tử lớn như Dân trí, Vietnamnet, Tuổi Trẻ… Cho đến chiều ngày 9/7, khi truy cập vào báo điện tử Dantri, người dùng vẫn gặp thông báo
“không thể truy cập”
- Website báo Tuổi Trẻ bị tấn công DDoS Ngày 11/7/2013, báo Tuổi Trẻ phát
đi thông báo cho biết các phiên bản điện tử của mình đang bị tấn công DDoS liên tục từ phía hacker, theo đó các phiên bản: Tuổi Trẻ Online (tuoitre.vn), Tuổi Trẻ Mobile (m.tuoitre.vn), Tuổi Trẻ Online tiếng Anh (tuoitrenews.vn) đều rất khó truy cập
Theo đại diện của báo Tuổi Trẻ, kẻ tấn công đã sử dụng hình thức tấn công DDoS tạo ra hàng chục triệu lượt truy cập ảo đến các phiên bản của tờ báo này, gây
ra tình trạng nghẽn mạng nghiêm trọng Hiện đội ngũ kỹ thuật của báo Tuổi Trẻ đang cố gắng khắc phục bằng nhiều giải pháp kỹ thuật nhằm chống lại các đợt tấn công trên
Cùng với các biện pháp kỹ thuật khắc phục, phía báo Tuổi Trẻ đã tiến hành làm việc với các cơ quan chức năng, hãng bảo mật trong và ngoài nước nhằm nhanh chóng khôi phục hoạt động địa chỉ web các phiên bản của báo Tuổi Trẻ
Trang 3427
1.2.2 Trên thế giới
Kể từ mùa hè năm 1999, có nhiều cuộc tấn công DDoS diễn ra trên toàn thế giới Ví dụ, vào tháng 2/2000, Yahoo đã trải qua một cuộc tấn công DDoS ngập lụt lớn đầu tiên trong vòng khoảng 2 giờ mất mát đảng kể nguồn doanh thu từ quảng cáo Trong tháng 10/2002, 9 trong số 13 máy chủ gốc cung cấp dịch vụ DNS của các nhà cung cấp dịch vụ internet bị tạm ngừng trong khoảng một giờ do bị tấn công DDoS Một cuộc tấn công DDoS lớn ngập lụt xảy ra vào tháng 2/2004 đã làm cho trang web của SCO Group làm cho người dùng không thể truy cập, cuộc tấn công này đã được đưa ra bằng cách sử dụng hệ thống mà trước đó đã bị nhiễm virus Mydoom Các virus chứa mã mà hàng ngàn máy tính đã bị lây nhiễm truy cập vào website của SCO trong cùng một thời điểm.([6]) Các mã của virus Mydoom được tái khởi động vào cuộc tấn công vào các website tin tức, truyền thông đa phương tiện
và tài chính tại Hàn Quốc vào tháng 7/2009
Vào tháng 12/2010, một nhóm hacker tự xưng là "Anonymous" đã thực hiện dàn dựng tấn công DDoS vào các tổ chức như Mastercard.com, PayPal, Visa.com
và PostFinance, cuộc tấn công này làm sập các website của các tổ chức nói trên Ngày 22/09/2012 website hai ngân hàng lớn của Mỹ là Bank of America và JPMorgan Chase bị đánh sập Các ngân hàng của Mỹ phải thiết lập tình trạng báo động cao độ về nguy cơ tin tặc, sau khi trang web của hai ngân hàng Bank of America và JPMorgan Chase bị nghẽn đường truyền không rõ nguyên nhân
Ngày 22/08/2012 Anonymous tấn công DDoS website chính phủ Anh Sáng ngày 21/08/2012, một thành viên trong nhóm Anonymous đã đăng một mẩu tweet lên trang Twitter @AnonIRC của mình, nói rằng “Hiện tại, không thể truy cập vào trang web của Bộ tư pháp Anh tại đường link "http://www.justice.gov.uk/”
Ngày 21/8, nhóm hacker Anonymous đã ra tay tấn công các website của chính phủ Anh Quốc để thể hiện sự ủng hộ của mình đối với nhà sáng lập trang web WikiLeaks – Julian Assange – người đang được chính phủ Ecuador cho phép trú trong đại sứ quán của nước mình đặt tại London, Anh
Nhóm Anonymous vốn nổi tiếng với việc sử dụng phương án tấn công từ chối dịch vụ DDoS nhằm thể hiện quan điểm chính trị của mình, được cho là đã tấn công
Trang 3528
trang web của Bộ tư pháp Vương quốc Anh, cùng với trang Number 10 của Văn phòng thủ tướng Anh Những báo cáo khác còn cho thấy trang web của Bộ lao động
và Lương hưu Anh cũng là nạn nhân của nhóm hacker này
Ngày 18/09/2012 Anonymous tấn công kho tài liệu mật của Campuchia Đầu tháng 9, đồng sáng lập trang chia sẻ dữ liệu trực tuyến Thụy Điển "The Pirate Bay"- Gottfrid Svartholm đã bị bắt giữ và bị trục xuất khỏi Campuchia
Để trả đũa động thái này của Chính phủ Campuchia, nhóm hacker khét tiếng Anonymous đã tấn công website của chính phủ quốc gia này và đăng tải công khai lên Internet hơn 5.000 tài liệu mật và nhạy cảm Cụ thể, tin tặc đã tấn công website của Bộ Ngoại giao Campuchia và Cơ quan hợp tác quốc tế; đặc biệt nghiêm trọng hơn khi những tài liệu bị rò rỉ không chỉ nằm trong giới hạn của Campuchia mà còn
có liên quan tới nhiều quốc gia khác như Nepal, Ấn Độ, Pakistan
Theo thống kê của trang The Next Web, có tất cả 5.234 tài liệu bị rò rỉ, được lưu trữ vào hai tệp nén trên trang lưu trữ dữ liệu Deposit Files, có dung lượng lần lượt là 161 MB và 230 MB Những tài liệu này được viết bằng Tiếng Anh, Hindu, Khmer và tiếng Nga
- Ngày 11/04/2013, Website Bộ Tư pháp Đức bị tin tặc tấn công bằng DDoS Ngày 11/4, trang tin AP dẫn lời Bộ Tư pháp Đức cho hay website của bộ này đã sập
vì bị tin tặc tấn công từ chối dịch vụ (DDoS)
- Cuộc tấn công DDoS lớn nhất lịch sử Internet Ngày 27/03/2013 tổ chức Spamhaus vốn chịu trách nhiệm duy trì danh sách blacklist các máy chủ đang gửi thư spam trên toàn cầu, phải hứng chịu một cuộc tấn công DDoS với lưu lượng lớn nhất lịch sử Internet, lưu lượng hiện đã đạt đỉnh 300 Gbps Trong khi tổng lưu lượng internet của Việt Nam chỉ khoảng 361 Gbps, nếu cuộc tấn công này nhắm vào hạ tầng Internet Việt Nam thì Việt Nam sẽ nhanh chóng bị bão hoà đường truyền và sẽ sớm bị cách ly hoàn toàn với Internet thế giới
Theo số liệu thống kê DDoS Intelligence của Kaspersky vừa công bố, vào Quý
II năm 2015, 72% nguồn tài nguyên bị tấn công bằng botnet chỉ phân bổ tại 10 quốc gia, trong đó Trung Quốc và Hoa Kỳ là hai quốc gia dẫn đầu
Trang 36Các cuộc tấn công DDoS thông thường trên thế giới gần đây chỉ đạt khoảng
50 Gbps là đã đủ làm tê liệt cơ sở hạ tầng của một tổ chức bị nhắm tới Rất may Spamhaus được chống lưng bởi rất nhiều tập đoàn công nghệ lớn của thế giới như Google, Microsoft, Yahoo, Amazon, Do đó, các hãng này chia sẻ tài nguyên khổng lồ của họ nhằm giúp hấp thụ lưu lượng khổng lồ trên
Nguyên nhân dẫn đến cuộc tấn công là từ một cuộc tranh cãi giữa tổ chức Spamhaus và một công ty dịch vụ hosting của Đức tên Cyberbunker khi tổ chức Spamhaus liệt kê các máy chủ của công ty này vào danh sách Blacklist Danh sách này sẽ giúp các nhà cung cấp dịch vụ mail toàn cầu chặn đứng các spam mail đến từ công ty Cyberbunker Cuộc tranh cãi này nhanh chóng kéo theo thành các lời đe doạ tấn công Công ty nêu trên đã kết hợp với nhiều tổ chức tin tặc tại Châu Âu để điều
Trang 3730
hướng một lượng khổng lồ gồm nhiều mạng máy tính ma (botnets) với nhiều triệu máy tính đã bị thâm nhập trước đó, tập trung tấn công các máy chủ DNS của Spamhaus Điều đáng ngại là cuộc tấn công này đã tạo nên một kỷ lục mới về lưu lượng tấn công Nó đánh dấu một thời kỳ khó khăn sắp tới của Internet khi các chính phủ có vẻ trở nên bất lực trước các tổ chức tin tặc
Trong Chương 1 tác giả đã đưa ra được cái nhìn tổng quan về tấn công DDoS: Giới thiệu về DDOS, ba giai đoạn của một cuộc tấn công DDoS, kiến trúc tổng quan của mạng tấn công với 02 mô hình chính là mô hình Agent – Handler và
mô hình IRC – Based, phân loại các kiểu tấn công và một số đặc tính của công cụ tấn công DDoS; Đánh giá mức độ ảnh hưởng và tác động nghiêm trọng của tấn công DDoS trong nước cũng như trên thế giới
Trang 382.1 Một số thuật toán phát hiện tấn công DDoS
Để phòng chống tấn công DDoS có hiệu quả ngoài những yêu cầu về hạ tầng
kỹ thuật và trang thiết bị và tính sẵn sàng của hệ thống an toàn an ninh thông tin thì nhiệm vụ phát hiện và cảnh báo sớm dấu hiệu bất thường hay bị tấn công là rất quan trọng Có phát hiện sớm được mới ngăn ngừa tốt và giảm thiểu thiệt hại do bị tấn công gây ra Hiện nay, các sản phẩm thương mại IDS/IPS có nhiều tính năng mạnh, tuy vậy ứng dụng của nó cũng cần xây dựng tập luật để “học” theo thời gian và thuật toán phát hiện là nên tảng cơ sở để xây dựng nên các sản phẩm đó
Ghi nhận đã xảy ra trong thực tế, khi các cuộc tấn công DDos xảy ra, lập tức phân tích sẽ thấy được lưu lượng mạng rất khác thường Do đó hầu hết các thuật toán phân tích phát hiện tấn công DDos hiện nay đều dựa trên tính khác thường của lưu lượng mạng Một số các công nghệ thống kê được áp dụng để tiến hành phân tích, thống kê những lưu lượng tải làm việc để phát hiện Từ những kỹ thuật phân tích này, sẽ có những thuật toán phát hiện để đưa ra các tham số hoặc công nghệ thống kê, các mức độ nguy hiểm của cuộc tấn công
- Thông số kiểm tra: Thông số kiểm tra được dùng để phân loại các thuật
toán như số lượng lớn lưu lượng, số địa chỉ IP mới hoặc tỷ lệ các gói tin đến và đi trong mạng
- Công nghệ thống kê: Sử dụng các thuật toán thống kê để phân tích mạng
Ví dụ như ngưỡng giới han phù hợp, phát hiện điểm thay đổi
- Mức độ phân tích: Khi phân tích các chi tiết các thông số, các mức độ nguy
hiểm sẽ được gán
Sau đây, tác giả sẽ giới thiệu cụ thể về một số thuật toán phát hiện DDoS thường
dùng hiện nay
Trang 39nó sẽ được định nghĩa là bất thường và báo động sẽ được kích hoạt
Chúng ta giả sử rằng số lượng các gói tin SYN trong khoảng thời gian n-th là
xt, và đo tỷ lệ trung bình trước khi t là μ t -1 Trong trường hợp này, tình trạng báo
động là như sau:
Nếu x n >=( α+1)μ n -1, thì tín hiệu cảnh bảo (ALARM) tại thời điểm n, có
tham số α> 0 chỉ ra tỷ lệ phần trăm trên giá trị trung bình được xem là một ngưỡng Các μn trung bình có thể được tính toán trên một số cửa sổ thời gian qua hoặc sử dụng một cấp số nhân trọng số di chuyển trung bình (exponentially weighted moving average - EWMA) của các phép đo trước
μ n = βμ n-1 + (1-β) x n
Trong đó: β là yếu tố EWMA Khi một gói tin đến, thuật toán sẽ kiểm tra nếu gói tin đó là gói tin của giao thức TCP, nếu đó là gói tin TCP nó sẽ kiểm tra gói tin TCP SYN hoặc loại gói tin TCP khác Tính toán μ và tỷ lệ α, nó kiếm tra điều kiện đối với xn có lớn hơn (α + 1) μt-1 hay không, nếu lớn hơn nó sẽ đưa ra cảnh báo
Thực tế nếu áp dụng trực tiếp và cứng nhắc thuật toán trên sẽ phát sinh vấn
đề là có thể đưa ra các cảnh báo sai khi có lưu lượng truy cập cao điểm, chẳng hạn
có nội dung “hot” đột xuất Một cách thay đổi đơn giản có thể cải thiện hiệu quả của
nó là để báo hiệu một báo động sau khi một số lượng tối thiểu của các hành vi vi phạm liên tiếp của ngưỡng Trong trường hợp này, tình trạng báo động được cho như sau:
Trang 40thì sẽ có tín hiệu cảnh báo ALARM tại thời điểm n
Với k> 1 là một tham số cho biết số lượng của các khoảng liên tiếp ngưỡng bị vi phạm đối với một báo động Các thông số điều chỉnh của các thuật toán ở trên là những hệ số biên độ α để tính ngưỡng báo động, số lượng vi phạm ngưỡng tiếp k trước khi tín hiệu báo động, theo cấp số nhân trọng số trung bình động hệ số β và
độ dài của khoảng thời gian mà đo lưu lượng (số lượng gói tin SYN) được lấy
Hình 2.1 Biểu đồ trực quan của thuật toán ngưỡng giới hạn đáp ứng([9])
2.1.2 Thuật toán tổng tích lũy ([7]) (Cumulative sum – CUSUM)
Thuật toán tổng tích lũy thường được sử dụng trong kiểm soát chất lượng Chúng rất thích hợp cho việc kiểm tra một hệ thống đo lường trong hoạt động cho bất kỳ vi phạm nào của một số mục đích hoặc giá trị đặc biệt và đã được sử dụng rộng rãi để phát hiện những thay đổi có nghĩa là nhỏ và trung bình
Đối với thuật toán này, tiến hành phân tích thống kê các lưu lượng đến giữa hai khoảng thời gian là n (n=1, 2, 3…), đây là khoảng để kiểm tra việc phát hiện Với kỹ thuật phát hiện tấn công này, một bảng băm sẽ được sử dụng để ghi lại các địa chỉ IP xuất hiện giữa hai khoảng thời gian (time slot) Trong bảng băm nay sẽ gồm 2 trường: IP address và timestamp So sánh các trường này với các trường trong IP Address Database (IAD) để có thể tính toán có bao nhiêu địa chỉ IP mới đã xuất hiện trong các khoảng thời gian Phân tích các địa chỉ IP mới này sẽ cho biết khi nào cuộc tấn công DDos xảy ra