.6 Kết quả so sánh giữa LiSa, Cuckoo và V-Sandbox

Một phần của tài liệu Nghiên cứu xây dựng hệ thống VSandbox trong phân tích và phát hiện mã độc IoT Botnet. (Trang 84 - 97)

STT

Hỡ trợ thư viện liên kết

động Số lượng PID giám sátđược Hành vi mạng được giám sát V-

Sandbox LiSa Cuckoo V-

Sandbox LiSa Cuckoo V-Sandbox LiSa Cuckoo

1 static static static 3 3 3 C&C serverconnected, transfer command requets IP C&C server requets IP C&C server

2 static static static 170 3 3

C&C server connected, transfer command, TCP flooding requets IP C&C server requets IP C&C server

3 3 0 0 1 1 1 Normal Normal Normal

4 1 0 0 1 1 2 Normal Normal Normal

5 static static static 9 3 3

C&C server connected, transfer command, TCP flooding requets IP C&C server requets IP C&C server

6 static static static 6 1 6

C&C server connected, transfer command,

TCP flooding

No pcap IP C&Crequets server

7 2 0 0 1 1 1 Normal Normal Normal

8 static static static 2 1 4 Normal Normal Normal

9 static static static 1 1 1 requets IP C&Cserver No pcap IP C&Crequets server

10 static static static 10 6 1

C&C server connected, transfer command, DDoS attack traffic SYN

scanning scanningSYN

11 3 1 0 10 1 1 C&C server connected, transfer command, DDoS attack traffic

No pcap requests IP C&C server 12 2 1 0 25 1 1 C&C server connected, transfer command, DDoS attack traffic

No pcap requests IP C&C server

Theo kết quả so sánh đã liệt kê ở trên, V-Sandbox được đề xuất với khả năng hỗ trợ nhiều kiến trúc vi xử lý phở biến của thiết bị IoT hạn chế tài nguyên, tạo mơi trường kết nối và giao tiếp với máy chủ C&C, cung cấp các thư viện liên kết động để mã độc IoT Botnet thể hiện nhiều hành vi hơn so với các IoT Sandbox hiện cĩ (tiêu biểu là Cuckoo và LiSa sandbox). Chính các khả năng này đã tạo mơi trường phù hợp cho các mã độc thể hiện nhiều hơn các hành vi của mình so với các mơi trường IoT Sandbox đã cĩ (được minh chứng bằng số liệu tại Bảng 2.6). Các tác tử thu thập các hành vi của mã độc IoT Botnet (như lời gọi hệ thống, luồng mạng, thơng tin chiếm dụng tài nguyên của thiết bị,…) được tự động tích hợp vào các máy ảo với kiến trúc CPU tương ứng. V- Sandbox đã được chứng minh tính hiệu quả thơng qua dataset thử nghiệm. Mã nguồn V- Sandbox được chia sẻ trên Github [100].

Tuy nhiên, để thu thập các yêu cầu về mơi trường và khởi tạo mơi trường Sandbox (SE) phù hợp cho mã độc thể hiện hết các hành vi độc hại, V-Sandbox cần thực hiện lặp lại quá trình thực thi tệp đầu vào khơng chỉ một lần. Do đĩ, thời gian phân tích một tệp tin đầu vào đối với V-Sandbox cĩ thể kéo dài hơn so với các IoT Sandbox khác. Ngồi ra, hiện nay V-Sandbox mới chỉ hỗ trợ các kiến trúc vi xử lý phở biến của thiết bị IoT như MIPS, MIPSEL, ARM, PowerPC, SPARC. Các kiến trúc vi xử lý đặc thù, ít phở biến của thiết bị IoT như SH-4, M68K,… thì V-Sandbox chưa hỗ trợ đầy đủ. Trong tương lai, nghiên cứu sinh sẽ mở rộng khả năng hỗ trợ nhiều kiến trúc vi xử lý hơn, bở sung dữ liệu về các lệnh của máy chủ C&C và các thư viện liên kết động vào cơ sở dữ liệu để nâng cao hiệu quả và giảm thiểu thời gian thực thi của mơi trường sandbox này.

2.4. Kết luận Chương 2

Trong chương này, luận án đã xây dựng được mơi trường V-Sandbox đảm bảo các điều kiện để cĩ thể thu thập đầy đủ dữ liệu hành vi của mã độc IoT Botnet. Mơi trường sandbox được xây dựng hoạt động hồn tồn tự động, mã nguồn mở và cài đặt dễ dàng, cĩ tính thực tiễn.

Ý tưởng và kết quả thực nghiệm của phương pháp đề xuất trong chương này đã được trình bày, cơng bố trên các Tạp chí, Kỷ yếu Hội thảo uy tín trong và ngồi nước. Cụ thể là:

- “V-Sandbox for Dynamic Analysis IoT Botnet,” IEEE Access, vol. 8, pp.

145768–145786, 2020, (SCIE index, Q1), ISSN: 2169-3536, DOI: 10.1109/ACCESS.2020.3014891

- “Xây dựng hệ thống phát hiện mã độc trong thiết bị định tuyến dựa trên mơ phỏng”, Tạp chí “Nghiên cứu Khoa học và Cơng nghệ trong lĩnh vực An tồn thơng

tin” (Journal of Science and Technology on Information security) – Ban cơ yếu chính phủ (1.CS (05) 2017), 2017.

CHƯƠNG 3. ĐẶC TRƯNG ĐỒ THỊ LỜI GỌI HỆ THỐNG CĨ HƯỚNG TRONG PHÁT HIỆN MÃ ĐỘC IOT BOTNET

3.1. Phát biểu bài tốn

3.1.1. Lựa chọn nguờn dữ liệu động phục vụ tiền xử lý và phân tích

Như đã trình bày tại Chương 1, các nguồn dữ liệu động phở biến được các nhà nghiên cứu về mã độc IoT Botnet thu thập bao gồm luồng mạng, chuỗi lời gọi hệ thống và thơng tin chiếm dụng tài nguyên thiết bị của mã độc IoT Botnet. Tuy nhiên, mỗi loại dữ liệu động này cĩ những ưu và nhược điểm riêng trong khả năng phát hiện mã độc IoT Botnet.

Đối với dữ liệu luồng mạng, đã cĩ nhiều nghiên cứu sử dụng loại dữ liệu này để phân tích và phát hiện mã độc Botnet nĩi chung và IoT Botnet nĩi riêng. Tuy nhiên, dữ liệu mạng khả nghi chỉ phát sinh khi mã độc IoT Botnet tiến hành giao tiếp với C&C server hoặc thực hiện hành vi tấn cơng mạng. Chưa kể đến trường hợp mã độc đang ở trạng thái chờ đợi kết nối hoặc kết nối khơng thành cơng tới C&C server thì dữ liệu luồng mạng gần như khơng phát sinh, làm giảm khả năng phát hiện [35, 43]. Đặc biệt, một số loại mã độc Botnet cịn sử dụng một vài kỹ thuật để tránh bị phát hiện qua dữ liệu luồng mạng như sinh giá trị thời gian chờ ngẫu nhiên giữa các lần gửi gĩi tin kết nối đến C&C server, sinh giá trị địa chỉ IP ngẫu nhiên để quét mục tiêu, sử dụng các kênh truyền mã hĩa dữ liệu [95, 101, 102]. Hiện nay, dữ liệu luồng mạng hầu hết được chứng minh tính hiệu quả trong khả năng phát hiện mã độc IoT Botnet tại giai đoạn kết nối, nhận lệnh từ C&C server và thực thi hành vi tấn cơng mạng [35, 43].

Đối với thơng tin chiếm dụng tài nguyên thiết bị, các dữ liệu khả nghi cĩ thể phát sinh ngay từ khi mã độc IoT Botnet tiến hành lây nhiễm vào thiết bị. Các dấu hiệu khả nghi cĩ thể nhận biết như tăng tỉ lệ sử dụng bộ vi xử lý, dung lượng bộ nhớ truy xuất ngẫu nhiên (RAM), truy xuất các tệp tin và thư mục trong hệ thống,… Tuy nhiên, khơng dễ dàng để phân biệt những dữ liệu khả nghi này với những hành vi chiếm dụng tài nguyên thiết bị của các chương trình lành tính khác [38, 44]. Ngồi ra, do đặc điểm hạn chế tài nguyên của thiết bị IoT, cho nên các mã độc IoT Botnet cũng được tối ưu hạn chế sử dụng các tài nguyên này. Vì vậy, những dữ liệu thơng tin chiếm dụng tài nguyên

này thường được sử dụng để kết hợp với các nguồn dữ liệu động khác để tăng khả năng phát hiện chính xác mã độc IoT Botnet.

Trong bài tốn phát hiện mã độc IoT Botnet, khi mà nguồn dữ liệu luồng mạng và thơng tin chiếm dụng tài nguyên thiết bị khơng đạt được được hiệu quả thì các nhà nghiên cứu phải sử dụng nguồn dữ liệu động là “lời gọi hệ thống” [36, 37, 73, 75, 103]. Một trong các sự kiện quan trọng cĩ thể theo dõi để xác định hành vi của mã độc trong phân tích động là các lời gọi hệ thống (System calls). Các lời gọi hệ thống cung cấp phương thức để một chương trình yêu cầu hệ điều hành thực hiện các tác vụ của chương trình [104]. Một system call được gọi theo nhiều cách khác nhau, tùy thuộc vào chức năng được cung cấp bởi bộ vi xử lý. Để thực hiện các hành vi độc hại, mã độc cần sử dụng các chức năng, dịch vụ từ hệ điều hành. Đối với bất kỳ hành động cĩ ý nghĩa độc hại nào, chẳng hạn như tạo thư mục mới, tải tệp thực thi mã độc, tạo tiến trình thực thi, ghi vào RAM hoặc mở kết nối mạng, cần phải tương tác với hệ điều hành (OS) thơng qua lời gọi hệ thống (System call). Do đĩ, để mơ tả đặc điểm hành vi của mã độc, điều quan trọng là phải theo dõi chuỗi các sự kiện lời gọi hệ thống trong quá trình thực thi mã độc. Các họ mã độc khác nhau cĩ các mục tiêu thực thi hành vi độc hại khác nhau, nhưng tất cả các mục tiêu này sẽ được tiết lộ bằng cách kiểm tra các dấu vết lời gọi hệ thống. Để cĩ thể sử dụng nguồn dữ liệu “lời gọi hệ thống” trong phát hiện mã độc IoT Botnet, các nhà nghiên cứu

Với những phân tích nêu trên, trong Chương 3 luận án sẽ đề xuất phương pháp tiền xử lý loại dữ liệu này áp dụng hiệu quả cho bài tốn phát hiện mã độc IoT Botnet.

3.1.2. Bài tốn xây dựng đặc trưng từ lời gọi hệ thống

Với nội dung đã được trình bày ở trên, hạn chế chính của các nghiên cứu sử dụng lời gọi hệ thống để phát hiện mã độc IoT nĩi chung và IoT Botnet nĩi riêng đã được phân tích ở trên bao gồm:

1) Các nghiên cứu sử dụng lời gọi hệ thống hầu hết mới chỉ quan tâm tới đặc trưng tần xuất xuất hiện lời gọi, chưa khai thác hiệu quả đặc trưng tuần tự của lời gọi hệ thống.

2) Các nghiên cứu sử dụng đồ thị trong xử lý chuỗi lời gọi hệ thống của mã độc tồn tại các nhược điểm như vector đặc trưng cĩ số chiều quá lớn, giá trị đặc trưng được

trích xuất từ đồ thị cịn phức tạp để thực hiện phân lớp hiệu quả, độ chính xác khi áp dụng chưa cao, cịn lệ thuộc vào kiến trúc vi xử lý và nền tảng hệ điều hành.

Như vậy, để giải quyết các hạn chế kể trên, bài tốn nghiên cứu của Chương này được phát biểu như sau:

- Cho E là tập hợp gồm n tập tin thực thi được đối với thiết bị IoT hạn chế tài nguyên, ký hiệu là E = {e1, e2, …, en} với �� cĩ thể là mã độc hoặc tệp lành tính.

