Bộ dữ liệu dạng Netflow dùng trong phát hiện xâm nhập trái phép và ứng dụng
Các bộ dữ liệu mẫu về xâm nhập trái
phép trong mạng máy tính hiện đã và đang được
ứng dụng rất rộng rãi trong việc nghiên cứu phát
hiện xâm nhập mạng trái phép. Trên thế giới đã có
nhiều bộ dữ liệu khác nhau, mỗi bộ dữ liệu có ưu,
nhược điểm khác nhau. Bộ dữ liệu dạng Netflow
có nhiều ưu điểm trong việc phát hiện xâm nhập
trái phép, đặc biệt trong mạng có lưu lượng dữ
liệu lớn. Hiện tại, bộ dữ liệu của DARPA vẫn
đang được các nhà khoa học sử dụng trong nghiên
cứu phát hiện xâm nhập trái phép, tuy nhiên bộ
dữ liệu DARPA không ở dạng Netflow. Mục tiêu
của bài báo này trình bày một phương thức xây
dựng bộ dữ liệu dạng Netflow từ nguồn dữ liệu
DARPA; và ứng dụng bộ dữ liệu này trong phát
hiện xâm nhập trái phép bằng phương pháp học
máy. Bộ dữ liệu này có thể được sử dụng rộng rãi
trong nghiên cứu phát hiện xâm nhập trái phép
dựa trên Netflow.
Tóm tắt nội dung tài liệu: Bộ dữ liệu dạng Netflow dùng trong phát hiện xâm nhập trái phép và ứng dụng
Nguyễn Hoàng Giang, Trần Quang Anh Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG Số 1 năm 2016 17 BỘ DỮ LIỆU DẠNG NETFLOW DÙNG TRONG PHÁT HIỆN XÂM NHẬP TRÁI PHÉP VÀ ỨNG DỤNG Nguyễn Hoàng Giang*, Trần Quang Anh+ *Cục Công nghệ thông tin & Thống kê Hải quan + Học Viện Công Nghệ Bưu Chính Viễn Thông Tóm tắt: Các bộ dữ liệu mẫu về xâm nhập trái phép trong mạng máy tính hiện đã và đang được ứng dụng rất rộng rãi trong việc nghiên cứu phát hiện xâm nhập mạng trái phép. Trên thế giới đã có nhiều bộ dữ liệu khác nhau, mỗi bộ dữ liệu có ưu, nhược điểm khác nhau. Bộ dữ liệu dạng Netflow có nhiều ưu điểm trong việc phát hiện xâm nhập trái phép, đặc biệt trong mạng có lưu lượng dữ liệu lớn. Hiện tại, bộ dữ liệu của DARPA vẫn đang được các nhà khoa học sử dụng trong nghiên cứu phát hiện xâm nhập trái phép, tuy nhiên bộ dữ liệu DARPA không ở dạng Netflow. Mục tiêu của bài báo này trình bày một phương thức xây dựng bộ dữ liệu dạng Netflow từ nguồn dữ liệu DARPA; và ứng dụng bộ dữ liệu này trong phát hiện xâm nhập trái phép bằng phương pháp học máy. Bộ dữ liệu này có thể được sử dụng rộng rãi trong nghiên cứu phát hiện xâm nhập trái phép dựa trên Netflow. Từ khóa: Bộ dữ liệu (dataset), Naïve Bayes, Netflow, phát hiện xâm nhập trái phép (IDS). 1 I. GIỚI THIỆU Ngày nay, mạng máy tính thường xuyên là các mục tiêu tấn công của tin tặc nhằm mục đích ăn cắp dữ liệu bí mật quan trọng của tổ chức hoặc Tác giả liên hệ: Nguyễn Hoàng Giang, email: giangnh@customs.gov.vn. Đến tòa soạn: 28/3/2016, chỉnh sửa: 08/5/2016, chấp nhận đăng: 30/5/2016. làm dừng hệ thống cung cấp dịch vụ của tổ chức. Để phát hiện và ngăn chặn các cuộc tấn công này, có rất nhiều các giải pháp phần cứng cũng như phần mềm ra đời. Các giải pháp đó có thể là IDS (Intrusion Detection Systems), IPS (Intrusion Prevention Systems), IDP (Intrusion Detection Prevention Systems), Firewall, hoặc hệ thống giám sát. Để nghiên cứu, cho ra đời các giải pháp, công nghệ về IDS, IPS, IDP... rất cần thiết phải có các bộ dữ liệu mẫu về xâm nhập trái phép để thực hiện việc huấn luyện và kiểm thử. Netflow là một giao thức do hãng Cisco phát triển vào những năm 1996, được phát triển thành một công nghệ giám sát lưu lượng mạng. Hiện nay, Netflow đã được xây dựng thành tiêu chuẩn và sử dụng hầu hết trong các thiết bị mạng Router của Cisco, Juniper, Extreme, Habour... Netflow đã được phát triển qua nhiều phiên bản: version 1 đến version 10; trong đó thông dụng nhất hiện nay là version 5, version 7 và version 9. Netflow cho phép thực hiện giám sát, phân tích, tính toán lưu lượng gói. Một trong các ưu điểm của Netflow so với các giao thức khác là nó cho phép định danh và phân loại những loại tấn công như DoS, DDoS, Worm... theo thời gian thực dựa vào những sự hành vi thay đổi bất thường trong mạng, đặc biệt trong mạng có lưu lượng lớn. Do vậy, việc xây dựng một bộ dữ liệu Dataset dạng Netflow là cần thiết để có thể tận dụng được hết các ưu điểm của giao thức này. BỘ DỮ LIỆU DẠNG NETFLOW DÙNG TRONG PHÁT HIỆN XÂM NHẬP TRÁI PHÉP VÀ ỨNG DỤNG Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG18 Số 1 năm 2016 Bảng I. Tổng hợp tập dữ liệu trong các nghiên cứu về IDS dựa trên thống kê Tác giả Nămcông bố Định dạng dữ liệu Tập dữ liệu sử dụng Phương pháp thực hiện Eskin 2000 Packet-based DARPA99 Probability Model Manikopoulos and Papavassilou 2002 Packet-based Real-life Statistical model with neural network Mahoney and Chan 2003 Packet-based DARPA99 LERAD algorithm Chan et al 2003 Packet-based DARPA99 Learning rules Wang and Stolfo 2004 Packet-based DARPA99 Payload-based algorithm Song et al 2007 Packet-based KDDCUP99 Gaussian mixture model Chhabra et al 2008 Packet-based Real-time FDR method Lu and Ghorbani 2009 Packet-based & Flow-based DARPA99 Wavelet analysis Wattenberg et al 2011 Packet-based Real-time GLRT model Yu 2012 Packet-based Real-time Adaptive CUSUM Bảng II. Tổng hợp tập dữ liệu trong các nghiên cứu về IDS dựa trên phân loại Tác giả Nămcông bố Định dạng dữ liệu Tập dữ liệu sử dụng Phương pháp thực hiện Tong et al 2005 Packet- based DARPA99, TCPSTAT KPCC model Gaddam et al 2007 Packet- based NAD, DED, MSD K-means + ID3 Khan et al 2007 Packet- based DARPA98 DGSOT + SVM Das et al 2008 Packet- based KDDCUP99 APD algorithm Lu and Tong 2009 Packet- based DARPA99 CUSUM – EM Quadeer et al 2010 Packet- based Real-time Traffic statistics Wagner et al 2011 Flow-based Flow Traces Kernel OCSVM Muda et al 2011 Other KDDCUP99 KMNB algorithm Kang et al 2012 Packet- based DARPA98 Differentiated SVĐ Để xây dựng được một bộ dữ liệu phục vụ cho nghiên cứu đòi hỏi phải thực hiện rất nghiêm túc và tốn thời gian. Đó là phải thiết lập được môi trường mạng, cài đặt phần mềm, có hiểu biết và biết sử dụng các công cụ để thực hiện tấn công thực tế, bắt giữ và đánh nhãn gói tin trên mạng để hình thành bộ dữ liệu. Trên thế giới hiện nay tồn tại một số bộ dữ liệu nổi tiếng như DARPA, KDD-99, ISCX... Tuy vậy, các bộ dữ liệu này tồn tại ở dạng Tcpdump, không phải ở dạng Netflow nên không ứng dụng được trong nghiên cứu về IDS trên Netflow. Các bộ dữ liệu ở dạng Netflow rất ít, nếu có thì hoặc không đầy đủ (như bộ UT) hoặc chưa hoàn chỉnh (như bộ dữ liệu được công bố [8], chỉ xây dựng bộ dữ liệu Netflow cho một loại tấn công). Theo tổng hợp [11], các công trình nghiên cứu về IDS sử dụng phương pháp học máy (học máy dựa trên thống kê và học máy dựa trên phân loại được trình bày trong Bảng I và II) hiện nay phần lớn đều sử dụng định dạng dữ liệu là Packet-based. Điều này có nghĩa là hiện nay chưa có, hoặc có rất ít các bộ dữ liệu định dạng Netflow được công bố để phục vụ mục đích nghiên cứu về IDS. Trên cơ sở những phân tích, lập luận trên, nhóm tác giả đã xác định mục tiêu của bài báo này là thực hiện xây dựng một bộ dữ liệu dạng Netflow hoàn chỉnh trên cơ sở bộ dữ liệu DARPA nổi tiếng và ứng dụng trong phát hiện xâm nhập trái phép. Phần còn lại của bài báo được chia thành các mục sau: Mục II giới thiệu các bộ dữ liệu hiện có đã được công bố rộng rãi; Mục III trình bày về phương pháp và quá trình xây dựng bộ dữ liệu; Mục IV thực hiện mô tả về các bộ dữ liệu đã xây dựng được; Mục V trình bày về ứng dụng của bộ dữ liệu trong phương pháp Nguyễn Hoàng Giang, Trần Quang Anh Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG Số 1 năm 2016 19 học máy để phát hiện xâm nhập trái phép đối với một loại xâm nhập; cuối cùng là phần kết luận và hướng nghiên cứu trong tương lai. II. CÁC BỘ DỮ LIỆU DÙNG TRONG PHÁT HIỆN XÂM NHẬP TRÁI PHÉP A. Dữ liệu DARPA Bộ dữ liệu DARPA hình thành do Cục dự án nghiên cứu cao cấp Bộ quốc phòng Mỹ (Defense Advanced Research Project Agency) tài trợ đề tài xây dựng cơ sở dữ liệu mẫ xâm nhập trái phép tại Phòng thí nghiệm Lincoln, Đại học MIT [1]. Để xây dựng tập dữ liệu này, các nhà khoa học đã lấy dữ liệu của một mạng quân sự Mỹ khi hoạt động bình thường làm dữ liệu bình thường; sau đó đưa thêm các dữ liệu xâm nhập trái phép vào trong tập dữ liệu đó. Cách làm trên cho phép biết được chắc chắn đâu là dữ liệu bình thường, đâu là dữ liệu xâm nhập trái phép. Mỗi dữ liệu của DARPA bao gồm dữ liệu mạng và dữ liệu máy chủ tương ứng. Dữ liệu mạng được thu thập và lưu trữ ở dạng Tcpdump. Dữ liệu máy chủ được lưu giữ ở dạng BSM (Basic Security Module). Tập dữ liệu bao gồm dữ liệu thu thập trong vòng 5 tuần. Đi kèm với dữ liệu là tài liệu mô tả dữ liệu khá chi tiết, bao gồm loại xâm nhập, thời gian bắt đầu, thời gian kết kết, địa chỉ máy tấn công, địa chỉ máy bị tấn công đối với mỗi sự kiện xâm nhập trái phép. Toàn bộ dữ liệu có kích thước khoảng 10Gb, trong đó gồm 54 loại xâm nhập được phân làm 4 nhóm: R2L (Remote to Local – là nhóm các xâm nhập cho phép kẻ tấn công từ xa lấy được quyền của người dung máy chủ), U2R (User to Root – là nhóm các xâm nhập cho phép người dùng bình thường trên máy chủ có thể đoạt quyền quản trị root), DoS (Denial of Service – là nhóm tấn công từ chối dịch vụ, phá hoạt tính sẵn sàng của hệ thống), Probe (là nhóm tấn công do thám, ảnh hưởng đến tính bảo mật của hệ thống, đồng thời cung cấp các thông tin cần thiết để tiến hành các bước tấn công tiếp theo. Các hình thức xâm nhập trái phép được thể hiện trong bảng sau: Bảng III. Các nhóm xâm nhập trái phép trong dữ liệu DARPA Nhóm Tên loại tấn công R2L Dictionary, Ftpwrite, Guest, Httptunnel, Imap, Named, ncftp, netbus, netcat, Phf, ppmacro, Sendmail, sshtrojan, Xlock, Xsnoop U2R anypw, casesen, Eject, Ffbconfig, Fdformat, Loadmodule, ntfsdos, Perl, Ps, sechole, Xterm, yaga DoS Apache2, arppoison, Back, Crashiis, dosnuke, Land, Mailbomb, SYN Flood (Neptune), Ping of Death (POD), Process table, selfping, Smurf, sshprocesstable, Syslogd, tcpreset, Teardrop, UDPstorm Probe insidesniffer, Ipsweep, ls_domain, Mscan, NTinfoscan, Nmap, queso, resetscan, Saint, Satan Nhược điểm lớn nhất của bộ dữ liệu DARPA là được thu thập và lưu giữ ở dạng Tcpdump, có kích thước lớn. B. Dữ liệu KDD-99 Như đã đề cập ở Mục II.A, dữ liệu DARPA do lưu ở dạng Tcpdump. Nên để có thể sử dụng để đánh giá các phương pháp, thuật toán, dữ liệu này cần thông qua một quá trình xử lý ban đầu, bao gồm: Định nghĩa các sự kiện, lựa chọn đặc trưng của các sự kiện, sau đó trích rút đặc trưng và lưu các dự kiện dưới dạng các vector. Như vậy, các phương pháp xử lý ban đầu khác nhau có thể cho các định nghĩa khác nhau về sự kiện hay các đặc trưng khác nhau, từ đó dẫn đến khó khăn trong việc so sánh, phân tích các thuật toán xâm nhập trái phép. Vì thế, với sự tài trợ của DARPA, hội nghị về khai pháp dữ liệu và phát triển tri thức năm 1999 (Knowledge Discovery and Data Mining 1999 – viết tắt là KDD -99) đã thực hiện quá trình xử lý ban đầu đối với tập dữ liệu của Darpa và cho ra tập dữ liệu KDD-99 [2]. Dữ liệu KDD-99 đã định nghĩa sự kiện dựa trên nền tảng của kết nối TCP/ IP: Mỗi sự kiện bao gồm các hoạt động mạng sinh ra khi một máy chủ kết nối với một máy chủ khác, và các hoạt động bên trong máy chủ bị kết nối đó trong thời gian kết nối. Tập dữ liệu KDD-99 được phân thành hai tập dữ liệu: Tập dữ liệu huấn luyện và tập dữ liệu thử nghiệm. các nhóm dữ liệu trong tập dữ liệu KDD-99 giống như trong bảng I, ngoài ra còn thêm nhóm dữ liệu NORMAL là các dữ liệu BỘ DỮ LIỆU DẠNG NETFLOW DÙNG TRONG PHÁT HIỆN XÂM NHẬP TRÁI PHÉP VÀ ỨNG DỤNG Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG20 Số 1 năm 2016 bình thường. Phân bố dữ liệu theo nhóm trong tập dữ liệu KDD-99 được trình bày trong bảng sau. Bảng IV. Phân bố dữ liệu theo nhóm trong tập huấn luyện Nhóm Số lượng Phần trăm(%) R2L 1.126 0.023 U2R 52 0.001 DoS 3.883.370 79.278 Probe 4.102 0.839 NORMAL 972.781 19.859 Bảng V. Phân bố dữ liệu theo nhóm trong tập thử nghiệm Nhóm Số lượng Phần trăm(%) R2L 14.745 4.738 U2R 246 0.079 DoS 231.455 74.374 Probe 14.166 1.339 NORMAL 60.593 19.47 Theo các bảng nêu trên, chúng ta để ý thấy số lượng cũng như tỷ lệ % của nhóm xâm nhập DoS và Probe rất lớn. Điều này không có nghĩa là các nhóm DoS và Probe xảy ra nhiều mà là do KDD- 99 định nghĩa sự kiện dựa trên kết nối TCP/IP. Thông thường mối đợt tấn công DoS và Probe thường sinh ra rất nhiều kết nối, vì vậy trong tập dữ liệu KDD-99 mỗi kết nối TCP/IP được xem như một sự kiện. Mỗi dữ liệu trong KDD-99 được trích rút thành 41 đặc trưng, gồm 4 phần: Phần thứ nhất (từ đặc trưng 1 đến 9) là các đặc trưng cơ bản của kết nối TCP/IP; Phần thứ hai (từ đặc trưng 10 đến 22) là các đặc trưng của máy chủ bị kết nối; Phần thứ ba (từ đặc trưng 23 đến 31) là các đặc trưng về lưu lượng trong khoảng thời gian 2 giây; Phần thứ tư (từ đặc trưng 32 đến 41) là các đặc trưng về lưu lượng trong khoảng thời gian 256 giây. C. Dữ liệu ISCX Information Security Centre of Excellence (ISCX) là một trung tâm nghiên cứu về an toàn thông tin của trường đại học New Brunswick (UNB) – Canada. Xuất phát từ yêu cầu nghiên cứu hệ thống IDS đòi hỏi phải có một bộ Dataset chính xác, đầy đủ, ISCX đã xây dựng một mô hình mạng, mô phỏng các cuộc tấn công trong mạng dựa trên các giao thức HTTP, SMTP, SSH, IMAP, POP3 và FTP. Những luồng dữ liệu thông thường và bất thường được bắt giữ và được đánh dấu. Bộ dữ liệu này đã được giới thiệu bởi Ali Shiravi, Hadi Shiravi, Mahbod Tavallaee, Ali A. Ghorbani tại bài báo “Toward developing a systematic approach to generate benchmark datasets for intrusion detection, Computers & Security, Volume 31, Issue 3, May 2012, Pages 357 -374, ISSN 0167-4048, 10.1016/j. cose.2011.12.012.( article/pii/S0167404811001672). Bộ dữ liệu UNB ISCX 2012 IDS [9] bao gồm dữ liệu thu thập trong vòng 7 ngày, gồm cả dữ liệu thông thường và bất thường, cụ thể: Bảng VI. Bộ dữ liệu ISCX Thứ Ngày Mô tả Kích thước dữ liệu (GB) 6 11/6/2010 Dữ liệu thông thường 16.1 7 12/6/2010 Dữ liệu thông thường 4.22 Chủ nhật 13/6/2010 Infiltrating the network from inside và dữ liệu thông thường 3.95 2 14/6/2010 HTTP Denial of Service và dữ liệu thông thường 6.85 3 15/6/2010 Distributed Denial of Service using an IRC Botnet 23.4 4 16/6/2010 Dữ liệu thông thường 17.6 5 17/6/2010 Brute Force SSH và dữ liệu thông thường 12.3 Bộ dữ liệu ISCX cũng ở dạng Tcpdump. D. Dữ liệu UT Tập dữ liệu UT là tập do nhóm nghiên cứu tại đại học Twente của Hà Lan xây dựng theo dạng Netflow [3]. Tập dữ liệu này được xây dựng bằng phương pháp thu thập dữ liệu xâm nhập trái phép thực tế trên nguyên lý Honeypot. Nhóm nghiên cứu đã xây dựng một Honeypot – một mạng máy tính không có người Nguyễn Hoàng Giang, Trần Quang Anh Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG Số 1 năm 2016 21 sử dụng; như vậy nếu có lưu lượng mạng phát sinh thì đó chính là lưu lượng xâm nhập. Đây là dữ liệu theo dạng Netflow, tuy nhiên khi so sánh với tập dữ liệu của DARPA và KDD-99, dữ liệu UT có một số vấn đề: - Trong tập dữ liệu UT không có dữ liệu bình thường; - Các dữ liệu xâm nhập trái phép được xây dựng tự động bởi Honeypot (trong khi các dữ liệu DARPA và KDD-99 được xây dựng bởi các chuyên gia về an ninh mạng); - Các dữ liệu xâm nhập trái phép chỉ có một loại duy nhất là dữ liệu bất thường. III. XÂY DỰNG BỘ DỮ LIỆU DẠNG NETFLOW DÙNG TRONG IDS A. Phương pháp xây dựng Nhóm tác giả đã thực hiện chuyển đổi dữ liệu DARPA thành dữ liệu dạng Netflow theo sơ đồ như Hình 1. Tcpdump files Netflow exporter Netflow Collector Netflow reader Flow labelling DARPA IDS Data (xxx.inside.tcpdump) Softflowd- 0.9.9 software Flowd-0.9.1 software Manually (Thủ công) Flowd-0.9.1 software Hình 1. Sơ đồ chuyển đổi từ dữ liệu Tcpdump sang Netflow Dữ liệu đầu vào của bộ chuyển đổi này là dữ liệu ở định dạng Tcpdump (bộ dữ liệu của DARPA). Dữ liệu này được truyền đến Module Netflow exporter. Module Netflow exporter thực hiện đọc dữ liệu Tcpdump, sau đó trích rút ra các flow, tạo ra các gói tin theo chuẩn Netflow (v5, v7, v9) và gửi đến Module Netflow collector. Module Netfl ... ow kết nối vào cổng dịch vụ 23 của máy chủ Pascal 3.246 Số lượng flow tấn công vào cổng dịch vụ 23 của máy chủ Pascal 70 Số lượng flow kết nối bình thường vào cổng dịch vụ 23 của máy chủ Pascal 3.176 Số lượng flow kết nối vào cổng dịch vụ 25 của máy chủ Pascal 3.145 Số lượng flow tấn công vào cổng dịch vụ 25 của máy chủ Pascal 1.176 Số lượng flow kết nối bình thường vào cổng dịch vụ 25 của máy chủ Pascal 1.969 Số lượng flow kết nối vào cổng dịch vụ khác của máy chủ Pascal 130.787 Số lượng flow tấn công vào cổng dịch vụ khác của máy chủ Pascal 2.065 Số lượng flow kết nối bình thường vào cổng dịch vụ khác của máy chủ Pascal 128.722 BỘ DỮ LIỆU DẠNG NETFLOW DÙNG TRONG PHÁT HIỆN XÂM NHẬP TRÁI PHÉP VÀ ỨNG DỤNG Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG24 Số 1 năm 2016 Bảng VIII. Số lượng tấn công từ từng máy chủ Máy chủ Số lượng tấn công 206.47.98.151 501 10.20.30.40 20.480 Mạng [209.X.Y.Z] 5.108 Mạng [172.16.X.Y] 539 Khác 2.788 Bảng IX. Số lượng tấn công theo các cổng đích Cổng Số lượng tấn công 0 1.997 25 1.176 22 524 23 70 20 36 21 34 80 28 53 24 110 21 Các cổng khác 25.506 B. Bộ dữ liệu cho máy chủ Marx Bảng X. Các thông số cơ bản của bộ dữ liệu Netflow máy chủ Marx Mô tả Giá trị Kích thức dữ liệu DARPA ở dạng Tcpdump Xấp xỉ 10Gb Số lượng flow đến máy chủ Marx 184.050 Số lượng flow tấn công vào máy chủ Marx 89.830 Số lượng flow bình thường vào máy chủ Marx 94.220 Số lượng flow kết nối vào cổng dịch vụ ftp của máy chủ Marx 561 Số lượng flow tấn công vào cổng dịch vụ ftp của máy chủ Marx 117 Số lượng flow kết nối bình thường vào cổng dịch vụ ftp của máy chủ Marx 444 Số lượng flow kết nối vào cổng dịch vụ 22 của máy chủ Marx 283 Mô tả Giá trị Số lượng flow tấn công vào cổng dịch vụ 22 của máy chủ Marx 56 Số lượng flow kết nối bình thường vào cổng dịch vụ 22 của máy chủ Marx 227 Số lượng flow kết nối vào cổng dịch vụ 23 của máy chủ Marx 1.626 Số lượng flow tấn công vào cổng dịch vụ 23 của máy chủ Marx 65 Số lượng flow kết nối bình thường vào cổng dịch vụ 23 của máy chủ Marx 1.561 Số lượng flow kết nối vào cổng dịch vụ 25 của máy chủ Marx 1.889 Số lượng flow tấn công vào cổng dịch vụ 25 của máy chủ Marx 561 Số lượng flow kết nối bình thường vào cổng dịch vụ 25 của máy chủ Marx 1.328 Số lượng flow kết nối vào cổng dịch vụ 80 của máy chủ Marx 32.379 Số lượng flow tấn công vào cổng dịch vụ 80 của máy chủ Marx 2.030 Số lượng flow kết nối bình thường vào cổng dịch vụ 80 của máy chủ Marx 30.349 Số lượng flow kết nối vào cổng dịch vụ khác của máy chủ Marx 146.715 Số lượng flow tấn công vào cổng dịch vụ khác của máy chủ Marx 86.814 Số lượng flow kết nối bình thường vào cổng dịch vụ khác của máy chủ Marx 59.901 Bảng XI. Số lượng tấn công từ từng máy chủ Máy chủ Số lượng tấn công 10.20.30.40 40.960 Mạng [172.16.X.Y] 12.238 Khác 36.633 Bảng XII. Số lượng tấn công theo các cổng đích Cổng Số lượng tấn công 0 433 25 561 22 56 23 65 20 59 21 58 80 2.030 53 61 110 55 Các cổng khác 86.452 Nguyễn Hoàng Giang, Trần Quang Anh Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG Số 1 năm 2016 25 C. Bộ dữ liệu cho máy chủ Zeno Bảng XIII. Các thông số cơ bản của bộ dữ liệu Netflow máy chủ Zeno Mô tả Giá trị Kích thức dữ liệu DARPA ở dạng Tcpdump Xấp xỉ 10Gb Số lượng flow đến máy chủ Zeno 37.923 Số lượng flow tấn công vào máy chủ Zeno 1.019 Số lượng flow bình thường vào máy chủ Zeno 36.904 Số lượng flow kết nối vào cổng dịch vụ ftp của máy chủ Zeno 1.061 Số lượng flow tấn công vào cổng dịch vụ ftp của máy chủ Zeno 478 Số lượng flow kết nối bình thường vào cổng dịch vụ ftp của máy chủ Zeno 583 Số lượng flow kết nối vào cổng dịch vụ 23 của máy chủ Zeno 1.463 Số lượng flow tấn công vào cổng dịch vụ 23 của máy chủ Zeno 13 Số lượng flow kết nối bình thường vào cổng dịch vụ 23 của máy chủ Zeno 1.450 Số lượng flow kết nối vào cổng dịch vụ 25 của máy chủ Zeno 2.208 Số lượng flow tấn công vào cổng dịch vụ 25 của máy chủ Zeno 496 Số lượng flow kết nối bình thường vào cổng dịch vụ 25 của máy chủ Zeno 1.712 Số lượng flow kết nối vào cổng dịch vụ khác của máy chủ Zeno 31.191 Số lượng flow tấn công vào cổng dịch vụ khác của máy chủ Zeno 104 Số lượng flow kết nối bình thường vào cổng dịch vụ khác của máy chủ Zeno 31.087 Bảng XIV. Số lượng tấn công từ từng máy chủ Máy chủ Số lượng tấn công 11.21.31.41 400 Mạng [172.16.X.Y] 6 Khác 613 Bảng XV. Số lượng tấn công theo các cổng đích Cổng Số lượng tấn công 0 3 25 496 Cổng Số lượng tấn công 22 1 23 1 20 1 21 477 80 6 Các cổng khác 76 E. Bộ dữ liệu cho máy chủ Hume Bảng XVI. Các thông số cơ bản của bộ dữ liệu Netflow máy chủ Hume Mô tả Giá trị Kích thức dữ liệu DARPA ở dạng Tcpdump Xấp xỉ 10Gb Số lượng flow đến máy chủ Hume 294.286 Số lượng flow tấn công vào máy chủ Hume 393 Số lượng flow bình thường vào máy chủ Hume 293.893 Số lượng flow kết nối vào cổng dịch vụ ftp của máy chủ Hume 13.326 Số lượng flow tấn công vào cổng dịch vụ ftp của máy chủ Hume 25 Số lượng flow kết nối bình thường vào cổng dịch vụ ftp của máy chủ Hume 13.301 Số lượng flow kết nối vào cổng dịch vụ 23 của máy chủ Hume 399 Số lượng flow tấn công vào cổng dịch vụ 23 của máy chủ Hume 31 Số lượng flow kết nối bình thường vào cổng dịch vụ 23 của máy chủ Hume 368 Số lượng flow kết nối vào cổng dịch vụ 25 của máy chủ Hume 17.935 Số lượng flow tấn công vào cổng dịch vụ 25 của máy chủ Hume 10 Số lượng flow kết nối bình thường vào cổng dịch vụ 25 của máy chủ Hume 17.925 Số lượng flow kết nối vào cổng dịch vụ 80 của máy chủ Hume 21.664 Số lượng flow tấn công vào cổng dịch vụ 80 của máy chủ Hume 58 Số lượng flow kết nối bình thường vào cổng dịch vụ 80 của máy chủ Hume 21.606 Số lượng flow kết nối vào cổng dịch vụ khác của máy chủ Hume 240.962 Số lượng flow tấn công vào cổng dịch vụ khác của máy chủ Hume 269 Số lượng flow kết nối bình thường vào cổng dịch vụ khác của máy chủ Hume 240.693 BỘ DỮ LIỆU DẠNG NETFLOW DÙNG TRONG PHÁT HIỆN XÂM NHẬP TRÁI PHÉP VÀ ỨNG DỤNG Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG26 Số 1 năm 2016 Bảng XVII. Số lượng tấn công từ từng máy chủ Máy chủ Số lượng tấn công Mạng [1.12.120.X] 48 Mạng [172.16.X.Y] 15 Khác 330 Bảng XVIII. Số lượng tấn công theo các cổng đích Cổng Số lượng tấn công 0 253 25 10 22 1 23 31 20 16 21 9 80 58 Các cổng khác 15 V. ỨNG DỤNG BỘ DỮ LIỆU NETFLOW TRONG PHÁT HIỆN XÂM NHẬP TRÁI PHÉP A. Trích chọn đặc trưng Như đã đề cập ở trên, bộ dữ liệu Netflow gồm rất nhiều trường dữ teliệu khác nhau. Tuy nhiên, để ứng dụng trong phát hiện xâm nhập trái phép, chúng tôi lựa chọn sử dụng các đặt trưng như sau: Bảng XIX. Các đặc trưng lựa chọn trong phát hiện xâm nhập trái phép Tên của đặc trưng Mô tả Protocol (Giao thức (TCP hoặc UDP Packets Số lượng gói tin (packet) trong một flow Octets Số lượng bytes trong một flow Flags Số dạng hexa biểu thị cờ của flow, được gán nhãn để xác định flow nào là bình thường, flow nào là bất thường Các đặc trưng được trích chọn nêu trên đều ở dạng số (numeric) nên rất thuận lợi cho việc thử nghiệm phát hiện xâm nhập trái phép bằng phương pháp học máy, mô phỏng trên phần mềm Weka [5]. B. Lựa chọn thuật toán học máy Các tiêu chí được sử dụng để đánh giá hiệu năng của hệ thống phát hiện xâm nhập trái phép [6]: - Confusion Matrix: Bảng XX. Confusion Matrix Predicted Class Yes No Ac tu al C la ss Yes TP FN No FP TN - True Positives (TP): Số lượng các bất thường được phân loại đúng là bất thường; - True Negatives (TN): Số lượng các bình thường được phân loại đúng là bình thường; - False Positives (FP): Số lượng các bình thường được phân loại sai là bất thường; - False Negatives (FN): Số lượng các bất thường được phân loại sai thành bình thường. - True Positive Rate (TPR): TP TPR Recall TP FN = = + (1) - False Positive Rate (FPR): FP FP FP TN = + (2) - Precision (P): là thước đo một hệ thống có khả năng phát hiện bình thường hay bất thường TP P TP FP = + (3) - Accuracy (A): Độ chính xác TP TNA TP FN FP TN + = + + + (4) Chúng tôi sử dụng các thuật toán học máy SVM Nguyễn Hoàng Giang, Trần Quang Anh Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG Số 1 năm 2016 27 (Support Vector Machines) và Naive Bayes để thực hiện thử nghiệm phân loại và phát hiện xâm nhập trái phép; đồng thời đánh giá hiệu năng của từng thuật toán học máy. Phần mềm được sử dụng để thực hiện các thuật toán học máy là phần mềm Weka. Trong thuật toán học máy SVM, việc sử dụng các kiểu hàm nhân (kernel function) khác nhau có thể cho kết quả đánh giá hiệu năng khác nhau. Có 4 kiểu hàm nhân trong SVM: - Hàm nhân tuyến tính (Linear kernel) có dạng: 1 2 1 2( , )linea T rK x x x x c= + (5) - Hàm nhân đa thức (Polynomial kernel) có dạng: 1 2 1 2) ( )( ,pol d y TaxK x x x c= + (6) - Hàm nhân RBF (RBF kernel) có dạng: 2 1 2 1 2, )( x RBF xx eK x γ −= (7) - Hàm nhân đường xích-ma (sigmoid kernel) có dạng: 1 2 1 2, ) tan( h( )sigmo T idK xx x a x c= + (8) C. Dữ liệu huấn luyện và kiểm thử Để tính toán hiệu năng tổng thể của các thuật toán học máy, chúng tôi sử dụng phương pháp đánh giá 10-fold cross-validation của Weka. Với phương pháp này, bộ dữ liệu Dataset sẽ được chia một cách ngẫu nhiên thành 10 tập con. Với bộ 10 tập con, 1 tập con sẽ được sử dụng cho mục đích kiểm thử, 9 tập con khác được sử dụng cho mục đích dữ liệu huấn luyện. Phương pháp 10-fold cross-validation của Weka sẽ thực hiện lặp đi lặp lại 10 lần với tập dữ liệu, mỗi lần với một tập con làm tập kiểm thử. Kết quả của 10 lần thực hiện sẽ được tính giá trị trung bình để xác định hiệu năng tổng thể của từng thuật toán học máy. Trong 4 bộ dữ liệu Netflow của 4 máy chủ victim, chúng tôi thấy rằng máy chủ Pascal là máy chủ được thử nghiệm tấn công nhiều nhất. Đối với máy chủ Pascal, dịch vụ mail (cổng dịch vụ đích 25) là cổng dịch vụ bị tấn công nhiều nhất. Do đó, chúng tôi đã lựa chọn bộ dữ liệu Netflow của máy chủ Pascal, với dịch vụ mail để kiểm thử. Bảng XXI. Đặc trưng dữ liệu thử nghiệm Thuộc tính Giá trị Proto (TCP) 6 Flags 1b; 1b:::mailbomb; 2.0; 2:::portsweep; 1:::portsweep; 2:::neptune; 16.0; 1b:::ps; 6:::queso; 12:::queso; 7:::queso; c6:::queso; 1.0; 8.0; 1b:::ffbconfig; 6.0; 17.0; 13.0 Octets 89369 – 46 Packets 70 – 1 Trước khi thực hiện thử nghiệm, dữ liệu trải qua giai đoạn chuẩn hóa sử dụng kỹ thuật Discretize của Weka nhằm tăng tính chính xác cho kết quả thử nghiệm. Kết quả kiểm thử đối với từng thuật toán đối với khả năng phát hiện tấn công mailbomb như sau: Bảng XXII. Kết quả thử nghiệm với các thuật toán Naive Bayes SVM linear) (kernel SVM polynomial) (kernel SVM RBF) (kernel SVM sigmoid) (kernel TP 0.994 0.994 0.994 0.994 0.994 FP 0.001 0.001 0.004 0.001 0.001 P 0.990 0.990 0.988 0.990 0.990 Recall 0.994 0.994 0.994 0.994 0.994 VI. KẾT LUẬN Trong phạm vi của bài báo này, chúng tôi đã trình bày mục tiêu và ý nghĩa của việc phải xây dựng bộ dữ liệu dạng Netflow cho bộ dữ liệu xâm nhập trái phép DARPA. Bằng các công cụ mã nguồn mở, kết hợp với tài liệu mô tả về nhãn tấn công của DARPA và cách thức đánh nhãn thủ công, chúng tôi đã xây dựng thành công 4 bộ dữ liệu Netflow tương ứng với các máy chủ Victim. Chúng tôi cũng đã sử dụng công cụ WEKA, với các thuật toán học máy SVM và Naive Bayes đi kèm để thực hiện thử nghiệm phát hiện xâm nhập trái phép trên bộ dữ liệu Netflow đã xây dựng. BỘ DỮ LIỆU DẠNG NETFLOW DÙNG TRONG PHÁT HIỆN XÂM NHẬP TRÁI PHÉP VÀ ỨNG DỤNG Tạp chí KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG28 Số 1 năm 2016 DARPA và ISCX đã thực hiện xây dựng các bộ dữ liệu Tcpdump rất công phu và đồ sộ. Nội dung bài báo mới thực hiện xây dựng hoàn chỉnh bộ dữ liệu Netflow từ bộ dữ liệu DARPA inside. Trong tương lai, chúng tôi sẽ tiếp tục hoàn thiện trọn vẹn bộ dữ liệu DARPA và ISCX để phục vụ cho việc nghiên cứu, thử nghiệm. TÀI LIỆU THAM KHẢO [1]. DARPA Intrusion Detection Data Sets, https://www.ll.mit.edu/ideval/data/; [2]. KDD Cup 1999 Data, edu/databases/kddcup99/kddcup99.html; [3]. UT Dataset, https://www.ietf.org/ proceedings/78/slides/NMRG-2.pdf; [4]. Softflowd, Flowd software, mindrot.org/projects; [5]. Weka 3: Data Mining Software in Java, [6]. M. E. Elhamahmy, H. N. Elmahdy, I. A. Saroit, “A New Approach for Evaluating Intrusion Detection System” , International Journal of Artificial Intelligent Systems and Machine Learning, vol. 2, no. 11, Nov. 2010. [7]. A. M. Riad, Ibrahim Elhenawy, Ahmed Hassan and Nancy Awadallah, “Visualize network anomaly detection by using k-means clustering algorithm”, International Journal of Computer Networks & Communications (IJCNC), vol.5, no. 5, Sep. 2013 [8]. Q.A. Tran, F. Jiang, J. Hu, “A real- time Netflow-based intrusion detection system with improved BBNN and high- frequency field programmable gate arrays,” Proceedings of the 11th IEEE International Conference on Trust, Security and Privacy in Computing and Communications, 2012, pp. 201-208, Liverpool, UK [9]. UNB ISCX Intrusion Detection Evaluation Dataset, Dataset/iscx-IDS-Dataset.html; [10]. Ali Shiravi, Hadi Shiravi, Mahbod Tavallaee, Ali A. Ghorbani, “Toward developing a systematic approach to generate benchmark Datasets for intrusion detection,” Computers & Security, vol. 31, no. 3, pp. 357-374, May 2012 [11]. Monowar H. Bhuyan, D. K. Bhattachryya, J. K. Kalita, “Network Anomaly Detection: Methods, Systems and Tools,” IEEE Communications Surveys & Tutorials, vol.16, no. 1, pp. 303-336, 2014 NETFLOW DATASET IN INTRUSION DETECTION SYSTEM AND APPLICATIONS Abstract: Instrusion datasets in computer networks have been widely applied in the study of network intrusion detection system. There are many different datasets, each has advantages and disadvantages. Netflow dataset has several advantages in intrusion detection system, particularly in large traffic data network. Currently, DARPA dataset is still used in research to detect intrusions, but the dataset is not in the form of Netflow. The objective of this paper is to present a method of building a Netflow dataset from the DARPA dataset; and its applications in detecting intrusions by machine learning methods. This dataset can be used widely in research of Netflow-based intrusion detection. Nguyễn Hoàng Giang nhận bằng kỹ sư ngành Công nghệ thông tin chương trình Đào tạo kỹ sư chất lượng cao PFIEV (Việt – Pháp) tại Đại học Bách Khoa Hà Nội năm 2004. Hiện tại anh đang học thạc sỹ chuyên ngành Hệ thống thông tin tại Học viện Công nghệ Bưu chính viễn thông. Hướng nghiên cứu hiện tại: phát hiện xâm nhập mạng trái phép; bảo mật mạng. Trần Quang Anh nhận bằng tiến sĩ chuyên ngành Xử lý tín hiệu và thông tin tại Đại học Thanh Hoa, Trung Quốc năm 2003, hi ện là giảng viên Học viện Công nghệ Bưu chính Viễn thông. Hướng nghiên cứu chính là P hát hiện xâm nhập trái phép, Lọc thư rác và tin nhắn rác, Máy vectơ hỗ trợ, Giải thuật tiến hóa, Ứng dụng FPGA trong an ninh mạng.
File đính kèm:
- bo_du_lieu_dang_netflow_dung_trong_phat_hien_xam_nhap_trai_p.pdf