1. Trang chủ
  2. » Luận Văn - Báo Cáo

Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA

65 8 0

Đ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

Thông tin cơ bản

Tiêu đề Hiện Thực Hệ Thống Phát Hiện Tấn Công Trong Mạng Internet Dựa Vào Các Bất Thường Lên FPGA
Tác giả Nguyễn Phạm Anh Khoa
Người hướng dẫn TS. Trần Ngọc Thịnh, TS. Đinh Đức Anh Vũ
Trường học Đại học Bách Khoa
Chuyên ngành Khoa Học Máy Tính
Thể loại Luận Văn Thạc Sĩ
Năm xuất bản 2011
Thành phố TP Hồ Chí Minh
Định dạng
Số trang 65
Dung lượng 3,4 MB

Cấu trúc

  • Phần 1. GIỚI THIỆU ĐỀ TÀI (11)
    • 1.1 Tổng quan (11)
    • 1.2 Giới thiệu đề tài (12)
    • 1.3 Tính cấp thiết của đề tài (13)
    • 1.4 Mục tiêu và giới hạn của đề tài (13)
    • 1.5 Tính khả thi của đề tài (14)
  • Phần 2. NHỮNG CÔNG TRÌNH LIÊN QUAN (15)
    • 2.1 Hệ thống phát hiện tấn công bằng phương pháp rút trích những thành phần cơ bản trên FPGA (15)
    • 2.2 Kết hợp các phương pháp phân loại trong hệ thống phát hiện tấn công (16)
    • 2.3 Hệ thống phát hiện các bất thường trong mạng internet sử dụng giải thuật của lí thuyết thông tin, K-NN và KMC (18)
    • 2.4 Một cách tiếp cận mới cho hệ thống phát hiện tấn công bằng cách sử dụng mạng Neural và phương pháp phân cụm mờ (18)
  • Phần 3. CƠ SỞ LÍ THUYẾT (21)
    • 3.1 Kiến trúc tổng quát của một hệ thống phát hiện tấn công trong mạng internet (21)
    • 3.2 Các phương pháp được dùng trong hệ thống phát hiện tấn công dựa trên sự bất thường của mạng máy tính (23)
    • 3.3 Rút trích những thông tin đặc trưng trong mạng internet (29)
    • 3.4 Công nghệ Field Programmable Gate-Array và board NetFPGA (37)
  • Phần 4. HIỆN THỰC HỆ THỐNG (40)
    • 4.1 Tập dữ liệu KDD 99 (Knowledge Discovery and Data mining) (40)
    • 4.3 Qui trình phát triển và hiện thực hệ thống (44)
    • 4.4 Xây dựng mô hình (45)
    • 4.5 Hiện thực mô hình lên board NetFPGA (52)
    • 4.6 Kết quả thực nghiệm (57)
  • Phần 5. KẾT LUẬN (61)
    • 5.1 Tổng kết (61)
    • 5.2 Những đóng góp của đề tài (61)
    • 5.3 Hướng phát triển (62)
  • Phần 6. TÀI LIỆU THAM KHẢO (63)

Nội dung

GIỚI THIỆU ĐỀ TÀI

Tổng quan

Với sự phát triển mạnh mẽ của internet, vấn đề an toàn mạng ngày càng được chú trọng Firewall, mặc dù là một bộ lọc dữ liệu cơ bản, không còn đủ để đáp ứng yêu cầu cao của người dùng Điều này đã dẫn đến sự ra đời của các thiết bị và ứng dụng phát hiện tấn công mạng, hoạt động dựa trên hai cơ chế chính: phân tích gói dữ liệu và so sánh mẫu dữ liệu Phương pháp so sánh mẫu (signature-based) có ưu điểm là phát hiện các tấn công đã biết với độ chính xác cao và ít cảnh báo giả, nhưng lại không phát hiện được các tấn công mới, đòi hỏi cập nhật thường xuyên Ngược lại, phương pháp dựa vào bất thường có khả năng nhận diện các tấn công mới nhưng thường gặp phải vấn đề với độ chính xác và dễ phát ra cảnh báo giả.

Để phát hiện các loại tấn công mạng, bất kể phương pháp nào, đều cần một khối lượng tính toán lớn Với sự phát triển nhanh chóng của tốc độ internet hiện nay, các phần mềm thường không thể đáp ứng kịp thời yêu cầu về thời gian thực.

Nguyễn Phạm Anh Khoa 2 cho rằng việc sử dụng các mạch phần cứng để xử lý, đặc biệt là FPGA, là một giải pháp hiệu quả cho vấn đề này Hơn nữa, với khả năng tái cấu hình, FPGA mang lại lợi thế lớn trong việc bảo trì, cập nhật và nâng cấp hệ thống.

Giới thiệu đề tài

Đề tài “Hiện thực hệ thống phát hiện các tấn công trong mạng internet dựa vào các dấu hiệu bất thường trên FPGA” được xây dựng nhằm phát hiện các loại tấn công mới và tận dụng sức mạnh tính toán của phần cứng để đáp ứng yêu cầu về thời gian thực Tuy nhiên, việc sử dụng FPGA đặt ra thách thức lớn trong việc tối ưu hóa tài nguyên, do mỗi chip FPGA có số lượng “logic element” rất hạn chế.

Do không có sẵn tập dữ liệu kiểm tra tính đúng đắn của hệ thống dò tìm và phát hiện tấn công trên mạng, tôi đã chọn tập dữ liệu KDD99, mặc dù tập dữ liệu này được xây dựng từ dự án DARPA 98 của MIT Lincoln Lab Tập KDD99 vừa được sử dụng làm tập huấn luyện, vừa là tập kiểm tra, với mỗi mẫu chứa 41 thuộc tính của từng kết nối mạng.

Phần 1 Giới Thiệu Đề Tài

Tính cấp thiết của đề tài

Với sự gia tăng của nhiều hình thức tấn công khác nhau, các hệ thống phát hiện tấn công chỉ dựa vào các loại tấn công đã biết sẽ không đủ khả năng nhận diện các phương thức tấn công mới, đặc biệt là các cuộc tấn công dựa trên lỗ hổng "Zero-day", thường được phát hiện sau khoảng 384 ngày.

Hệ thống phát hiện các loại tấn công mới dựa vào sự bất thường trong mạng internet thường có thời gian phát hiện chậm, khoảng vài ngày, do sự phức tạp của thuật toán và khối lượng tính toán lớn Tuy nhiên, với kiến trúc FPGA, thời gian tính toán có thể được cải thiện đáng kể, giúp phát hiện các loại tấn công nhanh chóng hơn.

Nếu thành công, đề tài này sẽ giúp phát hiện nhanh chóng các loại tấn công mới và khi kết hợp với các hệ thống phát hiện tấn công dựa trên sự so trùng mẫu, sẽ nâng cao tính an toàn cho mạng máy tính.

Mục tiêu và giới hạn của đề tài

Do thời gian hạn chế, mục tiêu của đề tài là xây dựng phần lõi của hệ thống phát hiện tấn công, sử dụng 41 thuộc tính được rút trích từ mỗi kết nối mạng, thay vì phát triển một hệ thống hoàn chỉnh Phần lõi này sẽ được hiện thực hóa trên board NetFPGA của Xilinx.

- Phần công việc của đề tài có thể được mô tả rõ ràng trong hình bên dưới:

Hình 1 - Nhiệm vụ của đề tài

Tính khả thi của đề tài

Sự kết hợp giữa bảo đảm an ninh mạng và công nghệ FPGA đang mở ra những giải pháp mới cho các vấn đề bảo mật trên internet Xuất phát từ yêu cầu cấp thiết trong việc bảo vệ an ninh mạng, việc ứng dụng công nghệ FPGA hứa hẹn mang lại những phương thức bảo mật hiệu quả hơn.

Từ những năm 80, nghiên cứu về việc phát hiện các tấn công dựa trên sự bất thường của mạng internet đã bắt đầu hình thành, mặc dù trước đây không được chú trọng bằng phương pháp so sánh mẫu Gần đây, lĩnh vực này đã nhận được sự quan tâm đáng kể và đạt được những thành công nhất định Sự phát triển của nền tảng FPGA cũng góp phần tăng cường tiềm năng thành công cho đề tài này.

Packet Packet Rút trích thuộc tính của kết nối (41 thuộc tính)

Bộ phát hiện tấn công mạng dựa vào tập 41 thuộc tính

Kết quả phân loại Công việc của đề tài

NHỮNG CÔNG TRÌNH LIÊN QUAN

Hệ thống phát hiện tấn công bằng phương pháp rút trích những thành phần cơ bản trên FPGA

- Hệ thống được hiện thực trên board FPGA gồm 2 module chính là module rút trích đặc trưng (FEM) và module phân tích các thành phần cơ bản (PCA)[1]

Hình 2 - Hệ thống phát hiện tấn công bằng phương pháp PCA

Để rút trích đặc trưng từ mạng internet, tác giả chủ yếu sử dụng phần header của packet, cùng với thông tin về thời gian duy trì kết nối và các cờ SYNC/FIN/RST Thông tin từ module FEM sẽ được đưa vào PCA để giảm số chiều, từ đó tính toán khoảng cách giữa vector đặc trưng thu thập được và các vector trong trạng thái bình thường Nếu giá trị vượt qua ngưỡng quy định, hệ thống sẽ phát ra cảnh báo.

Cách làm này giúp giảm số thuộc tính cần quan tâm cho từng kết nối mạng, từ đó đơn giản hóa mạch và tăng tốc độ xử lý Tuy nhiên, tác giả đánh giá hiệu quả của hệ thống một cách tách rời giữa module rút trích đặc trưng mạng và module phân tích các thành phần cơ bản, dẫn đến việc không phản ánh chính xác hiệu suất toàn hệ thống.

Kết hợp các phương pháp phân loại trong hệ thống phát hiện tấn công

Mỗi phương pháp học máy đều có những ưu điểm và nhược điểm riêng, vì vậy tác giả đề xuất việc kết hợp các phương pháp này để tối ưu hóa khả năng phân loại và giảm thiểu sai sót của từng thuật toán Các thuật toán được lựa chọn để kết hợp bao gồm: Lập trình di truyền tuyến tính, Hệ thống suy diễn mờ thích nghi, và Rừng ngẫu nhiên.

Tập 41 thuộc tính của các kết nối mạng đã được rút gọn thành 15 thuộc tính chính, được áp dụng khác nhau cho các loại kết nối như Normal, Probe, DoS, User to Root (U2R) và Remote to Local (R2L) Những thuộc tính này sẽ được sử dụng trước khi được đưa vào các thuật toán riêng biệt để huấn luyện và kiểm tra mô hình hoạt động của hệ thống.

Phần 2 Những Công Trình Liên Quan

Hình 3 - Hệ thống phát hiện tấn công bằng cách kết hợp nhiều giải thuật

Hệ thống đạt độ chính xác vượt trội trên 99% nhờ vào việc kết hợp nhiều giải thuật khác nhau Tuy nhiên, tác giả chỉ sử dụng một tập dữ liệu nhỏ từ KDD99 với khoảng 6000 kết nối để huấn luyện và kiểm tra, điều này làm giảm tính rõ ràng và khả năng so sánh của kết quả.

Nguyễn Phạm Anh Khoa nhấn mạnh rằng việc so sánh kết quả một cách chính xác và khách quan là rất quan trọng Đồng thời, việc kết hợp nhiều thuật toán phân loại khác nhau cũng là một gợi ý hiệu quả để nâng cao độ chính xác.

Hệ thống phát hiện các bất thường trong mạng internet sử dụng giải thuật của lí thuyết thông tin, K-NN và KMC

Tác giả áp dụng các kỹ thuật tính toán trong lý thuyết thông tin để xác định mức độ quan trọng của các thuộc tính trong từng kết nối mạng, chỉ lựa chọn những thuộc tính có tầm quan trọng cao thay vì sử dụng toàn bộ 41 thuộc tính Để tính toán sự bất thường trong mạng Internet, tác giả đã phát triển hai thuật toán Selected feature 5NN (SF-5NN) và Suspect 5NN (SUS-5NN) bằng cách sử dụng phương pháp K-NN và KMC, dựa trên khoảng cách với các mẫu trong tập huấn luyện.

Mặc dù độ chính xác của phương pháp đạt từ 92.56% đến 92.84%, nhưng khối lượng và thời gian tính toán lớn khiến nó chỉ phù hợp cho việc phân tích thông tin lưu trữ trên hệ thống, thay vì phát hiện tấn công trong thời gian thực.

Một cách tiếp cận mới cho hệ thống phát hiện tấn công bằng cách sử dụng mạng Neural và phương pháp phân cụm mờ

Nhiều nghiên cứu đã chứng minh hiệu quả của mạng neural trong hệ thống phát hiện tấn công trên Internet Tuy nhiên, bất kể phương pháp nào được áp dụng, bao gồm học có giám sát, không giám sát hoặc kết hợp cả hai, mạng neural vẫn tồn tại những hạn chế nhất định.

Phần 2 Những Công Trình Liên Quan

Nguyễn Phạm Anh Khoa 5 chỉ ra rằng hệ thống này thiếu sự ổn định và khả năng phát hiện các loại tấn công không thường xuyên Để cải thiện độ chính xác, phương pháp kết hợp giữa mạng neural và phân cụm mờ đã được áp dụng, thay vì chỉ dựa vào mạng neural đơn lẻ.

- Cách hiện thực của phương pháp này gồm 3 bước:

Hình 4 - Mô hình của hệ thống FC-ANN

Phương pháp gom cụm C-Mean được sử dụng để phân chia tập huấn luyện thành năm tập riêng biệt: Normal, Probe, DoS, User to Root (U2R) và Remote to Local (R2L) Với đặc điểm là phương pháp phân chia mềm, C-Mean cho phép một mẫu dữ liệu có thể thuộc về nhiều cụm khác nhau với tỷ lệ nhất định, điều này giúp tối ưu hóa quá trình huấn luyện.

Để tối ưu hóa quá trình huấn luyện, chúng tôi xây dựng 5 mạng neural riêng biệt cho từng tập dữ liệu khác nhau Mỗi mạng neural gồm 3 tầng, với 41 ngõ nhập ở tầng đầu tiên, đại diện cho 41 đặc tính của mẫu dữ liệu Tầng ẩn có 18 node, và tầng cuối cùng có 5 ngõ ra, cho phép phân tích và dự đoán hiệu quả hơn.

