ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA KHOA HỌC CÔNG NGHỆ TIÊN TIẾN BÁO CÁO MÔN HỌC AN NINH MẠNG ĐỀ TÀI : Phát hiện và phân loại các cuộc tấn công mạng dựa trên bộ dữ liệu IoT-23
Trang 1ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA KHOA HỌC CÔNG NGHỆ TIÊN TIẾN
BÁO CÁO MÔN HỌC
AN NINH MẠNG
ĐỀ TÀI : Phát hiện và phân loại các cuộc tấn công mạng dựa trên
bộ dữ liệu IoT-23
HỌ VÀ TÊN:
- TRẦN HỮU NHẬT TRƯỜNG
- TRẦN BÃO
- ĐINH NHẬT NAM
Đà Nẵng, 05/05/2024
Trang 2MỤC LỤC
CHƯƠNG 1: 2
CHƯƠNG 2: 2
CHƯƠNG 3: 3
CHƯƠNG 4: 11
CHƯƠNG 5: 12
LỜI CẢM ƠN 13
Trang 3Chương 1:
Tổng quan về Bộ dữ liệu IoT-23
IoT23 là bộ dữ liệu được tạo bởi phòng thí nghiệm Avast AIC Bộ dữ liệu chứa
20 capture độc hại từ các thiết bị IoT khác nhau và 3 capture bình thường Dữ
liệu được thu thập hợp tác với Đại học Kỹ thuật Séc tại Prague, dữ liệu được thu
thập từ năm 2018 đến 2019
Tập dữ liệu ở dạng hoàn chỉnh chứa: Các tệp pcap, là các tệp capture mạng ban
đầu, các tệp conn.log.labeled, được tạo bằng cách chạy máy phân tích mạng gọi
là Zeek, các chi tiết và thông tin khác nhau về từng capture Tập dữ liệu chứa
tổng cộng 325.307.990 capture, trong đó 294.449.255 là độc hại Tập dữ liệu
bao gồm loại tấn công sau:
Attack nhãn chung được quy chođến những bất thường không thể xác định được
Benign nhãn chung cho một bản chụp không đáng ngờ
C&C kiểm soát và chỉ huy, một kiểu tấn công chiếm quyền kiểm sothực hiện các cuộc tấn công khác nhau trong tương lai C&C - File-Download máy chủ điều khiển thiết bị bị nhiễm đang gửi cho nó một tệp C&C - Mirai cuộc tấn công được thực hiện bởi mạng bot Mirai
C&C - Torii cuộc tấn công được thực hiện bởi mạng bot Torii, một phiên b DDoS thiết bị bị nhiễm đang thực hiện từ chối dịch vụ phân tán C&C - Heart-Beat
máy chủ điều khiển thiết bị bị nhiễm gửi tin nhắn định kỳ để nhiễm, điều này được nắm bắt bằng cách tìm kiếm các gói nh đáng ngờ
C&C - Heart-Attack giống như trên, nhưng phương pháp không rõ ràng, chỉ có mộđịnh kỳ từ một nguồn đáng ngờ C&C - Heart-Beat -
FileDownload quá trình kiểm tra được thực hiện thông qua một tệp nhỏ đượ C&C - PartOfA - Horizontal
- PortScan mạng đang gửi các gói dữ liệu để thu thập thông tin cho một c Okiru cuộc tấn công được thực hiện bởi mạng bot Okiru, một phiên Okiru - Attack kẻ tấn công được công nhận là mạng bot Okiru, nhưng phươn PartOfAHorizontal - thông tin được thu thập từ một thiết bị cho một cuộc tấn công
Trang 4PartOfAHorizontal -
PortScan Attack giống như trên, nhưng các phương pháp tấn công không thể đ
Bảng 1 Mô tả chi tiết các loại tấn công
Mỗi tệp conn.log.labeled chứa 23 cột dữ liệu, có loại được trình bày trong bảng
trên Các cột này là:
ts thời điểm capture xong, được biểu thị bằng Unix Time
id_orig.h địa chỉ IP nơi xảy ra cuộc tấn công, IPv4 hoặc IPv6
id_orig.p cổng được sử dụng bởi bộ phản hồi
id_resp.h địa chỉ IP của thiết bị mà quá trình capture xảy ra
id_resp.p cổng được sử dụng cho phản hồi từ thiết bị nơi xảy ra quá trình chụp proto giao thức mạng được sử dụng cho gói dữ liệu
service giao thức ứng dụng
duration lượng thời gian dữ liệu được giao dịch giữa thiết bị và kẻ tấn công orig_bytes lượng dữ liệu được gửi đến thiết bị
resp_bytes lượng dữ liệu được gửi bởi thiết bị
conn_state trạng thái của kết nối
local_orig có kết nối cục bộ hay không
local_resp có phản hồi cục bộ hay không
missed_bytes số byte bị miss trong một tin nhắn
history lịch sử của trạng thái kết nối
orig_pkts số lượng gói tin được gửi đến thiết bị
orig_ip_bytes số byte được gửi đến thiết bị
resp_pkts số lượng gói tin được gửi từ thiết bị
resp_ip_bytes số byte được gửi từ thiết bị
tunnel_parents ID của kết nối, nếu tunnelled
label loại capture, an toàn hay độc hại
detailed_label chi tiết capture nếu là loại độc hại
Bảng 2 Mô tả chi tiết kiểu dữ liệu
Trang 5Cột conn-state là một biến dành riêng cho Zeek và biểu thị trạng thái kết nối giữa hai thiết bị Ví dụ: S0 có nghĩa là một thiết bị đã thử kết nối nhưng phía bên kia không trả lời Trong tập dữ liệu này, tất cả các giá trị bị thiếu trong bất
kỳ mục nhập nào đều được đánh dấu bằng dấu gạch ngang (“-”), ngoại trừ địa chỉ IP, được đánh dấu bằng hai dấu hai chấm (“::”)
Chương 2:
Tổng quan về đề tài
1 Giới thiệu đề tài
Sự ra đời của nhà thông minh đại diện cho một bước nhảy vọt mang tính cách mạng trong cuộc sống chúng ta, những công dân sống trong những căn hộ nhiều tiện nghi tiện ích xây dựng từ việc ứng dụng và tích hợp công nghệ thông tin Những ngôi nhà tích hợp các công nghệ tiên tiến và thiết bị thông minh để tạo ra môi trường sống
an toàn, thoải mái và tiện dụng Mặc dù lợi ích của nhà thông minh rất đa dạng, chúng cũng đã mở ra một kỷ nguyên mới về thách thức
an ninh mạng Vấn đề trung tâm xoay quanh việc phát hiện và phân tích các gói tin bất thường trong hệ sinh thái nhà thông minh Các gói tin bất thường từ các lưu lượng truy cập mạng có thể báo hiệu các cuộc xâm nhập tiềm ẩn, hoạt động độc hại hoặc lỗi hệ thống, gây
ra mối đe dọa nghiêm trọng đối với tính bảo mật và sự ổn định của toàn bộ cơ sở hạ tầng nhà thông minh
Việc giải quyết những thách thức về an ninh mạng này đã trở nên tối quan trọng, đòi hỏi các phương pháp và giải pháp sáng tạo Các kỹ thuật học máy, đã có những bước tiến đáng kể trong nhiều lĩnh vực, mang lại một phương pháp đầy hứa hẹn để nâng cao an ninh trong nhà thông minh Decision Tree (DT), Support Vector Machine (SVM), Convolutional Neural Networks (CNN), K-Nearest Neighbors (KNN), Recurrent Neural Networks (RNN) và Random Forests (RF) và nhiều thuật toán học máy đã thể hiện khả năng đáng
kể
2 Lý do chọn đề tài
Trang 6Internet of Things (IoT) đang trở thành một phần ngày càng quan trọng trong cuộc sống hàng ngày Tuy nhiên, sự phát triển nhanh chóng của IoT cũng mang lại những vấn đề bảo mật nghiêm trọng Việc nghiên cứu về phát hiện và phân loại tấn công mạng trong môi trường IoT là cần thiết để bảo vệ các hệ thống IoT khỏi các mối đe dọa
Tấn công mạng ngày càng phức tạp và đa dạng, và việc phát hiện chúng càng trở nên khó khăn Phát hiện tấn công mạng là một phần quan trọng trong việc bảo vệ hệ thống mạng và dữ liệu quan trọng Bằng cách nghiên cứu và phát triển các phương pháp phát hiện tấn công dựa trên bộ dữ liệu IOT-23, bạn có thể đóng góp vào việc cung cấp các giải pháp bảo mật IoT hiệu quả hơn
Bộ dữ liệu IOT-23 là một bộ dữ liệu phổ biến được sử dụng trong nghiên cứu về bảo mật IoT Nó chứa các gói tin mạng thu thập từ các thiết bị IoT thực tế và bao gồm nhiều loại tấn công khác nhau Bằng cách sử dụng bộ dữ liệu này, bạn có thể nghiên cứu và phát triển các phương pháp phát hiện và phân loại tấn công mạng hiệu quả, và kết quả có thể được áp dụng để bảo vệ các hệ thống IoT thực tế Nghiên cứu về phát hiện và phân loại tấn công mạng trong môi trường IoT là một lĩnh vực đang phát triển, và việc thực hiện một dự
án trong lĩnh vực này có thể đóng góp vào cộng đồng nghiên cứu Bằng cách phát triển các phương pháp và kỹ thuật mới, bạn có thể cung cấp sự hiểu biết và giải pháp mới cho vấn đề bảo mật IoT, và làm phong phú thêm tri thức và công cụ cho cộng đồng
Trang 7Chương 3:
Demo các thuật toán
1 CNN
Trang 102 DecisionTrees
Trang 123 Navie Bayes
Trang 15Chương 4:
Phân tích kết quả
1 Convolutional Neural Network (CNN):
Cách hoạt động:
- Chuẩn bị dữ liệu: Dữ liệu từ tập tin CSV được tải và tiền xử lý bằng cách chia thành dữ liệu đầu vào (X) và nhãn (Y) Dữ liệu sau đó được chuẩn hóa
sử dụng MinMaxScaler để đưa về khoảng giá trị nhất định
- Xây dựng mạng neuron: Một mạng neuron tuần tự được xây dựng bằng cách sử dụng các lớp Dense, Dropout để tránh overfitting và lớp softmax ở cuối để dự đoán xác suất của các lớp đầu ra
- Huấn luyện mô hình: Mô hình được huấn luyện trên dữ liệu huấn luyện sử dụng hàm mất mát categorical_crossentropy và tối ưu hóa bằng adam optimizer Các metric được đánh giá bao gồm accuracy
Kết quả:
- Accuracy trên tập kiểm tra: khoảng 69.3%
- Thời gian huấn luyện: khoảng 242.4 giây (hoặc khoảng 4 phút)
2 Decision Trees:
Cách hoạt động:
- Chuẩn bị dữ liệu: Dữ liệu được tiền xử lý tương tự như CNN
- Xây dựng mô hình Decision Trees: Một cây quyết định được sử dụng để học cấu trúc dữ liệu và sau đó dự đoán nhãn cho các mẫu mới
Kết quả:
- Accuracy trên tập kiểm tra: khoảng 72.9%
- Thời gian huấn luyện: khoảng 2.7 giây
3 Naive Bayes:
Cách hoạt động:
- Chuẩn bị dữ liệu: Dữ liệu được tiền xử lý tương tự như hai mô hình trước
- Xây dựng mô hình Naive Bayes: Sử dụng phân phối Gaussian để ước lượng các tham số cho phân loại
Kết quả:
- Accuracy trên tập kiểm tra: khoảng 73.0%
-Thời gian huấn luyện: không được đề cập đến, nhưng thường ít tốn thời gian hơn so với các mô hình học sâu
Trang 16Chương 5:
Kết luận
Theo kết quả ta thấy, thuật toán Decision Trees phù hợp cho việc phát hiện
và phân loại tấn công mạng hơn là mô hình CNN hoặc Naive Bayes Vì:
- Tính phức tạp của dữ liệu: Dựa vào kết quả bạn cung cấp, dữ liệu có một loạt các đặc trưng như thời lượng (duration), số lượng byte gốc và đích (orig_bytes, resp_bytes), gói tin gốc (orig_pkts), địa chỉ IP gốc và đích (orig_ip_bytes, resp_ip_bytes), cũng như các đặc trưng về giao thức và trạng thái kết nối Dữ liệu này có một số lượng lớn các đặc trưng và có vẻ phức tạp, điều này là lý do mô hình Decision Trees có thể phù hợp với dữ liệu như vậy, vì
nó có khả năng xử lý các mối quan hệ không tuyến tính và tương tác phức tạp giữa các đặc trưng
- Hiệu suất mô hình: Dựa vào kết quả của bạn, mô hình Decision Trees có hiệu suất tốt, với độ chính xác trên tập kiểm tra là khoảng 72.9% Điều này đối lập với mô hình CNN với độ chính xác xấp xỉ 69.35% sau 10 epochs Mặc dù CNN thường được sử dụng cho xử lý dữ liệu hình ảnh và văn bản, nhưng trong trường hợp này, dữ liệu là dạng bảng và Decision Trees đã cho kết quả hiệu quả hơn
- Khả năng diễn giải kết quả: Decision Trees cung cấp một cấu trúc cây quyết định dễ hiểu, giúp diễn giải được cách mà mô hình quyết định Điều này hữu ích trong việc phân tích và hiểu các yếu tố quan trọng trong việc phát hiện
và phân loại tấn công mạng
- Tính tổng quát của mô hình: Decision Trees có khả năng tự động chọn ra các đặc trưng quan trọng, giúp giảm chiều của dữ liệu và tránh việc mô hình bị overfitting hoặc underfitting
Tóm lại, Decision Trees là một lựa chọn phù hợp cho việc phát hiện và phân loại tấn công mạng trong trường hợp này do tính phức tạp của dữ liệu, hiệu suất của mô hình và khả năng diễn giải kết quả tốt
Lời cảm ơn