CHƯƠNG 1. Giới thiệu vấn đề. Tính ứng dụng.-- --- + SH TH HH 3 1. Những thách thứỨc.- -- LH TH ng HH ng 3 1.
_ Giới thiệu những nghiên cứu liên quan. Trinh phát hiện mã đỘC. Mô hình fuzzing phát hiện lỗi hồi quy. Mô hình hoc tăng CƯỜng.
Mục tiêu, đối tượng, và phạm vi nghiên cứu. Mục tiêu nghiÊn CỨU. Đối tượng nghiên cứu. Phạm vi nghiÊn CỨU.-- -- 2 113139 ESESESEEeskerrerereeeree 9 CHƯƠNG 2.-cs<--ss<°vessessevvessesee 10 2.
HS HH ng ng TH nh 10 2. _ Cấu trúc tệp thực thi. Trường tiêu đề DOS (DOS Header). Trường tiêu dé PE (PE Header).
Phan đoạn bang (Section Table). Phân đoạn tập tin PE (Section PE Eile).- HH TH TH HH ng 14 2. Phát hiện lỗi hồi quy (Regression fault) bằng kỹ thuật fuzz. Lỗi hồi quy (Regression fault).
Ứng dung fuzz dé phát hiện lỗi hồi quy trong mô hình học sâu. Phương pháp phân tích tĩnh.---- --- «xxx vn ngư 21 2. Kỹ thuật dO QUẾC. Kỹ thuật Tìm kiếm tĩnh (Static Heuristic).---- -- ¿cz+cz+ce+sz 23 2.
Ky thuật kiểm tra tính toàn i0. Phương pháp phân tích động. Ky thuật Giám sát hành vi (Behavior Monitors). Ky thuật giả lập (EmulatIOT)).
Mô hình phát hiện mã độc dựa trên học máy. Mô hình học tang CƯỜN. Quy trình quyết định Markov (Markov Decision Process - MDP). Tổng quan mô hình hoc tăng cường.
Mô hình học sâu tang CƯỜng. Mô hình øym-ImaÌÏWAC. Môi trường va trạng thấi. Không gian hành động.
Phần thưởng. MÔ HÌNH ĐỘT BIEN MÃ ĐỘC. Mô hình mối de doa và giả định. Mô hình mối de doa.
Ngữ cảnh tấn côÔng. Mô hình phát sinh đột biến mã độc. Tổng quan mô hình dé xuất. Chi tiết mô hình dé xuất.
Tạo môi trường hoc tang CƯỜNg. Tao phần thưởng. Tao không gian hành động. Trinh phát hiện mã đỘC.
Ăn SH HH HH nrkp 45 3. Attention GRU — CNN (AttnGRU-CNN). Luéng hoạt động mô hình đột biến mã độc đề xuất.--- - ss+szss47 CHƯƠNG 4. MO HÌNH FUZ/ZING.
Mô hình Fuzzing .--- c1 SH TH ng ng 52 4. Tổng quan mô hình dé Xuất. Chỉ tiết mô hình để xuất. Quản lý Seed và tạo mẫu đột ĐiẾn.
Kiểm thử hồi Quy. Phương pháp duy tri seed pool. eee eeeeeeeseeeseeseceececeeseeeesesseesesaeeneens 56 CHUONG 5. THUC NGHIEM VA ĐÁNH GIA.
Môi trường thực nghiỆm. Xử lý dữ liỆU. SH SH TH TH TH HH ngành 5 5. Các chỉ số đánh giá thực nghiệm.
Tiến hành thực nghiệm. --¿- 2° 2 ESE+EE+EE£EE£EE2EESEEEEEEEEEEEEEkrrrrrerree 65 5. Huấn luyện mô hình phát hiện mã độc. _ Đột biến mau tạo dữ liệu đầu vào và fuzzing.
Hướng phát triển DANH MỤC HÌNH Hình 1.1: Cấu trúc của mô hình MalConv.---+-cs2++cccetrrrevtrtrecrrrrrererrrre 4 Hình 1.2: Cấu trúc của mô hình AttnGRU.--«cs5ccssscveseeereereereetsttertersersetsrtsrsersrrsresrsee 6 Hình 1.4: Mô hình mô tả hoạt động của DQEAF [4] .-------c------ecee-ereee 7 Hình 2.1: Cấu trúc định dạng tập tin PE.2: Phân đoạn tập tin PE.3: Quá trình kiểm thử bằng fuzzing [10].4: Mô hình fuzzing đề xuất.5: Giải pháp phân tích mã độc OPSWAT.6: Các bước thực hiện kỹ thuật tìm kiếm tĩnh.7: Kiểm tra mã băm của tệp thực thi bằng OSForensics.8: Môi trường Windows tạo bởi VirtualBOX.9: Markov Decision Process .10: Mô hình học tăng cường dựa trên MIDP.11: Cau trúc của Deep Q-Network.12: Mô hình của gym-malware [ [9 |].---«---«+se+xeerxerrerrerrerteerkerrkeee 33 Hình 3.1: Mô hình mối đe dọa của nhóm Rosenberg [20] .2: Tổng quan mô hình học tăng cường đề xuắt.3: Cấu trúc mô hình MalConv.4: Cấu trúc mô hình AttnGRU.5: Luồng hoạt động của mô hình đột biến mã độc.1: Mô hình fuzzing cải tiến.---2-css+recetrreettrerrtrrrvrrrrrrrrrrrrrrerre 52 Hình 4.2: Quản lý seed và tạo mẫu đột biến. HH nà nà hàn Hà nhà ngà tHritttetrritrvee 56 Hình 5.1: Tập dữ liệu DikeDataset [6 ].2: Trích xuất byte từ file header và chuẩn hóa [7] .3: Trích xuất byte từ file header và chuẩn hóa.4: Vector đặc trưng sau khi trích xuất.------+-ecss++rcceetrrererrrrererrre 61 Hình 5.5: Các chỉ số của hai phiên bản mô hình MalConvPlus.6: Các chỉ số của hai phiên ban mô hình AttnGRU — CNN.7: BCE loss của mô hình MalConvPlus version 2 .8: BCE loss của mô hình MalConvPlus version 1 .9: BCE loss của mô hình AttnGRU — CNN version 2.10: BCE loss của mô hình AttnGRU — CNN version 1 .e--«-- + s2 HH Hà Hường ghen 70 DANH MỤC BANG Bang 2.1: So sánh fuzzing và các kỹ thuật kiểm thử khác.1: Số lượng mau và loại mẫu trong DikeDataset .2: Đánh giá mô hình MalConvPlus và AttnGRU — CNN.3: Bảng tham số ngưỡng phát hiện của hai mô hình.4: Bảng kết quả tỷ lệ né tránh của trình tạo đột biến đối với hai mô hình .5: Số lỗi hồi quy đã phát hiện .+cc52reecSetrrrrvrrrrrrerrrrerrrre 69 Bảng 5.6: Lượng lỗi phân loại mà hai mô hình phát hiện sau một quy trình fuzz. 70 DANH MỤC CÁC KÝ HIỆU, CÁC TỪ VIET TAT S Không gian các trạng thái mà tác tử St Trạng thái môi trường tại lượt t Tập các hành động tác tử Hành động tại lượt thứ t Hàm chuyên Hàm phần thưởng Chính sách của Mô hình học tăng cường Trọng số cho phần thưởng Chiết khâu cho phần thưởng vr Chính sách tối đa hóa kỳ vọng Hàm giá trị cho trạng thái - hành động Trọng số cho mạng no-ron L(0) Hàm mat mát PE Portable Executable DLL Dynamic Link Library MD5 Mmessage-Digest Algorithm SHA Secure Hashing Algorithm CRC Cyclic Redundancy Check Algorithm MDP Markov Decision Process DL Deep learning OLE Object Linking and Embedding GRU Gated Recurrent Unit CNN Convolutional Neural Network Attn Attention API Application programing interface BCE loss Binary Cross-Entropy loss TÓM TÁT KHÓA LUẬN Tính cấp thiết của đề tài nghiên cứu: Trong những năm gần đây, các nhà nghiên cứu về an toàn thông tin, cụ thể là mã độc đã không ngừng cải tiến các hệ thống phát hiện mẫu. Các công trình này đã tích hợp thành công mô hình học sâu vào việc phát hiện và phân loại các mẫu mã độc.
Tuy nhiên, sự nâng cấp liên tục của các mô hình học máy đã dẫn đến việc lỗi hồi quy xuất hiện trong các hệ thống ứng dụng những mô hình này. Phương pháp được chúng tôi đề xuất sử dụng một mô hình học tăng cường nhằm tìm kiếm các thay đổi nhỏ nhất trong quá trình nâng cấp các mô hình học sâu dé có thé kích hoạt lỗi hồi quy. Cụ thể, việc nâng cấp các mô hình học sâu trong ngữ cảnh trong nghiên cứu của chúng tôi đến từ việc thay đổi các trọng số của mô hình trong mỗi lần huấn luyện với giả định rằng các thay đổi đó chính là những bản vá của mô hình. Quá trình fuzzing được thực hiện theo một chuỗi các bước: tạo mẫu từ seed ban đầu, kiểm tra chất lượng mẫu, kiêm thử trên mô hình, thu thập kết quả, cập nhật seed.
Mô hình kiểm tra học tăng cường được huấn luyện thông qua việc sử dụng mẫu mã độc ban đầu và các mẫu được tạo ra để đánh giá tính chính xác của chúng. Mục tiêu là đảm bảo rằng các mẫu mới tạo ra vẫn giữ được tính năng và tính chất của mẫu ban đầu, trong khi vẫn đạt được hiệu quả trong việc kích hoạt lỗi hồi quy ẩn trong các hệ thống phát hiện mã độc. Các kết quả thực nghiệm cho thấy phương pháp đề xuất đạt được hiệu suất cao trong việc tạo ra các mẫu độc đột biến có khả năng kích hoạt lỗi hồi quy mà vẫn giữ được tính chính xác và tính năng của mẫu ban đầu. Điều này đóng góp vào việc kiểm thử hệ thống phòng chống mã độc, đồng thời tạo ra một hệ thống có khả năng kiểm tra dé đảm bảo tính chính xác và hiệu quả của các mẫu tao ra.
TONG QUAN Chương này giới thiệu vê van đê và các nghiên cứu liên quan. Đông thời, trong chương này chúng tôi cũng trình bày phạm vi và câu trúc của luận văn. Giới thiệu van đề Trong một thời đại khi mã độc trở nên ngày cảng tinh vi hơn trong việc tránh phát hiện và bao gồm nhiều tính năng phức tạp, các nhà phân tích đã chuyền đổi sang sử dụng các kỹ thuật học máy để xác định và phân loại các đặc tính của mã độc. Các phương pháp này kết hợp linh hoạt các thuật toán và kỹ thuật trích xuất thuộc tính, và đặc biệt là sử dụng bộ dữ liệu đa dạng (như ember).
Kết quả từ thực nghiệm cho thấy, sự kết hợp này đã mang lại hiệu quả phát hiện mã độc lên đến 97% [1] khi sử dụng các kỹ thuật phân tích tĩnh. Tuy nhiên, các nghiên cứu gần đây đã chứng minh rằng các hệ thống ứng dụng học máy nêu trên có khả năng mắc lỗi hồi quy thường chỉ xuất hiện trên những ứng dụng truyền thống khi chúng được nâng cấp. Điều này tạo ra lỗ hồng trong việc bảo vệ hệ thống, đòi hỏi các nhà nghiên cứu và chuyên gia an ninh phải kiểm thử cho hệ thông học sâu của mình sau nâng câp, việc rât thách thức và tiêu tôn nhiêu nhân lực. Trước thách thức này, một hướng tiếp cận hứa hẹn là sử dụng học tang cường (reinforcement learning) [2] két hop với kỹ thuật fuzzing [3] dé phat hién 16i hoi quy tôn tại trong hệ thống.
Việc kết hợp học tăng cường vào quá trình fuzz nhằm khắc phục van dé mà nghiên cứu của nhóm Anh Nguyen đưa ra: Việc tạo ra đầu vào kiểm thử một cách không kiểm soát sẽ làm hỏng mô hình học sâu [4, 5]. Điều này đã làm cho việc kiểm thử trở nên không hiệu quả và khó khăn hơn. Chính vì vậy, trong nghiên cứu này, chúng tôi đề xuất một giải pháp mới là một hệ thống học tăng cường có chức năng kiêm tra mẫu (adversarial sample checker). Ý tưởng là kết hợp quá trình tạo ra các mẫu đột biến với một bước kiểm tra tính chính xác và tính thực thi của mẫu trước khi triển khai vào hệ thống.
Như vậy, chúng ta có thé đảm bảo rang các mẫu đột biến vẫn giữ được tính chức năng va khả năng gây hại cho hệ thống mục tiêu. Tính ứng dụng Đề tài này mang đến một cách tiếp cận thực tế hơn trong việc áp dụng học tăng cường vào hệ thống tạo mẫu đối kháng phục vụ cho fuzzing. Điểm đặc biệt của phương pháp này là sau khi tạo ra các mẫu, chúng sẽ trải qua một quy trình kiểm tra tính năng trước khi được đưa vào quy trình fuzz. Nhờ vậy, kết quả của thử nghiệm sẽ đánh giá được ứng dụng thực tế của hệ thống, thay vì chỉ tập trung vào việc tạo mẫu đối kháng dựa trên kết quả của trình phát hiện một cách đơn thuần.
Tổng quan, quá trình fuzzing đóng vai trò quan trọng trong việc phát hiện lỗi hồi quy ẩn trong hệ thống phát sinh sau khi nâng cấp hệ thống deep learning giúp tiết kiệm nhân lực trong quá trình kiểm thử và phát hiện sớm lỗ hồng trong hệ thống.