Hiện thực hệ thống phát hiện xâm nhập mạng dựa trên sự bất thường sử dụng FPGA & GPU

68 116 0
Hiện thực hệ thống phát hiện xâm nhập mạng dựa trên sự bất thường sử dụng FPGA & GPU

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC QUỐC GIA TP Hồ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA TRẦN NGUYÊN VÕ HIỆN THỰC HỆ THỐNG PHÁT HIỆN XÂM NHẬP MẠNG DỰA TRÊN SỰ BẤT THƯỜNG SỬ DỤNG FPGA & GPU AN ANOMALY-BASED NETWORK INTRUSION DETECTION SYSTEM ON FPGA AND GPU CHUYÊN NGÀNH: KHOA HỌC MẤY TÍNH MÃ SỐ: 60.48.01 LUẶN VÃN THẠC SĨ TR HỒ CHÍ MINH, tháng 12 năm 2017 ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BẤCH KHOA TRẦN NGUYÊN VÕ HIỆN THỰC HỆ THỐNG PHÁT HIỆN XÂM NHẬP MẠNG DỰA TRÊN SỰ BẤT THƯỜNG SỬ DỤNG FPGA & GPU CHUYÊN NGÀNH: KHOA HỌC MÁY TÍNH MÃ SỐ: 60.48.01 LUẬN VĂN THẠC SĨ NGƯỜI HƯỚNG DẪN KHOA HỌC PGS.TS TRẦN NGỌC THỊNH TP HƠ CHÍ MINH, tháng 12 năm 2017 CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA - ĐHQG - HCM Chữ ký Cán hưống dẫn khoa học : PGS TS Trần Ngọc Thịnh, Cán chấm nhận xét 1: PGS TS Trần Mạnh Hà, Cán chấm nhận xét : TS Võ Minh Huân, Luận văn thạc sĩ bảo vệ Trường Đại học Bách Khoa, ĐHQG Tp HCM ngày 28 tháng 12 năm 2017 Thành phần Hội đồng đánh giá luận vần thạc sĩ gồm: (Ghi rõ họ, tên, học hàm, học vị Hội đồng chấm bảo vệ luận vân thạc sĩ) PGS.TS Trần Văn Hoài PGS.TS Trần Mạnh Hà TS Lê Trọng Nhân TS Phạm Quốc Cường TS Võ Minh Huân Xác nhận Chủ tịch Hội đồng đánh giá LV Trưởng Khoa quản lý chuyên ngành sau luận văn sửa chữa (nếu có) CHỦ TỊCH HỘI ĐỒNG PGS TS Trần Văn Hoài TRƯỞNG KHOA KH&KTMT ĐẠI HỌC QUỐC GIA TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VỆT NAM TRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập - Tit - Hạnh phúc NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: Trần Nguyên Võ MSHV: 7140844 Ngày, tháng, năm sinh: 01 - 11 - 1981 Nơi sinh: Phú Yên Ngành: Khoa học máy tính Mã số: 60.48.01 I TÊN ĐỀ TÀI: Hiện thực hệ thống phát xâm nhập mạng dựa bất thường sử dụng FPGA & GPU II NHIỆM VỤ VÀ NỘI DUNG: Hiện thực toán Anomaly-Based IDS kết hợp tảng phần cứng FPGA GPU Cụ thể, xây dựng hệ thống rút trích đặc trưng FPGA hệ thống tính tốn song song mơ hình Neural Network (NN) ttên GPU Sau thực chế giao tiếp tảng để phục vụ cho việc thống kê phát công xâm nhập hệ thống III NGÀY GIAO NHIỆM VỤ: 04-07-2016 IV NGÀY HOÀN THÀNH NHIỆM VỤ: 28-12-2017 V CÁN BỘ HƯỚNG DẪN: PGS.TS Trần Ngọc Thịnh Tp HCM, ngày tháng năm 20 CÁN BỘ HƯỚNG DẪN PGS.TS Trần Ngọc Thịnh TRƯỞNG KHOA KH&KTMT LỜI CẢM ƠN Trong suốt thời gian học tập nghiên cứu trường khóa học thạc sĩ vừa qua Bản thân Tôi nhận nhiều tti thức, khoa học từ người Thầy, Cô Trường Đại học Bách Khoa Tp.HCM Đặc biệt Thầy, Cô Khoa Khoa học Kĩ thuật máy tính Khoa KH&KTMT tạo điều kiện thuận lợi cho Tơi ttong q ttình tham gia thực nghiệm, làm việc tạo môi trường nghiên cứu chuyên nghiệp phòng Lab 201C5 Cùng với nỗ lực thân, Tơi hồn thành luận văn thạc sĩ Từ kết đạt này, Tơi xin tỏ lịng biết ơn sâu sắc tới thầy PGS.TS Trần Ngọc Thịnh hướng dẫn Tôi ttong suốt trình thực đề tài Cảm ơn thầy TS Phạm Quốc Cường, thầy Trần Thanh Bình anh Hồ Quang Chi Bảo Họ người tham vấn đóng góp lời khun bổ ích cho Tôi Tôi xin cám ơn em Trần Thị Thùy Châu em Ngô Đức Minh Họ tạo nhiều điều kiện thuận lợi, cho tiếp cận môi trường làm việc chuyên nghiệp, tinh thần làm việc nhóm hiệu Tơi xin chân thành cảm ơn gia đình đồng nghiệp Tôi Họ người đồng hành thực Tôi ttong suốt thời gian thực đề tài Tp.HCM, tháng 11 năm 2017 Trần Nguyên Võ i TÓM TẮT LUẬN VĂN THẠC SĨ Sự đời phát triển nhanh chóng Internet góp phần to lớn cho phát triển xã hội, nhiều lĩnh vực như: quân sự, thương mại, nghiên cứu, giáo dục Cũng từ đó, dịch vụ Internet không ngừng phát triển, tạo cho nhân loại thời kỳ mới, thời kỳ thương mại điện tử Internet khơng mang lại nhiều lợi ích cho cộng đồng mà ẩn chứa nhiều mối nguy hại kẻ cơng nhằm vào mục đích riêng lợi ích chúng Kẻ công khai thác lỗ hổng hệ thống để tiến hành xâm nhập Trong đó, kẻ cơng tập trung vào ba hướng cơng sau Thứ nhất, lỗ hổng thiết bị, phương tiện truyền thông Thứ hai, lỗ hổng phương thức giao dịch sau lỗ hổng ứng dụng Vì vậy, hàng loạt thách thức đặt để giải vấn đề bảo mật, bảo đảm an tồn an ninh thơng tin hệ thống tập trung vào ba hướng nêu bảo đảm an tồn thơng tin hệ thống máy chủ, bảo đảm an tồn cho phía máy trạm bảo mật thông tin đường truyền Một hệ thống tổng quan tiếp cận ba hướng cơng là: Hệ thống phát hiện, phịng chống xâm nhập (Intrusion Detection Prevention System - IDPS) Hệ thống IDPS gồm có hai hệ thống là: Hệ thống phát xâm nhập (Intrusion Detection System - IDS) Hệ thống phòng chống xâm nhập (Intrusion Prevention System - IPS) Trong hệ thống IDS có hai kĩ thuật để phát cơng là: Hệ thống phát xâm nhập dựa vào dấu hiệu biết (Signature - based Inttusion Detection System - SIDS) hệ thống phát xâm nhập dựa vào dấu hiệu bất thường (Anomaly - based Intrusion Detection System - AIDS) Trong đó, hệ thống SIDS dùng phương pháp phân tích thơng tín gói tin liệu so sánh với hệ thống sở liệu chứa mẫu cơng biết Trong đó, hệ thống AIDS dùng phương pháp huấn luyện mẫu liệu dựa vào hành vi luồng liệu (gói tin bình thường bất thường) để nhận diện phát xâm nhập Những cơng trình nghiên cứu trước đây, thực toán AIDS ttên tảng CPU, kết hợp hai tảng CPU FPGA, hai tảng CPU GPU Nền tảng CPU cho tốn AIDS với hiệu suất thấp, phân bổ tài nguyên điều khiển cho ứng dụng cách cơng Cho nên CPU khơng có khả đáp ứng nhanh cho việc đưa tín hiệu phát công thời gian ngắn Với kết hợp hai tảng CPU FPGA cho AIDS FPGA đóng vai ttị xử lý liệu tốc độ cao áp dụng mơ hình tính tốn song song ttên FPGA giới hạn tài nguyên hệ thống Với kết hợp hai tảng CPU GPU cho AIDS GPU có khả áp dụng mơ hình tính tốn song song nhiên GPU khơng có lợi cho việc xử lý liệu lớn cho hệ thống AIDS Trong nghiên cứu này, giải pháp kết hợp ba tảng FPGA, CPU GPU cho toán AIDS nhằm mục tiêu cải tiến giới hạn cơng trình nghiên cứu trước FPGA đảm nhiệm việc xây dựng, rút trích thơng tin header gói tin GPU đảm nhiệm việc huấn luyện, phân lớp CPU đóng vai ttị bắt tay liệu FPGA GPU Một thực nghiệm kiến trúc AIDS thực ttên ba tảng FPGA, CPU GPU FPGA - Xilinx Virtex-5 XC5VTX240T đảm nhiệm xây dựng, rút trích 10 thơng tin header gói tin, GPU - Gigabyte GeForce GTX 1080 đảm nhiệm xây dựng Neuron Network dùng giải thuật Back-Propagation (BP) CPU - Intel CoreTM Ĩ7 - 4770, 3.40 GHz X 8, đảm nhiệm vai ttò bắt tay liệu Trong nghiên cứu này, CPU xem nhớ đệm (First In Fừst Out - FIFO) Kết thực nghiệm đạt được: Xây dựng, rút ttích đặc trưng ttên FPGA đạt ngưỡng 5.329 Gbps Huấn luyện liệu GPU với thời gian đáp ứng nhanh CPU 12 lần tỉ lệ độ xác hệ thống 80% tốc độ bắn gói tin vào hệ thống đáp ứng thời gian thực 200Mbps ABSTRACT The evolution and rapid development of the Internet had significantly contributed to the development of society, in many areas such as military, commerce, research, education, etc Since then, the services of the Internet are constantly evolving, giving society a new era, the e-commerce era The Internet not only brings many benefits to the community, but it also imposes many of the threats of the attackers on their own for their own benefit An attacker exploits vulnerabilities in the system to infiltrate In it, the attackers focus on three primary attacks: The first, the vulnerability of devices, media The second, transactional flaw and the final, application vulnerabilities Therefore, a series of challenges to address the security, information security and security issues of the system also focuses on the three directions mentioned above: Ensure information security at the server system, ensure security for workstations and information security on the transmission line An overall system approach to solving three primary attacks is the Intru- sion Detection Prevention System (IDPS) The IDPS system consists of two chief systems: Intrusion Detection System (IDS) and Intrusion Prevention System (IPS) IDS systems have two main techniques for detecting attacks: Signaturebased Intrusion Detection System (SIDS) and intrusion detection systems Anomaly-based Intrusion Detection System (AIDS) In particular, the SIDS system uses a method of analyzing the information of data packets compared to the database system containing known attack patterns Meanwhile, the AIDS system uses data-driven behavioral ttaining (normal or abnormal packets) to identify or detect intrusion Previous studies have shown that the AIDS on a CPU, or a combination of two CPU and FPGA, or two CPU and GPU platforms CPU platform for lowperformance AIDS problem, as it allocates resources and controls for applications fairly Therefore, the CPU cannot respond quickly time to short-range attack detection signals The combination of two CPU and FPGA platforms for AIDS, the FPGA can handle higher-speed data processing role but cannot apply the parallel computing model on FPGA because of limited system resources The combination of two CPU and GPU platforms for AIDS, the GPU is capable of applying a parallel computing model However, the GPU does not have the advantage of large-scale data processing for the AIDS system In this study, a solution that combines the three FPGA, CPU, and GPU for AIDS is aimed at improving the limits of previous research FPGA is responsible for building, exttacting information from the header packets The GPU is responsible for the training and classifying The CPU plays a handshake between the FPGA and the GPU An experiment of the AIDS architecture is implemented on three platforms: FPGA, CPU, and GPU FPGA - Xilinx Virtex-5 XC5VTX240T is responsible for building and extracting ten information from the header packets, the GPU - Gigabyte GeForce GTX 1080, which is responsible for building the Neuron Network using the Back- Propagation (BP) algorithm CPU - Intel CoreTM Ĩ7 - 4770, 3.40 GHz X 8, handles data shaking In this study, the CPU is such as a buffer memory First In First Out (FIFO) Experimental results achieved: Build, extract feature on the FPGA to the threshold of 5.329 Gbps Data training on the GPU with a response time of 12 times faster than the CPU and a system accuracy rate of more than 80% when the packet burst rate in the real-time system is 200Mbps V LỜI CAM ĐOAN Tôi xin cam đoan rằng, công trình nghiên cứu riêng tơi hướng dẫn khoa học PGS.TS Trần Ngọc Thịnh Những số liệu, bảng biểu, hình ảnh quan sát, đánh giá, nhận xét tác giả khác trích dẫn nguồn mục "TÀI LIỆU THAM KHẢO" Tồn nội dung tìm hiểu, nghiên cứu kết thực nghiệm cơng trình đạt hồn tồn ttung thực, khơng gian lận phóng đại Nếu có gian lận nào, tơi xin hồn tồn chịu ttách nhiệm cơng trình nghiên cứu Cơng ttình xuất hai báo khoa học hai hội nghị NAFOSTED - NICS 2017 RCCIE 2017 • Tran Nguyen Vo, Chau Tran and Tran Ngoe Thinh, "An FPGA - Based High Throughput Feature Consttuction Architecture for Network Instruction Detection", in Proceedings ofAUN/SEED - Net Regional Conference on Computer & Information Engineering RCCIE 2017, 30 NOV -1 DEC, 2017, Vietnam National University (VNU) - HCMC Press, HO CHI MINH CITY, VIETNAM, pp 37 - 41, 2017 • Chau Tran, Tran Nguyen Vo and Tran Ngoe Thinh, "HA-IDS: A Heterogeneous Anomaly-based Inttusion Detection System", in 2017 4th NA FOSTED Conference on Information and Computer Science, NICS 2017, November 24-25, 2017, Hanoi, Vietnam, pp 156 - 161, 2017 Tp.HCM, tháng 11 năm 2017 Trần Nguyên Võ vi i2 Tài nguyên sử dụng FPGA lai nguyên sử dụng thực hệ thống F-FC ưên Xilinx Virtex-5 XC5VTX240T trình bày Bảng Bảng 8: lai nguyên sử dụng thực hệ thống F-FC 5.3 Component Number Percent Slices Register Slices LOT Block RAM DSP48 71,860 58,561 169 24 47% 39% 52% 25% Kiểm chứng tốc độ độ xác FPGA Kiểm chứng tốc độ: Đầu tiên, tác giả cố gắng kiểm ưa trường hợp, bắn gói tin có kích thước khác 64, 128, 256, 512, 1024, 1500 bytes vào hệ thống, lần bắn gói tin dùng kích thưốc gói tin Để xem xét tốc độ độ ổn định hệ thống mà không gặp đụng độ bảng hashing Sau khỉ tạo gói tin ưên tool packETH, sau đố đưa vào module OSNT Generator để chuyển tối cổng SFP+ Đầu hệ thống F-FC chứa thơng tin rút trích chuẩn hóa, sau đó, chuyển tái module OSNT Monitor để kiểm chứng tốc độ hệ thống Thứ hai, tác giả sử dụng tool HPING3 tạo 10.000 gói khác nhau, gói có size 64 byte bắn vào hệ thống Để kiểm ưa mức độ hiệu việc đụng độ hệ thống Quá trình tương tự kiểm nghiệm kết nối ưên Kiểm chứng độ xác: Để đánh giá độ xác hệ thống, tác giả xây dựng phần mềm hoạt động hệ thống F-FC, sau so sánh kết gói tin là; IP source, IP destination, source Port, destination Port Đầu tiên, tác gỉả xây dựng nhiều tập liệu khác vối số kết nối tăng từ 100 tói 500 gói tin có kích thước 64 byte (Dataset.cap), số kết nối xử lý vối kích thước K-window Sau tạo tập liệu, tác giả sử dụng OSNT Generator để gửi gói tin đưa tới Host PC thơng qua PCIe bus, sau dùng cơng cụ Wireshark sinh file kết Sau cùng, tác giả so sánh kết phần mềm (Resultl) kết liệu qua hệ thống FFC (Result2) để đánh giá độ tin cậy 37 5.4 Thiết lập thực nghiệm toàn hệ thống HA-IDS Hệ thống thực nghiệm HA-IDS bao gồm board NetFPGA-10G chứa chip Xilinx Virtex5 XC5VTX24T bốn cổng SFP+ Phần giao tiếp sử dụng CPU Intel CoreTM Ì7-4770, 3.40GHz X 8, hệ điều hành Ubuntu 14.04 LTS 64 bit dung lượng Ram 16GB Một PC khác gắn card Ethernet 10G hoạt động user mạng Sau hệ thống GANN sử dụng thực giải thuật BP mạng nơron GIGABYTE GeForce GTX 1080 (chứa 2560 cores) Hình 23 minh họa mơ hình thực nghiệm Hình 23: Mơ hình thực nghiệm hệ thống HA-IDS 5.5 Kiểm chứng Thòi gian huấn luyện độ tin cậy HA-IDS Để đánh giá hệ thống HA-IDS, tác giả tạo 2GB liệu chứa hai tập riêng biệt, tập 1GB Tập tiên Data chứa gói tin bình thường (normal), lạp tin thứ hai Data chứa gói tin công DDoS Trong phần thực nghiệm này, tác giả đánh giá kiểm chứng hai chiến lược là; thứ nhất, so sánh thời gian huấn luyện GPU CPU Thứ hai, kiểm tta độ tin cậy hệ thống 38 So sánh thời gian huấn luyện liệu GPU CPU: Kiểm nghiệm xây dựng mạng nơron dùng giải thuật BP ttên CPU GPU chế độ huấn luyện offline Ban đầu, tác giả lấy hai tập liệu Data Data gán nhãn có giá ttị tương ứng Các tập liệu gửi Ethernet packets (.pcap files) từ CPU1 tới hệ thống FPGA thông qua cổng SFP+ Phần mềm ứng dụng TCPRelay dùng để gửi kết nối TCP Sau đó, tác giả trộn hai tập liệu với cách ngẫu nhiên Host CPU2 trước huấn luyện offline GPU CPU với 11 input (ttong 10 input + input giá ttị label), lớp hidden lớp output Sau cùng, tác giả so sánh kết thời gian huấn luyện Kiểm tra độ tin cậy hệ thống HA-IDS: Từ tập liệu Data 0, Data tiếp tục chia làm hai tập Như có tập tương ứng tập có tên gọi là: D0_H, D0_K, D1_H, D1_K Với tập liệu D0_H D1_H phục vụ cho việc huấn luyện, lạp D0_K, D1_K phục vụ cho việc kiểm tra Sau tác giả tiến hành tùy chỉnh thơng số mạng cho phù hợp, cách thay đổi giá trị số node lớp hidden số epoch Sau tùy chỉnh thông số phù hợp cho hệ thống, tác giả tiến hành thực chế độ thời gian thực (real-time hay online) Bằng việc gửi tập D0_K D1_K từ CPU1 tới FPGA Dữ liệu chuẩn hóa chuyển tiếp tới GPU thơng qua CPU2 Sau cùng, tác giả quan sát xem tỉ lệ phát để kiểm tta độ tin cậy hệ thống 5.6 Tóm tắt Chương Chương ttình bày tiến hành thực nghiệm hệ thống F-FC ttên NetFPGA-10G, thực nghiệm tồn hệ thống HA-IDS Với tiêu chí đánh giá: Kiểm chứng tốc độ độ xác ttên hệ thống F-FC; Kiểm chứng thời gian huấn luyện độ tin cậy hệ thống HA-IDS KỀT QUẢ THỰC NGHIỆM 6.1 So sánh tấc độ thực nghiệm tấc độ lý thuyết hệ thống F-FC Theo lý thuyết, gửi gói tin kích thước với K-window khác tốc độ hệ thống phụ thuộc vào công thức sau: Theo công thức, 39 Speed = Frequency X Number o f packets X (Data size ■+■ 4) tv inti í) IV size với tần số (Frequency) 160 MHz, áp dụng cho toàn hệ thống F-FC, ttong số lượng gói tin (Number of packets) xem số lượng gói tin rút ttích chuẩn hóa đầu Window size 10,000 cycles, 50,000 cycles, 100,000 cycles Một số không đổi bytes giá ttị overhead cho việc khởi tạo chế bắt tay hai cổng SFP+ cho kết nối Bảng ttình bày kết áp dụng cơng thức tương ứng cho ba kích thước window số lượng gói tin đầu hệ thống (1 1024-ram size) Bảng 9: Kết tốc độ ttên lý thuyết Kwindow 10,000 clk 50,000 clk 100,000 clk Speed of nutpur Bytes/'s 1.ỌR80M 0.2176M 0.I088M Speed of 1024 output Bits/s Bytes's 8.7O4ỮM 1.114IG 0.2228G (11114G 1.7408M (18704M BitS'S 8.9I23G 1.7826G 0.8913G Khi dịch chuyển gói tin liên tục nhiều lần cho kết nối cho output Hình 24 minh chứng rằng, tốc độ thực tế xấp xỉ với lý thuyết phù hợp Tại thơng lượng output không đổi ttong input thay đổi ttong kích thước gói tin (từ 64 bytes tới 1,500 bytes) Tuy nhiên, Hình 25 cho thấy kết việc đụng độ bảng hashing Điều diễn tả thông lượng hệ thống gửi 10,000 gói tin khác có kích 40 ■ I 0,í)0tì_cl!k-Theory ■ I Ù,OOtì^clk_Experìment ■ 5O.()OO_cllk_iThenry TJ H 100.0tì0_clk_Theciry 50.000_clk_EMperÙTieiit !K 100.000_clk_En pc riment Hình 24: Kiểm nghiệm thơng lượng với kết nối thước 64 bytes ỗ tốc độ cao, tượng trưng cho nhiều kết nối khác để cố gắng có cực đại tốc độ input window size Quan sát Hình 25, thông lượng thực tế thấp theo lý thuyết Ví dụ, hệ thống vối window size 10,000 cycles đạt 5.329 Gbps đạt 60% so vối số lý thuyết Mặc dù độ lệch window size 50,000 cycles 100,000 cycles nhỏ tương ứng với 0.0176 Gbps 0.0003 Gbps, tác động lớn so vối window size 10,000 cycles Bởi vì, window size lớn mức độ đụng độ cao (dễ dàng sảy đụng độ hơn) 41 ỉu,iiưif IU.ÍỈB* Number of packets Hình 25: Kiểm nghiệm thơng lượng với 1024 kết nối 6.2 Độ xác hệ thống F-FC Độ xác tương ứng vối window size cao, trung bình 70% Được miêu tả ưên Hình 26 Tuy nhiên, kết cho thấy số lượng ■ KI.OIMK’l.K ■

Ngày đăng: 04/02/2020, 16:40

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan