Để có được điều này, chúng tôi có huấn luyện 2 mô hình ctgan — môhình thứ nhất dé tạo synthetic data cho các mẫu benign và mô hình thứ hai tạosynthetic data cho các mẫu malware.. Phương
Tổng QUAN 0 4ệ
Với sự phát triển mạnh mẽ của data science và big data, ML đã đang được ứng dụng Tộng rãi trong rất nhiều các lĩnh vực, trong đó có việc sử dụng các thuật toán ML trong việc phát hiện malware.
Rất nhiều thuật toán dựa trên ML đã được đề xuất để trích xuất thuộc tính và phát hiện mã độc Ví dụ, thuật toán [1] đề xuất sử đụng api calls và permission làm thuộc tính dé phân loại, trong khi đó, thuật toán [2] đã sử dụng N-Gram byte làm thuộc tính, mô hình trích xuất thuộc tính [3] đề xuất sử dung 1 máy ảo và thực thi malware trực tiếp dé lay các api calls trong quá trình thực thi làm features dé phát hiện mã độc Ở bài viết này, chúng tôi dựng cuckoo sandbox đề thực thi file PE và trích xuất api calls để tạo dataset dùng huấn luyện model.
Chúng tôi cần nguồn data lớn cho mục đích kiểm tra accuracy của models và làm giàu dataset Để có được điều này, chúng tôi có huấn luyện 2 mô hình ctgan — mô hình thứ nhất dé tạo synthetic data cho các mẫu benign và mô hình thứ hai tạo synthetic data cho các mẫu malware Chúng tôi sử dung 2 models ctgan dé tạo 1 tập testing dataset có kích thước lớn Các models ML của chúng tôi sẽ được kiểm tra accuracy trên tập testing data này.
Hầu hết các nhà nghiên cứu quan tâm đến hiệu suất của thuật toán (true positive, accurate, AUC, ) mà không chú trọng đến robustness - một trong những yếu tố quan trọng nhất cần được xem xét Có rất nhiều các thuật toán mang lại độ chính xác cao khi nghiên cứu, tuy nhiên lại không thể ứng dụng trong thế giới thực vì robustness quá thấp khiến cho nó dễ dàng bị tắn công và bị qua mặt, dẫn đến phân loại sai và không phát hiện được mã độc.
Nhiều phương pháp đã được đề xuất để cải thiện robustness của hệ thống Phương pháp model stacking [8] cải thiện hiệu suất model bằng cách tập hợp nhiều dự đoán trên từng model riêng lẻ để đưa ra dự đoán cuối cùng, gắn giống với random forest.
Model stacking thuộc nhóm ensembly model, có khả năng dự đoán dựa trên “sự khôn ngoan của đám đông” Trong khi đó, một số phương pháp khác thay đổi trên dataset thay vì model Phương pháp [9] tạo biến thé của 1 class trong dataset dé giúp models tập trung học các feature quan trọng của class đó thay vì các feature không quan trọng Trong bài viết này, chúng tôi hướng đến robustness cho các models bằng việc thay đổi dataset Chúng tôi thử nghiệm 2 phương làm giàu dataset với hy vọng rằng điều nảy sẽ tăng robustness của models Phương pháp đầu tiên là chúng tôi sử dụng 2 models ctgan đã huấn luyện để sinh synthetic data, và chúng tôi sử dụng bô synthetic data kết hợp với dataset ban đầu dé huấn luyện các models ML. Phương pháp thứ 2 là chúng tôi đề xuất tạo bộ dataset từ dataset ban đầu đã chuẩn bị dé tăng robustness Để kiểm tra robustness và cho thấy sự hiệu quả của dataset chúng tôi đã tạo, chúng tôi thử nghiệm tan công GAN nhắm vào các models ML.
Gan đây, bằng Generative Adversarial Networks (GAN), kẻ tan công đã có thé tao ra các adversarial examples (AE) dé qua mặt models ML Tan công [4] đã thêm những nhiễu loạn không thé nhìn thấy bằng mắt thường vào hình ảnh dé khiến mạng neural network không thể phân biệt được hình ảnh Cuộc tấn công [5] không gây nhiễu các giá trị cường độ pixel mà thay vào đó đã đề xuất 1 phương pháp mới là Adversarial morphing attack ( a.k.a Amora) nhằm biến đổi hình ảnh và đánh lừa các models.
Trong thực tế, kẻ tan công thường không có quyền truy cập vào kiến trúc của model; khi này model mục tiêu là 1 hộp đen đối với kẻ tan công, các cuộc tan công ma tạo các AE nhắm đánh lừa các hộp đen được gọi là tấn công black box GAN Một số cuộc tấn công black box GAN nhắm vào các hệ thống phòng thủ đã được dé xuất. IDSGAN [6] đã được đề xuất dé tạo ra các AE chống lại các hệ thống IDS, bao gồm bộ tạo (generator), bộ phân biệt (discriminator) và black-box IDS Bộ phân biệt được sử dụng dé mô phỏng black-box và bộ tao ding dé tạo mẫu AE MalGAN [7] đã được đề xuất để tạo ra các mẫu thử PE malware qua mặt models phát hiện mã độc bằng api calls Mô hình MalGAN sử dụng forward neural network làm bộ tạo, substitute detector làm bộ phận biệt, random noise và vector api calls của malware lam input để tạo mẫu malware Trong bài viết nay, chúng tôi đã thực hiện cuộc tấn công black-box GAN nhắm vào các models ML mà chúng tôi đã train để xem tác động của cuộc tan công cũng như kiểm tra robustness của models.
Nội dung của các phần còn lại như sau: Chương 3 trình bày mô hình feature extract và cách thức chúng tôi thu thập và xử lý dataset, Chương 4 trình bày việc huấn luyện mô hình ctgan dé tạo synthetic dataset, Chương 5 trình bày việc chúng tôi huấn luyện models ML, bao gồm models được huấn luyện trên tập dataset ban đầu (models type I), models được huấn luyện trên tập dataset được tạo bởi mô hình ctgan (models type II) và models được huấn luyện trên tập dataset mà chúng tôi đã tạo (models type III), Chương 6 trình bày tân công GAN và mô hình tan công mà chúng tôi đã sử dụng Chương 7 trình bày kết qua tan công black — box GAN nhằm vào các models ML mà chúng tôi đã train và kết luận của chúng tôi và kết luận. Chương 8 trình bày hướng phát triển tiếp theo (nêu có thể) Chương 9 là những tài liệu đã tham khảo.
Feature extraction: - St SE T411 11 1 1111 1101 1.101 1.1 1v 6 Chương 4 Huan luyện mô hình ctgan dé tao synthetic data
Synthetic data a gi cceceseeeceseseeseseeseseeeseseeseseseseeeseeecseseeasseseseeseeeeeneeees 9 4.2 Huan luyện mô hình ctgan và tao các dataset cssssessssssssseesessssseeesessssseeeee 11 4.3 Mô hình GAN: c tt HH HH re 11 Chương 5 Huấn luyện model ML để phát hiện malware
Synthetic data là dữ liệu được tạo ra một cách tu động thông qua các phương thức hoặc thuật toán mô phỏng dữ liệu Với sự phát triển của công nghệ, việc sản xuất dữ liệu tổng hợp có thể được thực hiện một cách nhanh chóng và tiết kiệm chỉ phí so với việc thu thập và chế biến dữ liệu thủ công.
Synthetic data có thể được tạo ra dé giảm thiểu các rủi ro liên quan đến việc sử dụng dữ liệu thực tế, như việc bảo vệ sự riêng tư của người dùng hoặc giảm thiểu các rủi ro an ninh mạng Nó cũng có thé được sử dung để bổ sung các tập dữ liệu đang có hoặc tạo ra một không gian dữ liệu mới nhằm mục đích huấn luyện các mô hình học máy.
Việc sử dụng synthetic data trong ML đang trở thành một xu hướng, bởi vi synthetic data có thể cung cấp cho mô hình học máy các đặc trưng và kết cấu mới mà không có trong tập dữ liệu huấn luyện ban đầu, nhằm giúp mô hình có khả năng tổng quát hóa và làm giảm hiện tượng quá khớp (overfitting).
Tuy nhiên, việc tạo ra synthetic data cần thận trọng và kiểm soát chất lượng bởi vì nó phải được đảm bảo rằng dữ liệu được tạo ra đủ đa dang và đại diện cho các điều kiện thực tế để mô hình có thể tổng quát hóa.
Synthetic data có thể được tao ra bằng nhiều phương pháp, các phương pháp thường được sử dụng bao gồm:
(i) Mô phỏng các sự kiện, tình huống: Dữ liệu có thé được tạo ra bằng cách mô phỏng các sự kiện hoặc các tình huống đa dạng bằng cách sử dụng các mô hình toán học, các thuật toán mô phỏng chuyển động, các hệ thống mô phỏng cảm giác,
(ii) Sw dụng thuật toán GAN: Thuật toán GAN là một trong những công nghệ mới nhất trong việc tạo ra synthetic data Nó hoạt động bằng cách huấn luyện một model generator học mẫu dé tao tap dữ liệu mới, trong đó nó sử dụng model discriminator dé đánh giá tính chân thực của các synthetic được sinh ra.
(ii) Tu động hóa việc tạo ra dữ liệu: Các phần mềm tự động có thé tạo ra các synthetic data đa dạng dựa trên các quy tắc và tham số được định sẵn. Điểm mạnh của phương pháp này là tạo ra một lượng lớn synthetic với độ đa dạng cao.
Việc sử dụng synthetic data trong học máy có nhiều ứng dụng trong thực tế như: giảm thiểu rủi ro bảo mật thông tin, nâng cao độ chính xác trong việc phát hiện gian lận, phân tích hình ảnh, xử lý ngôn ngữ tự nhiên, Trong khóa luận này, chúng tôi sử dụng thuật toán GAN để tạo synthetic data GAN là một trong những thuật toán tạo mới synthetic data hiệu quả nhất, nó cũng được sử dụng trong các lĩnh vực như nhận dạng hình ảnh, xử lý ngôn ngữ tự nhiên, và cho kết quả tốt GAN cho phép tạo ra một lượng lớn các synthetic data đa đạng, có thể giữ nguyên các tính chất thống kê cùng với khả năng đại diện chung cho tập dữ liệu huấn luyện Điều này giúp models phân loại có khả năng tổng quát hóa tốt hơn vì nó được huấn luyện trên các dữ liệu tổng hợp đa dạng và phong phú Người dùng có thể điều chỉnh thuật toán GAN dé đáp ứng các yêu cầu và giải quyết các thách thức khác nhau trong tạo ra dữ liệu tong hợp Tuy rằng thuật toán GAN tổn tại 1 số nhược điểm như:
(i) Khi tạo mới synthetic data bằng GAN, có thé dé dàng bị quá khớp với dit liệu huấn luyện ban đầu, dẫn đến hiện tượng model bị giới hạn trong việc tổng quát hóa các đữ liệu mới.
(ii) — Việc huấn luyện một mô hình GAN có thé mất rất nhiều thời gian để đạt được kết quả tối ưu, đặc biệt là khi kích thước tập đữ liệu và kiến trúc mạng được sử dụng trong thuật toán lớn.
(ii) - Việc kiểm định chất lượng của synthetic data được tạo ra bằng GAN là một van đề thách thức, do các thuật toán GAN sản xuất dữ liệu độc lập và không biết đến sự tồn tại của dữ liệu thực sự.
Như vậy, sử dụng thuật toán GAN để tạo mới synthetic data cần phải được thực hiện và kiểm tra kỹ càng để đảm bảo độ chính xác và đáng tin cậy của dữ liệu. Chúng tôi sử dụng model ctgan dé tao synthetic data, chúng tôi cũng theo dõi sát sao các loss functions models trong quá trình huấn luyến để đảm bảo việc huấn luyện là tốt và models có thé sinh dữ liệu synthetic data có chất lượng.
4.2 Huấn luyện mô hình ctgan và tao các dataset
Chúng tôi huấn luyện models ctgan vì 2 mục dich:
(i) — Chúng tôi muốn tạo testing dataset kích thước lớn để thử nghiệm độ chính xác của models sau khi train
(ii) — Chúng tôi muốn tăng kích thước train dataset xem robustness của models có tăng không
Mô hình GAN là một kiến trúc mạng nơ-ron sử dụng deep learning để tạo ra các mẫu di liệu giống như dữ liệu huấn luyện được cung cấp Mô hình này được đề xuất bởi lan Goodfellow vào năm 2014.
Nhiệm vụ tổng quát chính của mô hình là học các quy tắc có trong đữ liệu huấn luyện, từ đó có thể tạo một biến thể mới gần giống với dữ liệu ban đầu Mô hình GAN bao gồm hai mạng nơ-ron:
(i) Generator: Tạo ra các mẫu dữ liệu giả.
(ii) Discriminator: Đánh giá mức độ giống nhau giữa mau dữ liệu đầu vào và các mẫu đữ liệu được tạo ra bởi Generator.
Các mạng này được dao tạo đồng thời thông qua việc tối ưu hóa ham mắt mát (loss function) Mục tiêu của GAN là tối thiểu hóa độ sai lệch giữa phân phối của dữ liệu thực tế và phân phối của dữ liệu được tạo ra bởi Generator Khi độ sai lệch này đạt được giá trị tối thiểu, Generator sẽ tạo ra các mẫu dữ liệu giả gần như không thể phân biệt được với dữ liệu thực tế.
() Cấu trúc tổng quát của Generator là một kiến trúc mạng nơ-ron tích chập ngược (deconvolutional neural network), có thể bao gồm nhiều hidden layer và I output layer.
(ii) Input của Generator là một véc-tơ ngẫu nhiên (latent vector) được lay từ một phân phối ngẫu nhiên thích hợp, thường là phân phối Gaussian chuẩn.
(iii) Generator sử dụng các non-linear activation functions như ReLU, Tanh hoặc Sigmoid dé tinh toán đầu ra cho từng hidden layer.
(iv) Pau ra của Generator là một tensor có cùng kích thước với dữ liệu thực tế.
(i) Cấu trúc tổng quát của Discriminator cũng là một kiến trúc mang nơ-ron tích chập, có thé bao gồm nhiều hidden layer.
(ii) Input của Discriminator là một mẫu dữ liệu, có thé là dữ liệu thực tế từ tập huấn luyện hoặc đữ liệu được tạo ra từ Generator.
(iii) Discriminator cũng sử dụng các non-linear activation functions như
ReLU, Tanh hoặc Sigmoid dé tính toán đầu ra cho từng hidden layer.
Huấn luyện các models MIL¿ ¿¿5222222+222ES2+++tt2EESvvrrsrrvvvsrrerrrr 24 Chương 6 Thực hiện tân công black — box GAN -¿-2222cc++2225vvccsscccss 30 6.1 Tấn công GANP”, EBl.aseo:( ae coi 4, ĐỂR, [co HH
Qua tìm hiểu sơ bộ 5 thuật toán, chúng tôi nhận thấy 3 thuật toán LR, DT, và MLP đều nhạy cảm với dữ liệu có noise và dữ liệu bat thường, chúng tôi nghỉ ngờ rằng 3 thuật toán nay sẽ không ồn định trước cuộc tấn công GAN Tuy nhiên, chúng tôi không vội vàng kết luận mà huấn luyện các loại model rồi thực hiện tấn công, sau đó mới đi đến kết luận Ở bài viết này, chúng tôi thực hiện huấn luyện 3 loại models (mỗi loại sử dung train dataset khác nhau) Models type I chúng tôi sử dung tập dataset ban dau, sau khi hoàn tat quá tình feature extraction, bao gồm 1441 mẫu PE khác nhau Models type II chúng tôi sử dụng tập dataset ban đầu như type I nhưng cộng thêm training dataset do 2 model ctgan đã tạo, bao gồm 10000 mẫu benign và
10000 mẫu malware Models type III thì chúng tôi sử dụng tập dataset ban đầu như các models type I dé train, ngoài ra, chúng tôi còn sử dụng 1 bộ train dataset bao gồm các biến thể feature vector của mẫu malware mà chúng tôi tạo ra dựa trên tập dataset ban đầu Sau khi huấn luyện, chúng tôi kiểm tra accuracy của các models bằng tập testing dataset đã được tạo bằng 2 models ctgan, bao gồm 100000 mẫu benign và 100000 mẫu malware Chúng tôi cũng đã kiểm tra loss function của 2 models ctgan (đã trình bay ở chương 2) nên chúng tôi tin rằng testing dataset có chất lượng tốt và có thể được sử dụng để thử nghiệm độ chính xác của models Tuy nhiên, để kiểm tra robustness của models, chúng tôi sẽ thực hiện tấn công GAN ở phan sau.
Chúng tôi sử dụng tap dataset ban đầu đã dé cập ở phan feature extraction dé huấn luyện models, tập train dataset bao gồm 1441 mẫu, hơn 700 mẫu malware và hơn
700 mẫu benign Sau khi huấn luyện, chúng tôi thử nghiệm độ chính xác trên tập testing đataset mà chúng tôi đã tạo bằng 2 mô hình ctgan, biểu đồ loss function của
2 mô hình ctgan đã được trình bày cho thấy mô hình ctgan đã được huấn luyện tốt. Testing dataset, như đã đề cập, bao gồm 100000 dòng benign va 100000 dòng malware Cac models không được học tập dataset này Độ chính xác của các models như sau:
Bang 5.1 Accuracy của các thuật toán ML type I
Chúng tôi thấy độ chính xác của các models ổn, tuy nhiên cần phải thực hiện tấn công black-box GAN đề kiểm tra robustness.
5.2.2 Huấn luyện models type II:
Chúng tôi sử dụng tập dataset đã thu thập từ thế giới thực (đã đề cập ở phần feature extraction), bao gồm hơn 700 mẫu benign và hơn 700 mẫu malware Thêm vào đó, chúng tôi sử dụng thêm tập train dataset được tạo từ 2 models ctgan Tập dataset này bao gồm 10000 mẫu benign và 10000 mẫu malware, mục đích chúng tôi tạo tập thêm tập dataset này là vì muốn cho models nhận biết những thay đổi có thể xảy ra trong đữ liệu, khiến cho nó có thể nhận biết những trường hợp chưa từng gặp của lớp benign hoặc malware Chúng tôi kỳ vọng rằng làm như vậy sẽ tăng phần nào robustness của models Sau khi huấn luyện, chúng tôi cũng thử nghiệm độ chính xác của nó trên tập testing dataset Độ chính xác của các models như sau:
Bảng 5.2 Accuracy của các thuật toán ML type II
Chúng tôi thay độ chính xác cao hơn 16 so với các models type I, tuy nhiên, robustness của nó chưa được kiểm tra, chúng tôi chưa chắc liệu nó có tốt hơn models type I không Cần phải trải qua cuộc tan công GAN mới có thé biết được.
5.2.3 Huan luyện models type III:
Dưới góc nhìn của 1 người nghiên cứu va hoàn toàn không biết gì về cuộc tan công GAN, chúng tôi tin rằng để có thé qua mặt models, mô hình tan công black - box GAN phải thực sự tạo ra | loại sample thực sự dị thường Không tương đồng VỚI train dataset và không tương đồng với data trong thé giới thực Do đó, chúng tôi cố tìm 1 cách tạo mẫu thử thực sự khác thường từ tap dataset ban đầu (bao gồm hon
700 dòng benign và hơn 700 dong malware).
Tuy không biết cơ chế thay đổi, nhưng chúng tôi hoàn toàn có thé biết rằng: ở bài toán phát hiện malware này, nhăm bảo toàn tính độc hại, kẻ tan công khi thay đôi feature của các mau malware, chỉ có thê thêm mới: label Apia Apib Apic ôô ô Apig Api
Thay đổi thuộc tính để qua mặt models label Apia Apib Apic
Hình 5.3 Thay đôi feature vector của malware để tạo AE
Lý do cho điều này là vì nếu xóa bỏ bat ky api calls nào, file malware có thé bị crack và không còn giữ được tính độc hại của nó nữa, như vậy thì việc bị models phân loại là benign là vô nghĩa.
Một điều nữa, chúng tôi tin rang dé kẻ tan công thay đổi thuộc tính nào đó mà dẫn đến thay đổi luôn kết quả phân loại, thuộc tính đó phải là thuộc tính quan trọng để phân biệt class benign và malware (Thuộc tính trong dataset ở đây có thể hiểu là api).
Từ 2 điều nhận định trên, chúng tôi biết rằng cuộc tan công GAN có thé nhắm đến các api tồn tại trong dataset, thỏa mãn 2 điều kiện chính sau:
(i) Đó là api quan trọng của class benign (feature important) va class benign phải sử dung những api này (ii) Đó là api quan trọng của class malware (feature important) va class malware không sử dung những api nay.
Từ ý tưởng đó, chúng tôi tiến hành thống kê phân phối dữ liệu và kiểm tra ty lệ sử dụng các apis của các mau malware trong dataset:
Tỷ lệ các api được sử dụng
Hình 5.4 Biểu đồ tỷ lệ sử dụng các api của các mẫu malware
Từ biểu đồ, chúng tôi nhận thấy có những apis thực sự rat ít được các dong malware sử dụng (tỷ lệ sử dụng < 0.3) Những apis này lại được các mẫu benign sử dụng Có khả năng, models khi học, nó sẽ xem các api này như feature quan trọng đề phân biệt malware hoặc benign Chang hạn, nó sẽ cho rằng các mẫu có sử dụng các apis đó là benign, ngược lại là malware Như vậy, theo nhận định của chúng tôi, các api này rất có thé là những api mà kẻ tấn công nhắm đến Những api nay rất hữu ich nếu chúng tôi muón tăng độ chính xác của các models phát hiện malware nhưng đôi khi nó lại là 16 hổng của models Bởi vì những mẫu đôi khi có sử dụng những apis đó nhưng lại là malware.
Khi có tầm nhìn về dữ liệu như vậy, chúng tôi suy đoán cuộc tấn công GAN vào các models phát hiện malware của chúng tôi có thê lợi dụng những feature xuất hiện ở các mau benign mà không xuất hiện ở những mẫu malware, những feature nay giúp models phân biệt rõ malware và benign nhưng cũng làm sai lệch kết quả phân loại khi kẻ tan công sẽ cố ý chèn những features này vào mẫu malware.
Chúng tôi tin rằng điều này sẽ không thường gặp ở các mẫu thu thập được từ thế giới thực Bởi vì các mẫu thu được ở thế giới thực không sử dung apis | cách bừa bãi và không có tình sử dụng các apis khác biệt nhau giữa 2 lớp benign và malware.
Dựa trên những lập luận vừa nêu, từ tập dataset ban đầu, chúng tôi lấy ra những mẫu malware Sau đó chúng tôi thay đổi ngẫu nhiên trên những apis mà các mẫu malware đó hiểm khi sử dụng, khi thay đồi, chúng tôi chỉ thêm mới apis (tức là thay thê các feature vector của mau malware có sử dụng các apis mà các mâu malware trong tập dataset ban đầu hiếm sử dung.
Model SVM&
Sau 100 epochs, biểu đồ TPR của 3 loại models như sau:
064 Ð WAP ) pel ch, =sa———— i a SF
Hình 7.4 Biéu đồ TPR của model SVM type I
Sau khoảng 5 đến 10 epochs đầu, TPR của model SVM type I giảm cực kỳ nhanh, mặc dù có nhưng giai đoạn TPR của nó tăng lên lại (từ epoch 30 — 35) Sau 100 epochs, TPR của model SVM én định và dao động từ 0.55 đến ~0.6, chúng tôi tin rằng model GAN đã hội tụ và với TPR như vậy, black - box hoàn toàn có thê bị qua mặt.
Hình 7.5 Biểu đồ TPR của model SVM type II Đối với model SVM type II, chúng tôi nhận thấy TPR giảm nhanh chóng sau 20 epochs đầu, và model GAN cũng gần như hội tụ sau 20 epochs đâu, TPR của model sau 100 epochs là dưới 0.5, đây là tỷ lệ khá thấp, cho thấy synthetic data mà model ctgan đã tạo ra hoàn toàn không có tác dụng cải thiện robustness của model trước cuộc tấn công black — box GAN Chúng tôi cho rằng bởi vì các mẫu AE do mô hình tạo ra quá khác biệt so với models ctgan của chúng tôi Kể cả khi chúng tôi tin rằng models ctgan hoạt động tốt và có thé tạo ra các trường hợp chưa từng gặp của malware, nhưng kết quả tấn công cho thấy train data mà ctgan tạo ra không đủ dị thường dé khỏa lap các trường hợp dị thường mà tan công GAN tạo ra.
Hình 7.6 Biểu đồ TPR của model SVM type III
TPR của model SVM type III đã ôn định và không bị ảnh hưởng trước cuộc tấn công GAN, điều đó 1 lần nữa cho thấy các biến thể feature vector của malware mà chúng tôi tạo ra có tác dụng, robustness của model đã tăng rõ rệt Cũng như các models trước, TPR của model SVM type III giảm nhanh trong khoảng 10 epochs đầu tiên, nhưng chỉ giảm xuống khoảng 0.7, đây là một tỷ lệ có thể chấp nhận được, nó không quá thấp Ở các epochs sau đó, TPR của nó đã tăng trở lại và ồn định ở mức cao Như vậy, với TPR như vậy, kẻ tấn công khó có thể qua mặt model, tuy nhiên, để có được robustness ổn định như vậy, chúng tôi đã hy sinh 1 phần độ chính xác của các models, mặc dù sự mat mát ở độ chính xác là có thé chấp nhận được. Chúng tôi nghĩ cần nên cân bằng giữa việc accuracy và robustness, không nên vì quá chú tâm vô robustness mà bỏ qua hết độ chính xác.
Model Train dataset Test dataset
Original Adver Original Adver Type I 0.98 0.64 0.9 0.6
Bang 7.2 TPR của các models SVM
Chúng tôi thay TPR của models SVM type III trên tập AE là cao nhất, nó ít bị anh hưởng nhất bởi cuộc tấn công GAN Qua 100 epochs, chúng tôi thấy rõ là robustness của models type III đã cải thiện rõ, bên cạnh đó, chúng tôi nhận thấy models type II cũng không có tỷ lệ TPR cao hơn so với models type I, mặc dù nó đã được train trên tập ctgan train dataset.
Model LR: .44 7.5 Model MLP
Biéu dé TPR cua 3 loai models sau 50 epochs nhu sau
Hình 7.7 Biểu đồ TPR của model LR type I
TPR của model LR type I trước cuộc tấn công cứ giảm dan và thậm chí không có dấu hiệu tăng Chỉ cần 50 epochs, mô hình GAN đã hội tụ và cuộc tấn công đã qua như nghỉ ngờ của chúng tôi sau khi tìm hiểu sơ bộ thuật toán LR, chúng tôi biết rằng nó rất nhạy cảm với dữ liệu và dễ bị ảnh hưởng bởi dữ liệu nhiễu.
Hình 7.8 Biểu đồ TPR của model LR type II
Model LR type II chỉ cần 50 epoch là nó đã bị qua mặt, với TPR rất thấp như vậy, kẻ tan công hoàn toàn vượt qua được model.
Hình 7.9 Biểu đồ TPR của model LR type III
Với model LR type III, TPR của nó có giảm những không quá thấp như các model
LR type I và type II, sau 50 epochs, TPR của nó dao động từ 0.55 — 0.6, thậm chí, có những epoch mà TPR của nó đã tăng Điều đó cho thấy robustness của nó cũng có tăng, nhưng TPR ở mức trung bình như vậy thì không đủ dé ngăn chặn cuộc tan công GAN Robustness có tăng nhưng đã phải đánh đổi 1 phan accuracy, tuy vậy robustness lại tăng không nhiều.
TPR sau 50 epochs như sau:
Model Training dataset Testing dataset
Bảng 7.3 TPR của các models LR
Ta thấy TPR của các models type I va type II giảm mạnh và đột ngột sau 10 epochs, cho thấy tác động của cuộc tân công GAN ảnh hưởng rất lớn đến các models LR, models type III mặc dù TPR có giảm nhưng không ồn định và không giảm quá mạnh, điều này cho thấy robustness của models phần nào đó đã chống lại cuộc tan công GAN Tuy vậy sau 50 epochs, TPR của models cũng giảm khá rõ và với biến động TPR như vậy, chúng tôi lo ngại TPR của models type III cũng sẽ tiếp tục giảm và không 6n định nếu cứ tiếp tục tấn công Qua biểu đồ và TPR sau 50 epochs, chúng tôi nhận thay đúng như nghỉ ngờ của mình sau khi tìm hiểu sơ bộ model LR, thuật toán rất nhạy cảm và bị ảnh hướng lớn bởi dữ liệu nhiễu và bất thường
Biéu dé TPR cua 3 loai models sau 50 epochs:
Hình 7.10 Biểu đồ TPR của model DT type I
Biểu đồ TPR của model DT type I cho thấy nó hoàn toàn bị qua mặt bới cuộc tấn công GAN, sau chỉ khoảng 3 epochs đầu, TPR của nó giảm hẳn về 0 và hoàn toàn là
0 ở các epochs sau Chúng tôi biết rằng các node trong DT sử dụng các giá trị binary của features dé phân loại, do đó chúng tôi có thé hiểu chi cần thay đổi giá trị ở 1 node nào đó là hoàn toàn có thể thay đổi cả đường phân nhánh của đữ liệu input và khiên nó bị phân loại sai.
Hình 7.11 Biểu đồ TPR của model DT type II
Ta thay biéu đồ TPR của model DT type II có khác type I, nhưng từ epoch 40, TPR của model hoàn toàn là 0, mặc dù các epochs trước, TPR của nó có giảm nhưng có tăng, có thể robustness của nó đã được cải thiện những không đủ Chúng tôi biết rằng, có thé 1 số node của model DT type đã cập nhật dẫn đến việc TPR của nó không giảm han về 0 cho đến epoch 40 Tuy nhiên vẫn còn tồn tai số node mà chỉ cần thay đổi giá trị của nó là thay đổi đường phân nhánh của input và dẫn đến phân loại sai.
Hình 7.12 Biểu đồ TPR của model DT type HT
Với model DT type III, TPR của nó giảm nhưng ồn định ở mức 0.5 — 0.55, các biến thể feature vector của mẫu malware mà chúng tôi đã tạo phần nào đã cải thiện robustness của model Tuy vay TPR chỉ ở mức trung bình cho thấy kẻ tan công có thể tạo ra các mẫu AE đề qua mặt model.
TPR của các loại models sau 50 epochs:
Model Train dataset Test dataset
Bang 7.4 TPR của các models DT
Chúng tôi nhận thấy models type I và type II giảm han về 0, cho thấy black — box đã bị qua mặt hoàn toàn Tuy nhiên, nhìn vào biểu đồ TPR của model type I, ta thấy nó hầu như rất nhạy cảm và gần như bị đánh bại trong 5 epochs đầu Model type II có TPR biến động mặc dù có những giai đoạn nó hầu như không giảm nhưng nó vẫn giảm đều và thất bại sau 50 epochs Ở model type III, chúng tôi đã kỳ vọng nó chống lại cuộc tan công nhưng TPR của nó cũng giảm đột ngột chỉ trong 10 epochs đầu, tuy nhiên, ở các epochs sau, TPR của nó đã ổn định và duy trì ở mức khoảng
0.5, không còn chịu ảnh hưởng bởi tác động của cuộc tấn công, rõ ràng robustness của nó đã cải thiện rõ Robustness của model DT type III có cải thiện tuy nhiên, để có được điều đó, chúng tôi đã phải hy sinh 1 phan accuracy, chúng tôi nghĩ khó có thể cân bằng giữa accuracy và robustness của model này vì sau mỗi lần hy sinh 1 phan accuracy, robustness của nó tăng không quá nhiều.
Hình 7.13 Biểu đồ TPR của model MLP type I
TPR của model MLP type I này giảm sâu va ở mức rat thấp sau 50 epochs, dao động trong khoảng 0.25 Cho thay model MLP type I không có robustness và mô hình tan công GAN đã hoàn toàn qua mặt nó.
Hình 7.14 Biểu đồ TPR của model MLP type II
Chúng tôi kỳ vọng model type II có robustness cải thiện, tuy nhiên, sau 50 epoch,
TPR của nó rất thấp, dưới 0.5, chúng tôi tin rằng thuật toán này có độ chính xác cao và hoạt động tốt với dữ liệu đa chiều phức tạp và dữ liệu phi tuyến tính Tuy nhiên nó lại nhạy cảm với dữ liệu nhiễu và do đó, có thể bị ảnh hưởng lớn bởi cuộc tấn công.
Hình 7.15 Biểu đồ TPR của model MLP type III
TPR của các model MLP type III sau 50 epochs đã giảm về mức trung binh, điều này là vì bản chất thuật toán của nó nhạy cảm với dữ liệu nhiễu, tuy nhiên chúng tôi nhận thấy TPR của model type I thấp so với model type III, điều này cho thấy robustness của model đã cải thiện.
TPR của các loại models sau 50 epochs:
Model Train dataset Test dataset
Bảng 7.5 TPR của các models MLP
Chúng tôi nhận thấy qua các biểu đồ, tỷ lệ TPR của các loại models giảm mạnh trong khoảng 10 epochs đầu và ổn định dần sau đó, điều này cho thấy tan công
GAN tác động rất lớn đến các loại models, tuy nhiên, tỷ lệ TPR ổn định cho thấy tác động của cuộc tấn công có thể chỉ dừng lại ở một mức độ nào đó.
Sau khi train models và kiểm tra độ chính xác, chúng tôi thấy độ chính xác của các models rất tốt Điều này cho thấy ở bài toán phát hiện malware bằng api calls, feature vector chỉ mang các giá tri binary, các model khác nhau RF, SVM, LR, DT,