- Cho � = {���ℎ������, ���ℎ���ℎ��ℎ, ��������, �������, ��ℎ�����, �������} là

tập hợp các đặc trưng trích xuất từ lời gọi hệ thống trong bài tốn phát hiện mã độc IoT Botnet, với mỗi đặc trưng trong tập F sẽ cho ra n đặc trưng tương ứng với mỗi �� � �, cụ thể tồn tại một ánh xạ { : � � → �; � ↦ = � �(�)}. Ví dụ, với đặc trưng ���ℎ������ thì tồn tại tập giá trị đặc trưng ���ℎ������(�) = {�1 ↦ ���ℎ������1 , �2 ↦ ���ℎ������2 , … , �� ↦

���ℎ�������}.

- Cần tìm �����∉ | � ∀�� ∈ , � ∃�� ↦ ������mà �����hiệu quả hơn ��∈ �,

được định lượng bằng các chỉ số đánh giá mơ hình học máy phổ biến trên cùng một tập dữ liệu tương đồng.

Để giải quyết bài tốn nghiên cứu kể trên, nghiên cứu sinh đề xuất đặc trưng đồ thị lời gọi hệ thống cĩ hướng (Directed System Call Graph - DSCG) để cấu trúc hố một cách tuần tự các lời gọi hệ thống thu được từ mơi trường V-Sandbox. Đặc trưng được đề xuất sẽ cĩ độ phức tạp thấp, dễ áp dụng với những thuật tốn học máy đơn giản. Tiếp theo, nghiên cứu sinh trình bày các nội dung mơ tả cụ thể về mơ hình tởng quan và phương pháp trích xuất đặc trưng từ đồ thị lời gọi hệ thống được đề xuất.

3.1.3. Sơ đờ và ý tưởng phương pháp đề xuất

Phương pháp đề xuất bao gồm bốn thành phần chính là: Thu thập lời gọi hệ thống (System Calls Collector - SCC), Sinh đồ thị lời gọi hệ thống cĩ hướng (Directed System Call Graph Generator - DSCGG), Tiền xử lý dữ liệu (Data Preprocessing - DP), Bộ phát hiện mã độc IoT Botnet dựa trên học máy (Machine Learning Detector - MLD). Kiến trúc của phương pháp đề xuất được minh họa như trong Hình 3.1. Quy trình hoạt động của phương pháp phát hiện mã độc IoT Botnet dựa trên đồ thị lời gọi hệ thống DSCG cĩ 4 bước chính tương ứng với các thành phần nêu trên, gồm:

Bước thứ 1, tệp ELF được đưa vào thực thi trong mơi trường Sandbox để thu thập các lời gọi hệ thống được yêu cầu. Mơi trường Sandbox này phải đảm bảo tạo các điều kiện tốt nhất để mã độc IoT Botnet thể hiện nhiều nhất các hành vi cĩ thể. Vì vậy, luận án đã tiến hành khảo sát, đánh giá kết quả thu thập lời gọi hệ thống của các Sandbox cho IoT khác nhau như Cuckoo [46], Detux [54], DroidScope [97], IoTBOX [43], LiSa [51],… và V-Sandbox. Với kết quả khảo sát này, nghiên cứu sinh lựa chọn sử dụng V- Sandbox [105] phục vụ cho mục đích thu thập đầy đủ hành vi tương tác của mã độc IoT Botnet với hệ thống, trong đĩ cĩ lời gọi hệ thống. Tiếp theo, các thơng tin dư thừa khơng cần thiết sẽ bị xĩa khỏi dữ liệu thu thập lời gọi hệ thống thơng qua chức năng tiền xử lý dữ liệu đơn giản. Kết quả của quá trình này là chuỗi lời gọi hệ thống của tệp ELF đầu vào đã được tối giản phục vụ cho mục đích sinh đồ thị lời gọi hệ thống DSCG.

Bước thứ 2, đồ thị lời gọi hệ thống DSCG được xây dựng từ chuỗi lời gọi hệ thống đã thu thập được ở bước 1. Cấu trúc của đồ thị DSCG sẽ được mơ tả dưới dạng ngơn ngữ XML và lưu trữ trong tệp với định dạng “gexf” (Graph Exchange XML Format) để cĩ thể thử nghiệm các thuật tốn nhúng đồ thị khác nhau.

Bước thứ 3, nghiên cứu sinh thực hiện tiền xử lý dữ liệu đồ thị DSCG trước khi đưa vào các bộ học máy phân lớp dữ liệu. Vì việc thực hiện thuật tốn phân loại trên các đồ thị này phức tạp và mất nhiều thời gian, nếu đơn giản chuyển đởi các đồ thị này thành một tập các vectơ (tức là một vectơ cho mỗi đồ thị) để đưa vào học máy. Những đồ thị này trong thực nghiệm cĩ số lượng lớn nút và cạnh, vì vậy số chiều các vectơ chuyển đởi từ đồ thị cũng cĩ kích thước phức tạp tương ứng. Do đĩ, nghiên cứu sinh áp dụng phương pháp nhúng đồ thị (graph embedding) để cĩ thể trích xuất hiệu quả thơng tin các đặc trưng của đồ thị DSCG và giảm chiều của vector này. Điều này được thực hiện nhằm mục đích nâng cao độ chính xác và giảm độ phức tạp khi phát hiện mã độc IoT Botnet.

Bước thứ 4, sau khi trích xuất tập đặc trưng phù hợp, các đặc trưng này được sử dụng để huấn luyện và đánh giá khả năng phát hiện mã độc IoT Botnet dựa trên các thuật tốn học máy phở biến như KNN, SVM, Decision Tree,… Kết quả thử nghiệm đã cho thấy tính hiệu quả của phương pháp trích xuất đặc trưng dữ liệu lời gọi hệ thống mà nghiên cứu sinh đề xuất.

Hình 3.1 Quy trình phương pháp đề xuất phát hiện mã độc IoT Botnet dựa trên DSCG

Các thành phần chính trong quy trình phương pháp đề xuất phát hiện mã độc IoT Botnet dựa trên DSCG được trình bày cụ thể trong các nội dung tiếp theo của luận án.

3.2. Đờ thi lời gọi hệ thống cĩ hướng DSCG

3.2.1. Khái niệm đờ thi lời gọi hệ thống cĩ hướng DSCG

Mơ tả chi tiết phương pháp sinh đồ thị lời gọi hệ thống cĩ hướng (DSCG) được trình bày dưới đây. Đầu tiên, nghiên cứu sinh đưa ra khái niệm về đồ thị lời gọi hệ thống cĩ hướng DSCG như sau:

Khái niệm 2.1. Đồ thị DSCG là một đồ thị cĩ hướng được ký hiệu là GDSC=(V,E) trong đĩ:

- V là tập hợp các đỉnh vi đại diện cho các lời gọi hệ thống cĩ cùng tên (name) và tham số (arguments);

- E là tập hợp các cạnh ek nối từ đỉnh vi tới đỉnh vj của đồ thị, E  V×V, với các vòng lặp thì chỉ tính là một cạnh của đồ thị.

Theo khái niệm này, đồ thị DSCG là đồ thị cĩ hướng, mơ tả thứ tự các lời gọi hệ thống của tệp thực thi được thu thập trong q trình phân tích động. Các đỉnh của đồ thị DSCG đại diện cho các lời gọi hệ thống cĩ cùng tên (name) và tham số (arguments) tương ứng. Việc sử dụng các đỉnh đồ thị biểu diễn tên và tham số của lời gọi hệ thống sẽ làm tăng số lượng đỉnh của của đồ thị so với những đồ thị chỉ sử dụng tên lời gọi hệ

thống. Tuy nhiên, với cách biểu diễn này thì đồ thị DSCG hạn chế được sự mất mát thơng tin quan trọng trong các giá trị tham số truyền vào các lời gọi hệ thống – yếu tố quan trọng để phát hiện hành vi độc hại của mã độc. Để giảm thiểu số lượng cạnh của

Một phần của tài liệu Nghiên cứu xây dựng hệ thống VSandbox trong phân tích và phát hiện mã độc IoT Botnet. (Trang 84 - 97)

Tải bản đầy đủ (DOC)

(143 trang)
w