+Bước tổng hợp cũng được hình thành nên 1 mạng neural 3 tầng với

5 ngõ nhập ở tầng 1 tương ứng với 5 ngõ xuất của bước 2, tầng ẩn có 13 node và cũng với 5 ngõ xuất

Phương pháp hiện thực này giúp giảm độ phức tạp trong việc xây dựng mạng neural và nâng cao độ chính xác cho hệ thống phát hiện tấn công Tuy nhiên, nó chỉ hiệu quả trong việc phát hiện các tấn công tần số thấp như U2R và R2L, trong khi khả năng phát hiện tấn công tổng thể vẫn chưa đạt yêu cầu cao.

CƠ SỞ LÍ THUYẾT

Kiến trúc tổng quát của một hệ thống phát hiện tấn công trong mạng internet

Dự án DARPA năm 1998 đã dẫn đến việc thành lập nhóm CIDF (“Common Intrusion Detection Framework”) với nhiệm vụ xây dựng kiến trúc chung cho các hệ thống phát hiện tấn công Đến năm 2000, CIDF đã hợp tác với tổ chức IETF (“Internet Engineering Task Force”) để thành lập nhóm IDWG (“Intrusion Detection Working Group”) Nhóm IDWG đã xác định một kiến trúc tổng quát cho các hệ thống phát hiện tấn công, dựa trên bốn khối chức năng chính.

E-box (Event-boxes) là khối được tạo thành từ một tập hợp các cảm biến, có nhiệm vụ thu thập thông tin từ hệ thống cần giám sát Thông tin thu thập được sẽ được phân tích bởi các khối khác trong hệ thống.

D-box (Database-boxes) là các khối chức năng có nhiệm vụ lưu trữ thông tin thu thập từ E-box, để phục vụ cho việc xử lý của các khối A hoặc R.

+ A-box (Analysis-boxes): Khối này giữ nhiệm vụ xử lí, phân tích các thông tin từ E-box để phát hiện ra các tấn công hoặc phát ra cảnh báo

R-box (Response-boxes) là một khối chức năng quan trọng, có nhiệm vụ phát ra cảnh báo và thực hiện các phản ứng thích hợp đối với những loại tấn công đã được phát hiện.

Hình 5 - Kiến trúc tổng quát của một hệ thống phát hiện tấn công

Hệ thống phát hiện tấn công được phân chia thành hai loại dựa vào nguồn thông tin thu thập được từ E-box: một loại hoạt động trên máy đơn và loại còn lại hoạt động trên mạng máy tính.

Thông tin cần thiết để phân tích tấn công trên một máy tính đơn thường liên quan đến các chương trình đang chạy và các lời gọi hàm hệ thống, chủ yếu gắn liền với hệ điều hành Trong khi đó, trên một mạng máy tính, thông tin quan trọng bao gồm lưu lượng mạng, địa chỉ IP, các cổng dịch vụ và các giao thức trao đổi dữ liệu.

Hệ thống phát hiện tấn công được phân chia thành hai loại chính dựa trên cách phân tích và xử lý dữ liệu của khối A-box: loại thứ nhất là dựa vào so trùng mẫu (signature-based hay misuse-based), và loại thứ hai là dựa vào những dấu hiệu bất thường trong mạng internet.

Phần 3 Cơ Sở Lí Thuyết

(anomaly-based) Luận văn này chúng ta chỉ tập trung xử lí và phát hiện tấn công dựa trên những dấu hiệu bất thường của mạng máy tính.

Các phương pháp được dùng trong hệ thống phát hiện tấn công dựa trên sự bất thường của mạng máy tính

Mặc dù có nhiều phương pháp khác nhau để phát hiện tấn công trong hệ thống mạng dựa trên các dấu hiệu bất thường, nhưng hầu hết các phương pháp này đều chia sẻ những khối chức năng cơ bản hoặc các bước tương tự.

Hình 6 - Các bước chính trong một hệ thống phát hiện tấn công dựa vào sự bất thường trong mạng internet

Thông số hóa là quá trình xác định các trạng thái đặc trưng của hệ thống cần giám sát Do hệ thống thường bị ảnh hưởng bởi nhiều yếu tố, việc xử lý tất cả các yếu tố này không chỉ không khả thi mà còn kém hiệu quả Do đó, cần rút gọn và tập trung vào những thông số chính để đảm bảo hiệu quả giám sát.

Huấn luyện mô hình dò được thực hiện bằng cách sử dụng tập dữ liệu đặc trưng, mô tả hành vi bình thường và bất thường của hệ thống Tập dữ liệu này đóng vai trò quan trọng trong việc xây dựng và cải thiện độ chính xác của mô hình.

Dò tìm tấn công Báo cáo tấn công

Nguyễn Phạm Anh Khoa 10 đã tìm ra và phát hiện thành công Việc huấn luyện có thể được thực hiện tự động hoặc thủ công, tùy thuộc vào từng phương pháp cụ thể.

Dò tìm tấn công là quá trình so sánh các thông số của hệ thống với giá trị ngưỡng đã được xác định trong bước huấn luyện Khi các thông số quan sát được cao hơn hoặc thấp hơn giá trị ngưỡng này, hệ thống sẽ phát ra cảnh báo để thông báo về khả năng xảy ra tấn công.

Tùy thuộc vào phương pháp xử lý liên quan đến mô hình giám sát, kỹ thuật phát hiện tấn công dựa trên sự bất thường được chia thành ba lớp chính: phương pháp thống kê, hệ tri thức và học máy.

Phương pháp này thu thập thông tin về hoạt động mạng như lưu lượng dữ liệu, số lượng packet theo từng giao thức, và địa chỉ IP khác nhau, tạo ra một bảng thông tin đặc trưng cho mạng Để phát hiện tấn công, phương pháp cần hai tập dữ liệu: một cho trạng thái mạng hiện tại và một cho trạng thái đã được huấn luyện trong quá khứ, từ đó so sánh và tính toán độ bất thường của hệ thống Hệ thống sẽ cảnh báo khi độ bất thường vượt quá ngưỡng quy định.

Một trong những phương pháp thống kê sớm nhất là mô hình đơn biến, trong đó các thông số được mô hình hóa dựa trên phân bố ngẫu nhiên và độc lập Gaussian Điều này giúp xác định khoảng giá trị chấp nhận cho mỗi biến trước khi phân tích dữ liệu thực nghiệm.

Phần 3 Cơ Sở Lí Thuyết

Nguyễn Phạm Anh Khoa 11 cho rằng việc kiểm tra và so sánh các biến trong mô hình đa biến sẽ giúp phát hiện các tấn công hiệu quả hơn bằng cách xác định mối quan hệ giữa chúng Bên cạnh đó, mô hình chuỗi thời gian cũng là một giải pháp hữu ích, cho phép quan sát các trạng thái của mạng cùng với bộ đếm sự kiện hoặc tài nguyên trong một khoảng thời gian nhất định Hệ thống sẽ phát ra cảnh báo khi tỉ lệ xảy ra của một trạng thái quan sát được quá thấp so với các giá trị trước đó.

