Trường đại học
Đại học Công nghệ Thông tin - Đại học Quốc gia Hồ Chí MinhChuyên ngành
An toàn thông tinNgười đăng
Ẩn danhThể loại
khóa luận tốt nghiệp2023
Phí lưu trữ
30.000 VNĐMục lục chi tiết
Tóm tắt
Phương pháp học sâu là một lĩnh vực con của học máy, tập trung vào việc sử dụng các mạng nơ-ron nhân tạo để giải quyết các vấn đề phức tạp. Trong khóa luận này, học sâu được áp dụng để phát hiện lỗ hổng bảo mật trong phần mềm. Các mô hình như RNN, LSTM, và Transformer được sử dụng để xử lý dữ liệu mã nguồn, giúp tăng độ chính xác trong việc phát hiện lỗi. Học sâu đặc biệt hiệu quả trong việc xử lý ngôn ngữ tự nhiên và mã nguồn, nhờ khả năng học từ dữ liệu lớn và tự động hóa quá trình phân tích.
Mô hình RNN (Recurrent Neural Network) là một mạng nơ-ron có khả năng xử lý chuỗi dữ liệu bằng cách tạo ra các kết nối tuần hoàn giữa các nút. Điều này cho phép mô hình ghi nhớ thông tin từ các bước trước, phù hợp để phân tích mã nguồn có cấu trúc tuần tự. Tuy nhiên, RNN thường gặp vấn đề về việc mất thông tin khi chuỗi dữ liệu dài.
Mô hình LSTM (Long Short-Term Memory) là một cải tiến của RNN, được thiết kế để giải quyết vấn đề mất thông tin trong chuỗi dài. LSTM sử dụng các cổng điều khiển để quyết định thông tin nào cần lưu giữ hoặc loại bỏ, giúp mô hình học được các mối quan hệ phức tạp trong mã nguồn. Điều này làm cho LSTM phù hợp hơn cho việc phát hiện lỗ hổng bảo mật.
Phát hiện lỗ hổng bảo mật là một quá trình quan trọng trong an ninh mạng, nhằm xác định các điểm yếu trong phần mềm có thể bị khai thác. Trong khóa luận này, các kỹ thuật như Program Dependence Graph (PDG) và Control Flow Graph (CFG) được sử dụng để phân tích mã nguồn. Các mô hình học sâu được huấn luyện trên các bộ dữ liệu như SySeVR và Vuldeepecker để phát hiện các lỗ hổng một cách tự động và chính xác.
Kỹ thuật Program Slicing được sử dụng để trích xuất các đoạn mã liên quan đến lỗ hổng từ mã nguồn. Các slice này chứa cả thông tin cú pháp và ngữ nghĩa, giúp mô hình học sâu hiểu rõ hơn về cấu trúc của mã. Kỹ thuật này đặc biệt hữu ích khi làm việc với các ngôn ngữ lập trình phức tạp như C và C++.
Việc trích xuất các mẫu từ mã nguồn là bước quan trọng để tạo dữ liệu huấn luyện cho mô hình. Các mẫu này được trích xuất từ cây cú pháp trừu tượng (AST) và các sơ đồ PDG và CFG. Các mẫu chứa lỗ hổng được gán nhãn và chuyển đổi thành vector để làm đầu vào cho mô hình học sâu.
Khóa luận này tập trung vào việc áp dụng phương pháp học sâu để phát hiện lỗ hổng bảo mật trong phần mềm. Các mô hình như CodeBERT và GCN được sử dụng để nhúng vector và phân tích mã nguồn. Kết quả thí nghiệm cho thấy hiệu quả của các mô hình này trong việc phát hiện lỗ hổng trên các bộ dữ liệu Vuldeepecker và SySeVR. Khóa luận cũng đề xuất hướng phát triển trong tương lai, bao gồm việc mở rộng sang các ngôn ngữ lập trình khác và cải thiện độ chính xác của mô hình.
Các thí nghiệm được thực hiện trên hai bộ dữ liệu chính là Vuldeepecker và SySeVR. Kết quả cho thấy các mô hình học sâu như LSTM và BiLSTM đạt hiệu suất cao trong việc phát hiện lỗ hổng. Các chỉ số đánh giá như độ chính xác, recall và F1-score được sử dụng để so sánh hiệu quả của các mô hình.
Khóa luận đề xuất các hướng phát triển trong tương lai, bao gồm việc áp dụng học sâu cho các ngôn ngữ lập trình khác ngoài C và C++, cũng như cải thiện các kỹ thuật trích xuất mẫu để tăng độ chính xác của mô hình. Ngoài ra, việc tích hợp các mô hình tiên tiến như Transformer và GNN cũng được khuyến nghị.
Bạn đang xem trước tài liệu:
Khóa luận tốt nghiệp an toàn thông tin nghiên cứu phương pháp phát hiện lỗ hổng bảo mật phần mềm bằng phương pháp học sâu
Phương Pháp Học Sâu Phát Hiện Lỗ Hổng Bảo Mật Phần Mềm Trong Khóa Luận Tốt Nghiệp là một tài liệu chuyên sâu tập trung vào việc ứng dụng kỹ thuật học sâu (deep learning) để phát hiện các lỗ hổng bảo mật trong phần mềm. Tài liệu này cung cấp cái nhìn chi tiết về cách thức các mô hình học sâu có thể được huấn luyện để nhận diện các điểm yếu bảo mật, từ đó giúp cải thiện an toàn thông tin trong quá trình phát triển phần mềm. Độc giả sẽ được hưởng lợi từ việc hiểu rõ hơn về quy trình áp dụng AI trong lĩnh vực bảo mật, cũng như cách thức tích hợp các phương pháp này vào các dự án thực tế.
Nếu bạn quan tâm đến việc mở rộng kiến thức về ứng dụng học sâu trong bảo mật, hãy khám phá Khóa luận tốt nghiệp an toàn thông tin sử dụng kỹ thuật học sâu trong phát hiện tấn công ứng dụng web, nơi tập trung vào việc phát hiện các cuộc tấn công trên ứng dụng web. Bên cạnh đó, Khóa luận tốt nghiệp an toàn thông tin thiết kế và triển khai hệ thống phát triển phần mềm tự động và an toàn theo mô hình devsecops cung cấp góc nhìn về việc tích hợp bảo mật vào quy trình phát triển phần mềm tự động. Cả hai tài liệu này đều là nguồn tham khảo quý giá để hiểu sâu hơn về các phương pháp bảo mật hiện đại.