Việc áp dụng phương pháp thống kê trong việc dò tìm và phát hiện tấn công mạng Internet mang lại nhiều lợi ích, như khả năng tự học từ quan sát mà không cần định nghĩa trước hoạt động bình thường của hệ thống Thời gian học càng dài, độ chính xác trong việc phát ra cảnh báo càng cao Tuy nhiên, phương pháp này cũng có một số hạn chế, bao gồm độ nhạy cảm với lỗi do phụ thuộc vào thông tin thống kê, cũng như khó khăn trong việc thiết lập các giá trị ngưỡng, điều này có thể dẫn đến cảnh báo giả hoặc bỏ sót các tấn công Hơn nữa, giả định về hàm phân bố xác suất cho các biến không phải lúc nào cũng chính xác.

- Phương pháp sử dụng hệ cơ sở tri thức:

Hệ chuyên gia là một phương pháp phổ biến trong việc phát hiện tấn công, dựa trên nền tảng hệ cơ sở tri thức Mục tiêu chính của hệ chuyên gia là phân loại các dòng dữ liệu cần xác thực thông qua một tập luật, bao gồm ba bước chính, trong đó đầu tiên là xác định các thuộc tính và các lớp khác nhau.

Nguyễn Phạm Anh Khoa 12, dữ liệu sẽ được xác định dựa trên tập huấn luyện Tiếp theo, một tập hợp các quy tắc sẽ được sử dụng để phân loại, cùng với các thông số và phương pháp được dẫn xuất Cuối cùng, dòng dữ liệu cần xác thực sẽ được phân loại vào các lớp tương ứng.

Hệ chuyên gia được xây dựng thủ công thông qua việc mô tả các tập luật của chuyên gia, với độ đầy đủ của mô tả càng cao thì khả năng nhận diện các loại tấn công của hệ thống càng tốt Điều này cũng giúp giảm thiểu các cảnh báo sai từ hệ thống Việc xác định các tập luật có thể được thực hiện bằng cách sử dụng các công cụ hình thức như máy trạng thái hữu hạn (FSM) và ngôn ngữ mô tả như UML hay N-grammars.

Phát triển hệ thống phát hiện tấn công mang lại lợi ích lớn về sức mạnh và tính linh hoạt Tuy nhiên, thách thức lớn nhất là xây dựng tập luật chất lượng cao, một nhiệm vụ đòi hỏi nhiều thời gian và công sức.

Phương pháp học máy là kỹ thuật xây dựng mô hình để phân loại dữ liệu thành các lớp khác nhau, yêu cầu một tập dữ liệu đã được gán nhãn để huấn luyện Mặc dù có khả năng điều chỉnh chiến lược thực thi theo yêu cầu thông tin mới, phương pháp này tiêu tốn nhiều tài nguyên cho quá trình tính toán.

Phần 3 Cơ Sở Lí Thuyết

Rút trích những thông tin đặc trưng trong mạng internet

Để phát triển một hệ thống phát hiện tấn công dựa trên sự bất thường trong mạng internet, cần thiết phải xây dựng các phương pháp rút trích thông tin đặc trưng Những thông tin này sẽ được sử dụng làm tiêu chí để so sánh các trạng thái khác nhau của mạng.

Dựa trên các nghiên cứu trước đây, mỗi kết nối trong mạng có thể rút trích được 41 thuộc tính đặc trưng, được phân chia thành ba nhóm chính.

+ Nhóm những thuộc tính cơ bản của một kết nối mạng, những thuộc tính này được rút ra từ phần header của packet:

Tên thuộc tính Kiểu Mô tả

1 duration Integer Thời gian duy trì của một kết nối

2 protocol_type Nominal Giao thức của kết nối mạng: TCP, UDP hay ICMP

3 service Nominal http, ftp, smtp, telnet,…

Trạng thái của kết nối, có thể có các trạng thái sau: S0, S1, S2, S3, OTH, REJ, RSTO, SRSOS0, SH,

5 src_bytes Integer Số byte được gởi đi trong 1 kết nối

6 dst_bytes Integer Số byte nhận được trong 1 kết nối

Có giá trị là 1 nếu kết nối đến và đi từ cùng 1 địa chỉ IP/port, và có giá trị là 0 cho các trường hợp còn lại

8 wrong_fragment Integer Tổng số các packet có phần checksum bị lỗi

Phần 3 Cơ Sở Lí Thuyết

Tổng số packet có bit “urgent” được bật lên trong 1 kết nối

Bảng 1 - Những thuộc tính cơ bản của 1 kết nối

Nhóm thuộc tính nội dung của kết nối mạng được xác định dựa trên thông tin trong packet, phản ánh kiến thức chuyên môn của các chuyên gia mạng Những thuộc tính này đóng vai trò quan trọng trong việc phân tích và tối ưu hóa hiệu suất kết nối mạng.

Tên thuộc tính Kiểu Mô tả

Tổng số các hành động “hot” trong 1 kết nối như: truy cập vào thư mục hệ thống, tạo chương trình hay thực thi một chương trình nào đó

11 num_failed_logins Integer Số lần login không thành công

Sẽ có giá trị là 1 nếu login thành công, còn ngược lại sẽ có giá trị là 0

13 num_compromised Integer Tổng số lần lỗi “not found” xuất hiện trong 1 kết nối

14 root_shell Binary Có giá trị là 1 nếu root mở 1 shell và là 0 nếu ngược lại

Có giá trị là 1 nếu lệnh “su” được sử dụng, nếu không thì có giá trị là 0

16 num_root Integer Tổng số các tác vụ được thực hiện với tài khoản root

17 num_file_creations Integer Tổng số các tác vụ tạo file được diễn ra

18 num_shells Integer Tổng số shell được tạo ra trong 1 kết nối

19 num_access_files Integer Tổng số thao tác điều khiển file

20 num_outbound_cmds Integer Tổng số lệnh “outbound” trong 1 ftp session

Nếu user đang login vào hệ thống dưới vai trò là root hay admin

22 is_guest_login Binary Nếu user đang login vào hệ thống dưới vai trò là khách, người viếng thăm hay mạo danh

Bảng 2 - Những thuộc tính nội dung của 1 kết nối

Nhóm thuộc tính phản ánh lưu lượng trong mạng internet được tính toán dựa trên các kết nối trước đó, được chia thành hai nhóm nhỏ: lưu lượng theo thời gian và lưu lượng theo máy (thuộc tính lưu lượng máy).

Phần 3 Cơ Sở Lí Thuyết

Sự khác nhau giữa 2 nhóm thuộc tính này là ở cách lựa chọn những kết nối trước đó trong mô hình tính toán

• Lưu lượng theo thời gian: để tính toán những thuộc tính này thì ta dựa vào những kết nối trong khoảng thời gian 2 giây trước đó

Tên thuộc tính Kiểu Mô tả

Tổng số các kết nối có cùng địa chỉ IP ở máy đích

24 srv_count Integer Tổng số các kết nối có cùng địa chỉ port ở máy đích

Tỉ lệ các kết nối đã bật thuộc tính flag

(4) lên thành S0, S1, S2, hay S3 trong tổng số kết nối được tính trong thuộc tính count (23)

Tỉ lệ các kết nối đã bật thuộc tính flag

(4) lên thành S0, S1, S2, hay S3 trong tổng số kết nối được tính trong thuộc tính srv_count (24)

Tỉ lệ các kết nối đã bật thuộc tính flag

(4) lên thành REJ trong tổng số kết nối được tính trong thuộc tính count (23)

Tỉ lệ các kết nối đã bật thuộc tính flag

(4) lên thành REJ trong tổng số kết nối được tính trong thuộc tính srv_count (24)

Tỉ lệ các kết nối có cùng dịch vụ giữa những kết nối được tính trong thuộc tính count (23)

Tỉ lệ các kết nối có dịch vụ khác nhau giữa những kết nối được tính trong thuộc tính count (23)

31 srv_diff_host_rate Real

Tỉ lệ các kết nối có địa chỉ máy đích khác nhau giữa những kết nối được tính trong thuộc tính srv_count (24)

Bảng 3 - Những thuộc tính lưu lượng theo thời gian

• Lưu lượng theo máy: để tính toán những thuộc tính này thì ta dựa vào 100 kết nối trước đó

Phần 3 Cơ Sở Lí Thuyết

Tên thuộc tính Kiểu Mô tả

Tổng số các kết nối có cùng địa chỉ IP của máy đích

33 dst_host_srv_count Integer Tổng số các kết nối có cùng địa chỉ port ở máy đích

34 dst_host_same_srv_rate Real

Tỉ lệ các kết nối có cùng dịch vụ giữa những kết nối được tính trong thuộc tính dst_host_count (32)

35 dst_host_diff_srv_rate Real

Tỉ lệ các kết nối có các dịch vụ khác nhau giữa những kết nối được tính trong thuộc tính dst_host_count (32)

36 dst_host_same_src_port_rate Real

Tỉ lệ các kết nối có cùng địa chỉ port ở máy nguồn trong tổng số các kết nối được tính trong thuộc tính dst_host_srv_count (33)

37 dst_host_srv_diff_host_rate Real

Tỉ lệ các kết nối có địa chỉ máy đích khác nhau trong tổng số các kết nối được tính trong thuộc tính dst_host_srv_count (33)

38 dst_host_serror_rate Real

Tỉ lệ các kết nối đã bật thuộc tính flag

(4) lên thành S0, S1, S2 hay S3 trong tổng số kết nối được tính trong thuộc tính dst_host_count (32)

39 dst_host_srv_serror_rate Real

Tỉ lệ các kết nối đã bật thuộc tính flag

(4) lên thành S0, S1, S2 hay S3 trong tổng số kết nối được tính trong thuộc tính dst_host_srv_count (33)

40 dst_host_rerror_rate Real

Tỉ lệ các kết nối đã bật thuộc tính flag

(4) lên thành REJ trong tổng số kết nối được tính trong thuộc tính dst_host_count (32)

41 dst_host_srv_error_rate Real

Tỉ lệ các kết nối đã bật thuộc tính flag

(4) lên thành REJ trong tổng số kết nối được tính trong thuộc tính dst_host_srv_count (33)

Bảng 4 - Những thuộc tính lưu lượng theo máy

Phần 3 Cơ Sở Lí Thuyết

Công nghệ Field Programmable Gate-Array và board NetFPGA

FPGA là một thiết bị bán dẫn có khả năng được cấu hình lại bởi người lập trình sau khi sản xuất, do đó nó được gọi là "field-programmable" Việc lập trình FPGA được thực hiện thông qua ngôn ngữ đặc tả phần cứng (HDL).

FPGA bao gồm các khối luận lý (Logic Blocks) và một kiến trúc có khả năng tái cấu hình kết nối bên trong, cho phép các khối này kết nối với nhau Các khối luận lý có thể được cấu hình để thực hiện các chức năng phức tạp hoặc chỉ đơn giản là sự kết hợp của các cổng luận lý Hầu hết các FPGA đều tích hợp các đơn vị bộ nhớ, bao gồm cả flip-flops và các khối bộ nhớ hoàn chỉnh.

Quy trình thiết kế FPGA bao gồm các bước như đặc tả chức năng, chuyển đổi sang ngôn ngữ đặc tả phần cứng (HDL), mô phỏng hành vi, tổng hợp, kết nối, phân tích ràng buộc thời gian và nạp lên FPGA Các nhà sản xuất FPGA chính hiện nay bao gồm Xilinx, Altera, Actel và Achronix, trong đó Xilinx chiếm 50% thị phần và cung cấp phần mềm thiết kế cho cả Windows và Linux, trong khi Altera hỗ trợ miễn phí các công cụ trên Windows.

Hình 7 - Cấu trúc tổng quát của một chip FPGA[13]

- Kiến trúc board NetFPGA của Xilinx

Phần 3 Cơ Sở Lí Thuyết

● FPGA chip: Xilinx Virtex II Pro50

Hình 9 - Kiến trúc bên trong của board NetFPGA [16]

HIỆN THỰC HỆ THỐNG

Tập dữ liệu KDD 99 (Knowledge Discovery and Data mining)

- Dự án DARPA 1998 được chuẩn bị và quản lí bởi phòng thí nghiệm MIT

Dự án Lincoln nhằm khảo sát và đánh giá các phương pháp phát hiện tấn công mạng internet Một tập dữ liệu chuẩn đã được xây dựng, bao gồm các mô phỏng xâm nhập vào mạng máy tính trong môi trường quân sự Cuộc thi KDD 99, với chủ đề dò tìm tấn công mạng, đã sử dụng phiên bản của tập dữ liệu này.

Lincoln Labs đã thiết lập và vận hành một môi trường mạng LAN giả lập tương tự như U.S AirForce LAN, đồng thời tích hợp nhiều loại tấn công để thu thập dữ liệu thô trong 9 tuần qua dạng TCP dump.

Trong nghiên cứu này, lưu lượng mạng LAN trong 7 tuần đầu tiên được sử dụng làm tập dữ liệu huấn luyện với dung lượng khoảng 4GB, bao gồm 5 triệu kết nối Tương tự, dữ liệu thu thập trong 2 tuần cuối cùng được sử dụng để kiểm tra, với khoảng 2 triệu kết nối.

Một kết nối là chuỗi các gói TCP được gửi và nhận từ các địa chỉ IP qua một giao thức mạng xác định trong một khoảng thời gian cụ thể Mỗi kết nối được phân loại là bình thường hoặc là một loại tấn công, với kiểu tấn công được ghi chú rõ ràng Mỗi bản ghi kết nối có dung lượng khoảng 100 bytes.

Phần 4 Hiện Thực Hệ Thống

- Các loại tất công thì được chia làm 4 loại chính:

• DOS (denial-of-service): dạng tấn công từ chối dịch vụ, ví dụ như syn flood, …

R2L (remote to local) là một dạng tấn công cho phép kẻ xâm nhập truy cập trái phép từ xa vào hệ thống, nhằm chiếm quyền sử dụng tài khoản người dùng thông thường, chẳng hạn như tài khoản ftp_write.

U2R (user to root) là một loại tấn công nhằm truy cập trái phép vào tài nguyên hệ thống với quyền "root" từ các tài khoản người dùng thông thường Các tấn công này thường bao gồm những kỹ thuật như "buffer overflow" để khai thác lỗ hổng bảo mật.

PROBE là một hình thức tấn công dò tìm nhằm xác định tình trạng hoạt động của mạng, đóng vai trò quan trọng trong việc chuẩn bị cho các cuộc tấn công mạng thực sự, chẳng hạn như quét cổng (port scanning).

Khi thực hiện kiểm tra, cần lưu ý rằng tập dữ liệu thử nghiệm có xác suất phân bố khác với tập dữ liệu huấn luyện và bao gồm một số loại tấn công không có trong quá trình huấn luyện Điều này giúp tập dữ liệu của cuộc thi phản ánh thực tế hơn Nhiều chuyên gia mạng cho rằng hầu hết các loại tấn công mới đều xuất hiện trong những tình huống này.

Nguyễn Phạm Anh Khoa 28 cho rằng các biến thể từ những loại tấn công đã biết có thể được phát hiện thông qua những dấu hiệu của các loại tấn công cũ Tập dữ liệu hiện có chứa thông tin quan trọng để nhận diện các biến thể mới này.

Trong quá trình huấn luyện, có 24 loại tấn công và 14 loại tấn công được sử dụng để kiểm tra, tổng cộng có 38 loại tấn công Những loại tấn công này được phân chia thành các nhóm chính như bảng dưới đây:

Các loại tấn công được liệt kê trong nhóm

1 U2R (7) sqlattack, buffer_overflow, ps, loadmodule, perl, xterm, rootkit

2 R2L (15) snmpguess, snmpgetattack, worm, warez (warezmaster, warezclient) , guess_passwd, ftp_write, phf, xlock, xsnoop, imap, named, sendmail, multihop, spy, httptunel

3 PROBE (6) ipsweep, nmap, portsweep, satan, mscan, saint

4 DOS (10) back, neptune, pod, smurf, land, apache2, mailbomb, processtable, udpstorm, teardrop

Bảng 5 - Các loại tấn công trong tập dữ liệu KDD99

Phần 4 Hiện Thực Hệ Thống

4.2 Công cụ hỗ trợ xây dựng và kiểm thử các phương pháp trong datamining

WEKA là phần mềm mã nguồn mở về Data Mining, được phát triển bởi đại học Waikato, tích hợp nhiều thuật toán học máy viết trên nền tảng Java Người dùng có thể áp dụng trực tiếp các thuật toán này trên tập dữ liệu hoặc thông qua mã Java WEKA cung cấp các công cụ hữu ích cho tiền xử lý dữ liệu, phân loại, gom cụm, rút trích luật kết hợp và trực quan hóa dữ liệu Ngoài ra, nó còn là bộ công cụ hiệu quả cho việc phát triển các thuật toán học máy mới.

Phần mềm WEKA bao gồm bốn chức năng chính: Explorer, Experimenter, KnowledgeFlow và SimpleCLI, nhưng chức năng chủ yếu được sử dụng là Explorer Với Explorer, người dùng có thể xây dựng và kiểm thử tính chính xác của các mô hình được tạo ra một cách hiệu quả.

Hình 10 - Giao diện của phần mềm WEKA với tính năng Explorer

Qui trình phát triển và hiện thực hệ thống

Để phát triển một hệ thống trên board FPGA, cần tuân thủ quy trình phát triển rõ ràng nhằm đảm bảo tính chính xác của hệ thống và dễ dàng phát hiện lỗi khi chương trình không hoạt động theo đúng yêu cầu ban đầu.

Quy trình phát triển hệ thống phát hiện tấn công trên mạng Internet của tôi dựa vào việc phân tích các dấu hiệu bất thường trong lưu lượng mạng Hệ thống này giúp nhận diện và phản ứng kịp thời với các mối đe dọa, bảo vệ an toàn thông tin và duy trì tính ổn định của hệ thống mạng.

Hình 11 - Qui trình phát triển và hiện thực hệ thống lên board NetFPGA

Từ tập dữ liệu KDD99, chúng tôi sẽ xây dựng mô hình nhằm phát hiện tấn công trong mạng internet bằng phần mềm Weka Quá trình này sẽ kiểm tra tính chính xác của mô hình Khi đạt được độ chính xác và tính phức tạp phù hợp với yêu cầu ban đầu, chúng tôi sẽ tiến hành các bước tiếp theo trong quá trình triển khai.

Xây dựng mô hình phát hiện tấn công KDD 99

Phần 4 Hiện Thực Hệ Thống

Nguyễn Phạm Anh Khoa 31 phát triển mô hình dưới dạng “Java model” thay vì “C model” nhờ vào ưu điểm của ngôn ngữ Java trong việc xử lý chuỗi ký tự Quá trình xây dựng “Java model” rất quan trọng, giúp xác thực tính chính xác của mô hình và dữ liệu thu được sẽ được coi là “golden data” cho việc phát triển mô hình bằng ngôn ngữ Verilog Sau khi hoàn thành “Java model”, hệ thống sẽ được phát triển bằng Verilog trong môi trường ISE của Xilinx để thực hiện mô phỏng và biên dịch chương trình trước khi tải file đã tổng hợp xuống board NetFPGA.

Xây dựng mô hình

Để xây dựng mô hình phát hiện xâm nhập và tấn công trong mạng internet, cần đảm bảo tính đơn giản, khả năng hiện thực hóa cao và độ chính xác tốt, nhất là khi triển khai trên board NetFPGA Trong ba phương pháp tổng quát gồm hệ tri thức, học máy và thống kê, phương pháp học máy là sự lựa chọn tối ưu cho hệ thống này.

Bảng dưới đây so sánh các khía cạnh khác nhau của các thuật toán phổ biến trong phương pháp học máy có giám sát.

**** thể hiện mức cao nhất và * cho mức thấp nhất

Mạng Bayes ngây thơ kNN

Khả năng phân loại chính xác tổng quát

Tốc độ học tương ứng với số thuộc tính và độ lớn của dữ liệu

Khả năng chống lại việc thiếu giá trị

Khả năng chống lại việc những thuộc tính không

Phần 4 Hiện Thực Hệ Thống

Nguyễn Phạm Anh Khoa 33 liên quan nhau

Khả năng xử lí việc dư thừa thuộc tính

Khả năng xử lí việc các thuộc tính có sự phụ thuộc cao lẫn nhau

Khả nẳng xử lí các kiểu dữ liệu của thuộc tính

(nhị phân, rời rạc, liên tục)

(không có khả năng xử lí kiểu rời rạc)

(không có khả năng xử lí kiểu liên tục)

(không có khả năng xử lí kiểu rời rạc trực tiếp

** (không có khả năng xử lí kiểu rời rạc)

*** ( không có khả năng xử lí kiểu liên tục trực tiếp)

Nguyễn Phạm Anh Khoa 34 với việc

Khả năng thích ứng với viêc học tăng cường

Khả năng giải thích rõ ràng của mô hình được sinh ra

Khả năng điều khiển các thông số của mô hình

Bảng 6 - So sánh giữa các giải thuật trong phương pháp học máy [17]

Dựa vào bảng so sánh, phương pháp cây quyết định cho thấy ưu điểm vượt trội về tính đơn giản và độ chính xác tương đối, cũng như khả năng phân loại đa dạng các thuộc tính Mặc dù chúng ta có thể tìm cách nâng cao độ chính xác của phương pháp này, nhưng nếu chỉ xét riêng một cây quyết định, nó vẫn thể hiện lợi thế so với các phương pháp khác.

Phần 4 Hiện Thực Hệ Thống

Nguyễn Phạm Anh Khoa 35 đã đạt được độ chính xác cao trong thực nghiệm Tôi đã quyết định không sử dụng các phương pháp như kNN, mạng Neural hay SVM vì những phương pháp này, mặc dù có thể cho kết quả tốt, nhưng lại phức tạp và khó khăn khi triển khai trên board FPGA.

Rút trích thuộc tính để phân loại

Tỉ lệ phát hiện tấn công (%)

Bảng 7 - So sánh tỉ lệ phát hiện tấn công của các giải thuật học máy

Để nâng cao độ chính xác và giảm tỷ lệ phát hiện sai của giải thuật, tôi tập trung vào cây J48 và phân chia các mẫu thành 5 nhóm chính: normal, u2r, r2l, probe và dos, thay vì chỉ hai loại anomaly và normal Sau đó, tôi áp dụng giải thuật Bagging để tạo ra 5 cây quyết định khác nhau và sử dụng quy tắc bầu cử để chọn ra kết quả cuối cùng Ý tưởng của giải thuật Bagging là kết hợp nhiều phương pháp phân loại khác nhau, giúp cải thiện độ chính xác so với việc chỉ sử dụng một phương pháp duy nhất.

1 phương pháp phân loại riêng lẻ Và trong trường hợp này thì Bagging thực hiện việc

Nguyễn Phạm Anh Khoa 36 đã phân chia tập huấn luyện thành 5 tập nhỏ hơn có kích thước bằng nhau thông qua việc chọn mẫu ngẫu nhiên Mỗi tập dữ liệu con sẽ được sử dụng để xây dựng một cây quyết định J48, dẫn đến việc tạo ra 5 cây quyết định khác nhau về cấu trúc Sự khác biệt giữa các cây quyết định này được kỳ vọng sẽ giúp bao phủ nhiều trường hợp trong tập dữ liệu huấn luyện.

Trong các giải thuật học máy, có thể xảy ra hiện tượng thiên vị Dựa vào tần suất xuất hiện của các mẫu trong tập huấn luyện, thứ tự ưu tiên kết quả được xác định là: dos, normal, probe, r2l, u2r Thực nghiệm cho thấy việc xây dựng hệ thống từ 5 cây quyết định là hợp lý, đảm bảo độ chính xác và độ phức tạp khi triển khai trên board FPGA Dưới đây là bảng so sánh tính chính xác tương ứng với số lượng cây quyết định.

Số lượng các cây quyết định

Khả năng phát hiện tấn công (%)

Tỉ lệ phát ra cảnh báo sai (%) 0.5017081 0.5000743 0.5066759 0.4984239

Bảng 8 - So sánh độ chính xác giữa nhóm các cây quyết định

Phần 4 Hiện Thực Hệ Thống

- Các cây quyết định được sinh tra có cấu trúc tổng quát như sau:

Bảng 9 - Cấu trúc các cây quyết định của mô hình được sinh ra

- Mô hình xây dựng được thể hiện qua hình dưới đây:

Hình 12 - Mô hình hệ thống phát hiện tấn công

Tập 41 thuộc tính của từng kết nối

Cây J48 Cây J48 Cây J48 Cây J48 Cây J48

Bộ so sánh và lựa chọn kết quả

Hiện thực mô hình lên board NetFPGA

Đề tài này tập trung vào việc xây dựng phần lõi của hệ thống, giả định rằng tập thuộc tính đã được thu thập từ các kết nối trước đó Khi hiện thực hóa trên board NetFPGA, phần tương tác trực tiếp với card mạng sẽ không được thực hiện Thay vào đó, tập thuộc tính này sẽ được truyền từ máy tính host xuống board nhằm chứng minh tính chính xác của mô hình đã xây dựng.

- Khi hiện thực lên board thì hệ thống được mô tả như hình dưới đây:

Phần 4 Hiện Thực Hệ Thống

Hình 13 - Hiện thực hệ thống lên board NetFPGA Đọc/Ghi lên tập thanh ghi của J48_Classifier_Top

Tập 41 thanh ghi thuộc tính của kết nối Thanh ghi kết quả

Bộ so sánh và lựa chọn kết quả

- Phần giao tiếp của module J48_Classifier_Top chính là những tín hiệu dùng để đọc ghi tập thanh ghi thuộc tính và kết quả trả về:

Hình 14 - Phần giao tiếp của module J48_Classifier_Top

- J48_Classifier_Top thực hiện instance 5 cây quyết định và truyền các thanh ghi thuộc tính như ngõ nhập cho các cây này Dưới đây là mô hình chi tiết:

J48_Classifier_Top o i_clk o i_reset_n o i_req o i_read_write_L o o_req_ack o i_address o i_datain o o_data

Phần 4 Hiện Thực Hệ Thống

Hình 15 - Cấu trúc chi tiết của module J48_Classifier_Top

J48_Classifier_Top i_clk i_reset_n r_duration r_ dst_host_srv_rerror_rate r_enable r_ result_classify_final

……… i_dst_host_srv_rerror_rate i_enable o_result

……… i_dst_host_srv_rerror_rate i_enable o_result

Bộ tổng hợp kết quả trả về từ các cây phân loại

Tập các thanh ghi thuộc tính

- Phần tổng hợp các kết quả trả về từ các cây phân loại và chọn lựa kết quả cuối cùng được hiện thực như sau:

Hình 16 - Bộ tổng hợp kết quả từ các cây phân loại

Kết quả từ các cây quyết định là các thanh ghi 15bit, được đưa qua bộ cộng để tổng hợp Thanh ghi tổng chứa tổng số kết quả phân loại giống nhau từ từng cây quyết định, tương ứng với vị trí của từng loại Cuối cùng, những kết quả này được xử lý qua một mạch tổ hợp để thực hiện so sánh, cho ra kết quả phân loại cuối cùng.

Mỗi cây quyết định có thể được xây dựng bằng cấu trúc "if … else if … else …", nhờ vào hình dạng cây của nó Số lượng nút trong mỗi cây có thể thay đổi, nhưng cấu trúc này giúp đơn giản hóa quá trình hiện thực hóa.

Mạch tổ hợp so sánh nhất

DOS o_result_1 o_result_2 o_result_3 o_result_4 o_result_5

Phần 4 Hiện Thực Hệ Thống

Nguyễn Phạm Anh Khoa 43 yêu cầu khoảng 500 dòng code cho từng cây quyết định, nhưng việc chuyển đổi từ Java Model sang Verilog chỉ cần một số điều chỉnh nhỏ Điều này cho thấy ưu điểm của cây quyết định so với các thuật toán khác khi triển khai trên FPGA.

Kết quả thực nghiệm

Quá trình phát triển hệ thống tuân theo một quy trình rõ ràng, trong đó dữ liệu kết quả từng bước được so sánh và tận dụng lại mã nguồn của các bước trước Sau khi mô phỏng trên môi trường ISE và hiện thực hóa hệ thống trên board NetFPGA, hệ thống đạt được độ chính xác tương đương với mô hình Java, với tỷ lệ phát hiện tấn công là 91.22% và tỷ lệ cảnh báo sai là 0.50%.

Hình ảnh dưới đây mô phỏng mạch phát hiện tấn công trong môi trường ISE, sử dụng 1000 mẫu đầu tiên Do giới hạn về bộ nhớ, tôi chỉ chọn mô phỏng 1000 mẫu này để so sánh với kết quả thu được từ mô hình Java.

Hình 17 - Kết quả mô phỏng trên ISE với 1000 kết nối đầu tiên

Tập dữ liệu KDD 99 được sử dụng để kiểm tra khả năng phát hiện của hệ thống Dưới đây là bảng so sánh kết quả giữa hệ thống của tôi và người chiến thắng trong cuộc thi KDD 99.

Phân loại NORMAL U2R R2L PROBE DOS

Phần 4 Hiện Thực Hệ Thống

: Kết quả của người chiến thắng cuộc thi KDD 99 : Kết quả của hệ thống mà tôi hiện thực

Bảng 10 - So sánh kết quả phân loại giữa hệ thống và người chiến thắng KDD99[19]

Bảng so sánh cho thấy khả năng phát hiện tấn công của hệ thống mà tôi phát triển gần đạt mức tương đương với người chiến thắng trong cuộc thi KDD99.

( 91.217317% - 91.8122794%) nhưng bù lại thì tỉ lệ phát ra cảnh báo sai mà hệ thống tôi có thì tốt hơn ( 0.5017081% - 0.5462677%)

- Nếu so sánh với kết quả có được từ phương pháp PCA [1] như hình bên dưới:

Hình 18 - Kết quả phân loại và tỉ lệ phát ra cảnh báo sai của phương pháp PCA

Mặc dù tỷ lệ phát hiện tấn công đạt khoảng 92,2%, nhưng tỷ lệ cảnh báo sai của phương pháp này lại vượt quá 10%, điều này cho thấy nó không hiệu quả khi áp dụng trong thực tế.

So với tỷ lệ phát hiện tấn công trung bình khoảng 83.3% của phương pháp kết hợp phân cụm mờ và mạng neural, tỷ lệ phát hiện tấn công của các phương pháp khác có thể thấp hơn, cho thấy hiệu quả vượt trội của kỹ thuật này trong việc phát hiện các cuộc tấn công.

Hệ thống mà tôi phát triển có khả năng phát hiện tấn công cao hơn hoặc tương đương với phương pháp SF-KNN, trong khi tỷ lệ phát ra cảnh báo sai chỉ khoảng 2-4%, thấp hơn nhiều so với phương pháp này.

- Hệ thống có khả năng hoạt động ở tần số tối đa là 103.327MHz trên board NetFPGA của Xilinx.

Ngày đăng: 29/08/2021, 17:43

HÌNH ẢNH LIÊN QUAN

- Phần công việc của đề tài có thể được mô tả rõ ràng trong hình bên dưới: - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
h ần công việc của đề tài có thể được mô tả rõ ràng trong hình bên dưới: (Trang 14)
Hình 2- Hệ thống phát hiện tấn công bằng phương pháp PCA - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 2 Hệ thống phát hiện tấn công bằng phương pháp PCA (Trang 15)
Hình 3 - Hệ thống phát hiện tấn công bằng cách kết hợp nhiều giải thuật - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 3 Hệ thống phát hiện tấn công bằng cách kết hợp nhiều giải thuật (Trang 17)
Hình 4- Mô hình của hệ thống FC-ANN - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 4 Mô hình của hệ thống FC-ANN (Trang 19)
Hình 5- Kiến trúc tổng quát của một hệ thống phát hiện tấn công. - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 5 Kiến trúc tổng quát của một hệ thống phát hiện tấn công (Trang 22)
Hình 6- Các bước chính trong một hệ thống phát hiện tấn công dựa vào sự bất thường trong mạng internet  - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 6 Các bước chính trong một hệ thống phát hiện tấn công dựa vào sự bất thường trong mạng internet (Trang 23)
Bảng 1- Những thuộc tính cơ bản của 1 kết nối - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Bảng 1 Những thuộc tính cơ bản của 1 kết nối (Trang 31)
Bảng 2- Những thuộc tính nội dung của 1 kết nối - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Bảng 2 Những thuộc tính nội dung của 1 kết nối (Trang 32)
Bảng 4- Những thuộc tính lưu lượng theo máy - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Bảng 4 Những thuộc tính lưu lượng theo máy (Trang 36)
Hình 8- Board NetFPGA [16] - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 8 Board NetFPGA [16] (Trang 38)
Hình 7- Cấu trúc tổng quát của một chip FPGA[13] - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 7 Cấu trúc tổng quát của một chip FPGA[13] (Trang 38)
Hình 9- Kiến trúc bên trong của board NetFPGA [16] - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 9 Kiến trúc bên trong của board NetFPGA [16] (Trang 39)
loại tấn công và được phân chia vào các nhóm chính như bảng dưới đây: - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
lo ại tấn công và được phân chia vào các nhóm chính như bảng dưới đây: (Trang 42)
Explorer, ta đủ để xây dựng và kiểm thử tính đúng đắn của mô hình được sinh ra. - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
xplorer ta đủ để xây dựng và kiểm thử tính đúng đắn của mô hình được sinh ra (Trang 43)
Hình 1 1- Qui trình phát triển và hiện thực hệ thống lên board NetFPGA - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 1 1- Qui trình phát triển và hiện thực hệ thống lên board NetFPGA (Trang 44)
mô hình được - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
m ô hình được (Trang 48)
Bảng quyế t  - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Bảng quy ế t (Trang 49)
như độ phức tạp khi hiện thực lên board FPGA. Dưới đây là bảng so sánh tính chính xác - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
nh ư độ phức tạp khi hiện thực lên board FPGA. Dưới đây là bảng so sánh tính chính xác (Trang 50)
- Mô hình xây dựng được thể hiện qua hình dưới đây: - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
h ình xây dựng được thể hiện qua hình dưới đây: (Trang 51)
Bảng 9- Cấu trúc các cây quyết định của mô hình được sinh ra - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Bảng 9 Cấu trúc các cây quyết định của mô hình được sinh ra (Trang 51)
Hình 14 - Phần giao tiếp của module J48_Classifier_Top - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 14 Phần giao tiếp của module J48_Classifier_Top (Trang 54)
Hình 1 5- Cấu trúc chi tiết của module J48_Classifier_Top - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 1 5- Cấu trúc chi tiết của module J48_Classifier_Top (Trang 55)
Hình 16 -B ột ổng hợp kết quả từ các cây phân loại - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 16 B ột ổng hợp kết quả từ các cây phân loại (Trang 56)
Hình 17- Kết quả mô phỏng trên ISE với 1000 kết nối đầu tiên - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Hình 17 Kết quả mô phỏng trên ISE với 1000 kết nối đầu tiên (Trang 58)
chính là tập dữ liệu kiểm tra của cuộc thi KDD 99. Sau đây là bảng so sánh kết quả mà hệ - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
ch ính là tập dữ liệu kiểm tra của cuộc thi KDD 99. Sau đây là bảng so sánh kết quả mà hệ (Trang 58)
- Nhìn vào bảng so sánh, ta có thể thấy được khả năng phát hiện tấn công - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
h ìn vào bảng so sánh, ta có thể thấy được khả năng phát hiện tấn công (Trang 59)
Bảng 10 - So sánh kết quả phân loại giữa hệ thống và người chiến thắng KDD99[19] - Hiện thực hệ thống phát hiện tấn công trong mạng internet dựa vào các bất thường lên FPGA
Bảng 10 So sánh kết quả phân loại giữa hệ thống và người chiến thắng KDD99[19] (Trang 59)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN