Dựa trên những ưu điểm và tiềm năng của học máy, đề tài nghiên cứu này sẽ tập trung vào một hướng nghiên cứu mới mẻ và ít được khai thác trong phân loại mã độc, đó là ứng dụng xử lý ngôn
Trang 1ĐẠI HOC QUOC GIA TP HO CHÍ MINH
TRUONG DAI HOC CONG NGHE THONG TIN
KHOA MANG MAY TINH & TRUYEN THONG
NGUYEN TRAN ANH KHA - 20520563
KHOA LUAN TOT NGHIEP
TICH HOP TRINH PHAT HIEN MA DOC BANG NGON
NGU TU NHIEN VAO HE THONG GIAM SAT MANG
Embedding natural language processing based malware detection in
a network monitoring system
CU NHAN NGANH AN TOAN THONG TIN
GIANG VIEN HUONG DAN
TS NGUYEN TAN CAM
TP HO CHÍ MINH, 2024
Trang 2LỜI CẢM ƠN
Luận văn tốt nghiệp là cột mốc quan trọng, đánh dấu cho sự hoàn thành
quá trình học tập ở bậc đại học của mỗi sinh viên Đây là cơ hội quan trọng nhất
cũng như cuối cùng dé sinh viên thé hiện được những kiến thức, kỹ năng và kinh
nghiệm đã được lĩnh hội qua quãng thời gian học tại trường Đối với nhà trường,đây là bài kiểm tra cuối cùng dành cho sinh viên nhằm khăng định chất lượng, uy
tín đào tạo của trường Đối với em, ngoài những điều trên khóa luận còn là bước
đệm quan trọng là minh chứng giúp em chuẩn bị cho công việc khi ra trường
Đề hoàn thành luận văn này là thành quả không chỉ của em mà còn là đónggóp của nhiều cá nhân, tập thé Vì vậy em xin gửi lời tri ân sâu sắc đến tập théthầy cô, giảng viên Trường Đại học Công nghệ Thông tin và khoa Mạng máy tính
và Truyền thông đã luôn tạo điều kiện cũng như chỉ dẫn cho em tong suốt quátrình học tập và đặt biệt là nghiên cứu khóa luận này Ngành Công nghệ Thôngtin nói chung và lĩnh vực An toàn Thông tin nói riêng thì cơ sở vật chất nghiêncứu đóng vai trò thiết yêu trong quá trình tiếp thu và học hỏi Cảm ơn Trường Đạihọc Công nghệ Thông tin đã cung cấp những tài nguyên và cơ sơ vật chất tốt nhấtđến sinh viên, đảm bảo đào tạo các thế hệ sinh viên ưu tú và dẫn đầu xu hướngcông nghệ thông tin trong thơi điểm hiện tại
Em xin gửi sự biết ơn đặc biệt đến giảng viên hướng dẫn thực hiện đề tàikhóa luận này: TS Nguyễn Tan Cam Thay đã giúp em định hướng được đề tàinghiên cứu đúng đắn cho bản thân em Đề tài khóa luận này sẽ không thể hoànthành nếu không có sự chỉ dẫn nhiệt tình cũng như những lời khuyên quý báu từthầy Vì vậy sự biết ơn này đối với em không thể diễn tả hết bằng lời được
Em xin kết thúc những tri ân tại đây đề đi vào nội dung đã nghiên cứu trong những trang luận văn tiếp theo.
Trang 3MỤC LỤC
LOT CAM ON 0 I
DANH 800/96: —- ) ,ÔỎ Il
DANH MỤC TỪ VIET TẮTT -cc©+tttttt2222222EEEEEEE A2222222E 22222222222i rrre IV
Chương 1._ MỞ ĐẦU :.eeccSEti.2EEEEEEEEEEEEEEEEEEEEEEETiiEEEtrrrrrrrrrrrrrrre 2
1.1 _ Tổng quan về khóa luận -+ s++ee2treettrreetrrrvrrrrrrrrrrrrrrrrrre 2
1.1.1 Khởi đầu của đề tài vvecceerrrrierrrrrrrririrrrrrrrrrrrre 2 1.1.2 Mục tiêu của đề tài e cccssccrkeirrrkrirrrkrrrrrkrrrrrrrrrrrrrrkrrrrreesrie 4 1.2 Đối tượng, phạm vi nghiên cứu của đề tài -cccccccscccccceee 5
1.2.1 _ Đối tượng nghiên cứu -::cecccerrireeeverrrrrrreerrrrrrrerrrrrrrerrer 5
1.2.2 Phạm vi nghiên CỨU e cc-555<5++SSEkE+kstkkttrrttkirtrrirrirrkirrrkerrri 6
Chương 2 TONG QUAN VỀ ĐỀ TÀI - -2:-:cecetieeEEEEreetEtrrreerrrreerrrrreee 8
2.1 Hướng nghiên cứu học máy , xử lý ngôn ngữ tự nhiên ‹ 8
RRC Af | 8
2.1.2 Ưu điểm của xử lý ngôn ngữ tự nhiên -css cssree 10
2.2 Cac công trình nghiên cứu liÊn quan s ee©szvss+eeseersssersrsvsee 10
2.2.1 Nghiên cứu sử dụng mô hình HMM & K-mean cluster 10
2.2.2 Nghiên cứu sử dụng mô hình Word Embedding — LSTM 122.2.3 Nghiên cứu kết hợp mô hình HMM với các mô hình máy hoc 14
2.3 Định hướng sử dụng xử lý ngôn ngữ tự nhiên -c«ecccceee 142.4 Định hướng mô hình hệ thống giám sát -+ccse+cccesrree 16
Chương 3 CO’ SỞ LÝ THUYẾT VÀ CÔNG NGHỆ UNG DỤNG 18
3.1 Lý thuyết xử lý ngôn ngữ tự nhiên -ss++eestrecetrrrerrrrrrrre 18
3.1.1 Mô hình xử lý ngôn ngữ tự nhiên Hidden Markov Model 18
3.1.2 Cac mô hình xử lý ngôn ngữ tự nhiên khác -«+ 21
Trang 43.2 Lý thuyết máy học trong phân loại mã độc : ccce:rrrrccccrrrre 22
3.2.1 M6 hình Random FFOF€S( -s -s-5s<ccxserxsrrrrrerrrerrerrxrrresrrerrrerrree 22
3.2.2 Cac mô hình máy học khác ‹« s«ecxtxtxerrreertkterkrrtrerrrieirrkee 24
3.3 Céng nghé ELK on 25
3.3.1 ElastiCsearch -«cc.creerrirkirtrirtrirkiiiriiriiiiiirrrirkrrrrerrree 26 3.3.2 Kibana HH et 29 3.3.3 An toàn thông tin trong hệ thống ELK -cs 30 Chương 4 NGHIÊN CỨU VÀ TRIỂN KHAI THỰC NGHIỆM 33
4.1 _ Dữ liệu thực nghiỆm -ccsrxsersrrrtrrrtrtsrrkerrrrrrtrrrtrrrrrrrkrrrerrke 33 4.1.1 Dafaset( HH 33 4.1.2 Opcode sedQU€InC€ cc«ccctrtrththh HH gưg 34 4.2 _ Thiết lập thực nghiệm Mô hình phân tích mã độc - 36
4.2.1 MG hình đề xuất -c cccccccireerrrrrrriiiiiirririirrrree 36 4.2.2 Tài nguyên phần cứng, phần mềm -+-ccs+trzccetrree 36 4.2.3 Thực nghiệm huấn luyện dit liệu với mô hình HMM 37
4.2.4 Xử lý đệm giữa hai mô hình: thiết lập đầu vào của mô hình RE 39
4.2.5 _ Thực nghiệp phân loại mã độc bằng mô hình RF 39
4.3 Thiết lập thực nghiệm hệ thống SIEM -cccc:crrcceecerrrreeeerr 41 4.3.1 Thực nghiệm khối phân tích mã độc hoàn chỉnh 41
4.3.2 Thực nghiệm xây dựng hệ thống SIEM - 43
Chương 5 KET QUA DANH GIÁ VÀ BAN LUẬN VỀ KẾT QUẢ 50
5.1 Két quả - đánh giá mô hình phân loại mã độc - .- 50
5.1.1 Đánh giá kết quả -ccccccrccccrveeerreerrrrtrerrrrrrrrrrrrrrrrrre 50 5.1.2 So sánh kết quả với các nghiên cứu liên quan - 53
Trang 55.2 Két quả - đánh giá mô hình
SIEM -Chương 6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CUA DE TÀI
6.1 Kết luận -ccccvveeeerrrrrrrrrrrrrrrrrrrrree
6.2 Hướng phát triển của đề tài cc ee
Trang 6DANH MỤC HÌNH
Hình 2-1 Mô hình phân loại theo nhóm cÌÏUSf@TF -scc«cccerxeeresererrerree 11
Hình 2-2: Mô hình xử lý của nghiên cứu với Word Embedding — LSTM 13 Hình 3-1 Mô hình Markov chain -e-cscxererrertrrirtrtiirtrriirriirrriirrrrre 19
Hình 3-2 Ví dụ một cây quyết định đơn giản minh họa xác định mã độc 23
Hình 4-1 Phân bố các mẫu trong dataset - s2++cssreestrrzerrreerrrrrrrre 33
Hình 4-2 Mô hình đề xuất phân loại mã độc cc ccseccccccverrerrver 36
Hình 4-3 Kết quả đưa mô hình đề xuất thành khối phân loại dữ mã độc 42Hình 4-4 Mô tả hệ thống SIEM đề xuất -ccccsirreccvvrtrrrerrvrrrrrrrrrrrrre 43Hình 4-5 Cấu hình bộ chứng chỉ và khóa cho elasticsearch 44
Hình 4-6 Cấu hình chứng chỉ và khóa cho kibana -.cc -ccc-ccccceecre 44 Hình 4-7 Thêm chứng chỉ vào trình duyỆt .e «ce5ccerekxerrreerrrerrrree 45
Hình 4-8 Nội dung chứng chỉ CA để xác thực serVer -ccccccrrrcecccrrrre 47Hình 4-9 Kết nối khối phân loại mã độc bằng API key .-cc-e:s: 48
Hình 4-10 Dữ liệu phân tích được gửi thành công đến máy chủ Elasticsearch +8
Hình 5-1 Nội dung các thông số kết quả của mô hình HMM-RE 50 s0000:8.120)/(-8ux:009000015000077 757 7 52
Hình 5-3 Ma trận Confusion được chuẩn hóa ccccecccceeerrcersesrrersessrrrrxee 52
Hình 5-4 Kết quả cuối của khóa luận -ccccxvvveeeeeitrrrrrrrrirrrrrrrrrree 54
Trang 7DANH MỤC BANG
Bảng 4-1 Cấu hình phần cứng - c-vceccccvveetrrrtrtrtrrrrrtrrrririrrrrrirrrrrrrrrrrrrrer 37 Bảng 4-2 Cấu hình phần mềm -ccece+eeettrEEEEEkkiirrrrrrrirrriiirrrrrree 37
Bang 4-3 Các đối tượng Grid Search của mô hình Random Forest 39
Bảng 5-1 So sánh các nghiÊn COU sescsssecsssecssecsssessseesssecsseecssessseessseessseesseessusesseeesseessseessseess 53
Trang 8DANH MỤC TỪ VIẾT TẮT
Từ viết tắt Y nghĩa
AI Artificial Intelligence
ANN Artificial Neural Network
API Application Programming Interface
BoW Bag of Words
CA Certificate Authority
CNN Convolutional Neural Network
CPU Central Processing Unit
CSR Certificate Signing Request
ELK Elasticsearch, Logstash, Kibana
GCC GNU Compiler Collection
HMM Hidden Markov Model
HTTP HyperText Transfer Protocol
loT Internet of Things
JSON JavaScript Object Notation
LDAP Lightweight Directory Access Protocol
LSTM Long Short-Term Memory
MinGW Minimalist GNU for Windows
ML Machine Learning
NLP Natural Language Processing
NoSQL Not Only Structured query language
Trang 9PE Portable Executable
RAID Redundant Array of Independent Disks
RAM Random Access Memory
RF Random Forest
RNN Recurrent Neural Network
SIEM Security Information and Event Management
SVN Support vector machine
TF-IDF Term Frequency-Inverse Document Frequency
TLS/SSL Transport Layer Security/Secure Sockets Layer
Trang 10TOM TAT KHÓA LUẬN
Trong các bài toán về phát hiện, phân loại mã độc các giải pháp về học máy
đã được khai thác và nghiên cứu trong thời gian dài Rất nhiều những thành tự đạtđược, các nghiên cứu về sử dụng các mô hình học máy dé nhận diện mã độc hay cóbước tiến xa hơn là các mô hình học sâu có khả năng tự cải tiễn hiện có rất nhiều.Tuy nhiên khía cạnh này chưa có dấu hiệu bão hòa hay dừng lại mà ngày càng đượccải tiễn, nâng cao và đạt được nhiều thành quả kinh ngạc Hướng tiếp cận sử dụngcác mô hình xử lý ngôn ngữ tự nhiên (NLP) cũng không quá xa lạ Bài luận này cũngvậy, khai thác chủ đề áp dụng xử lý ngôn ngữ tự nhiên vào bài toán phân loại mã độc
cụ thê hơn ở đối tượng là các tập tin Portable Executable (PE) Nghiên cứu trong bàiluận này tập trung khai thác mô hình xử lý ngôn ngữ tự nhiên Hidden Markov cụ théhơn là hướng tiếp cận sử dụng mới đối với mô hình này Nghiên cứu sẽ tập trung vàotriển khai một mô hình phân loại mã độc hiệu qua dé so sánh với các phương pháptruyền thống
Bài luận còn mục tiêu chính thứ hai là phát triển mô hình phân loại mã độc đó
dé ứng dụng vào thực tế như các chương trình Anti Virus hiện nay Và tích hợp vàomột hệ thống giải pháp quản lý sự kiên và bảo mật (SIEM) một giải pháp được nhiềudoanh nghiệp hướng đến hiện nay
Sau bài luận này hy vọng nghiên cứu về mô hình xử lý ngôn ngữ tự nhiên sẽ
khang định được tính mạnh mẽ và cần thiết trong bài toán phân loại mã độc nói riêng cũng nhưng lĩnh vực an toàn thông tin nói chung sẽ có chỗ cho những nghiên cứu về
xử lý ngôn ngữ tự nhiên Ngoài ra việc áp dụng triển khai các mô hình nghiên cứuđược vào các hệ thống, giải pháp an toàn thông tin cũng hy vọng sẽ ngày càng phát
trién.
Trang 11Chương 1 MỞ ĐẦU
1.1 Tổng quan về khóa luận
Khóa luận được chọn chủ đề thông qua các tiêu chí: Nội dung phù hợp, được cập nhật theo khuynh hướng phát triển của lĩnh vực an toàn thông tin
hiện tại, có tính thực tiễn và nghiên cứu, có yêu cầu về mặt kiến thức phù hợp
với tiêu chuẩn đại học Vì vậy khóa luận cũng như đề cương khóa luận này đã
được chọn lọc và chỉnh sửa kỹ càng bởi TS Nguyễn Tấn Cầm - Giảng viên
hướng dẫn khóa luận.
1.1.1 Khởi đầu của đề tài
và ngày càng phát triển, các ví dụ phó biến hiện nay có thê kê đến như: virus, trojan
horse, worm, spyware, ransomware, adware Mỗi loại có cách thức hoạt động và tác
hại riêng, nhưng đều tiềm an nguy cơ cao cho hệ thống máy tính Theo thống kê năm
2023, tong số cuộc tan công bằng phần mềm độc hại trên toàn thé giới đã lên tới 6,06
tỷ, tăng 10% so với năm trước đó Số liệu được tổng hợp bởi nén tang Statista là một
nền tảng trực tuyến của Đức chuyên thu thập và trực quan hóa dit liệu Cũng theo
Statista, trong năm 2023, lĩnh vực san xuất ghi nhận tỷ lệ tấn công mạng cao nhất
trong số các ngành công nghiệp hàng đầu trên toàn thế giới Trong năm được khảosát, các công ty sản xuất phải đối mặt với gần một phan tư tổng số các cuộc tan côngmạng Theo sau là các tổ chức tài chính và bảo hiểm, chiếm khoảng 18% Dịch vụ
Trang 12chuyên nghiệp, doanh nghiệp và tiêu dùng đứng thứ ba, với 15,4% các cuộc tân côngmạng được thống kê.
Vì vậy yêu cầu phát hiện, phân tích mã độc luôn song hành với sự phát triển
của lĩnh vực an toàn thông tin Phân tích mã độc có thê được thực hiện bằng nhiều kỹ
thuật khác nhau, chia làm hai loại chính [11]: phân tích tĩnh va phân tích động Trong
khi phân tích tĩnh mã độc dựa vào việc kiểm tra mã nguồn hoặc mã biên dịch của
chương trình mà không cần chạy nó, phân tích động thực hiện bằng cách chạy mãđộc trong một môi trường kiểm soát dé quan sát hành vi của nó Luận văn tập trungnghiên cứu về phương hướng phân tích tĩnh để đáp ứng các yêu cầu về an toàn cũngnhư thời gian phân tích khi áp dụng vào một hệ thống phát hiện mã độc Các kỹ thuậtdựa trên chữ ký (signature-based techniques) là phương pháp thường được sử dụngbởi các phần mềm diệt virus Kiểm tra dựa trên chữ ký liên quan đến việc hệ thốngbảo mật tạo ra các chữ ký cho các mẫu mã độc hại được quan sát thấy trong các tệptin phan mềm, do đó các ứng dụng AV có thé quét phần mềm độc hại một cách hiệuquả Chiến lược này tập trung vào các mẫu phần mềm độc hại riêng lẻ hoặc theo nhóm
nhỏ và hoạt động hiệu quả đối với các phần mềm độc hại truyền thống.Tuy nhiên,
quét dựa trên chữ ký có những hạn chế đáng kẻ, vì nó chỉ có thé đối phó với các mẫuphần mềm độc hai đã biết và nhiều kỹ thuật làm rối mã nguồn (code obfuscation) đãđược phát triển dé đánh lừa quá trình quét chữ ký: chèn mã chết (dead code insertion),gán lại thanh ghi (register reassignment), thay thé lệnh (instruction substitution) vàthao tác mã (code manipulation) là một số ví dụ về kỹ thuật làm rối mã Kết quả là,một tỷ lệ lớn phần mềm độc hại hiện đại có thé trốn tránh việc phát hiện dựa trên chữ
ký Hơn nữa, việc trích xuất chữ ký cho việc phát hiện phần mềm độc hại dựa trênchữ ký đòi hỏi nhiều thời gian và công sức Một lựa chọn thay thế cho quét dựa trênchữ ký là phân tích heuristic.Tuy nhiên, phân tích heuristic cũng có những hạn chếriêng, vì các quy tắc heuristic (heuristics) phải được tinh chỉnh cần thận dé có thê xácđịnh các mối đe dọa mới nổi một cách tốt nhất, đồng thời tránh tạo ra quá nhiều kếtquả dương tính gia (false positives).
Trang 131.1.1.2 Lý do chọn chủ đề của đề tài
Học máy ngày càng trở thành một xu hướng nghiên cứu và ứng dụng phô biến
trong nhiều lĩnh vực, bao gồm cả phân loại mã độc So với các phương pháp truyền
thống, học máy mang đến nhiều ưu điểm vượt trội, hứa hẹn khắc phục những hạn chế
và nâng cao hiệu quả phân loại mã độc Ưu điểm của học máy trong phân loại mãđộc:
Đa dạng mô hình học máy: Các mô hình học máy được sử dụng trong phânloại mã độc trải dài từ các mô hình học cô điển đến các mô hình học sâu hiện đại, baogồm: mạng nơ-ron nhân tạo (ANN), máy học vectơ hỗ trợ (SVM), cây ngẫu nhiên
(Random Forest), mạng nơ-ron tích chập (CNN), mạng nơ-ron hồi quy (RNN), v.v
Đa dạng đối tượng phân tích: Học máy có thé được áp dụng cho nhiều đốitượng phân tích khác nhau trong phân loại mã độc, bao gồm: opcode, n-gram (phân
tích tinh), API call (phân tích động), v.v
Hiệu suất cao và độ phức tạp tính toán phù hợp: Các mô hình phân tích tĩnh dựa trênhọc máy có khả năng trích xuất đối tượng hiệu quả với độ phức tạp tính toán phù hợp,cho phép áp dụng rộng rãi trong thực tế
Kha năng chống nhiễu tốt và độ tin cậy cao: Các mô hình học máy sử dụngphân tích động có khả năng chống lại các kỹ thuật rồi mã (code obfuscation) tốt hơn
và mang lại độ tin cậy cao hơn trong phân loại mã độc.
Dựa trên những ưu điểm và tiềm năng của học máy, đề tài nghiên cứu này sẽ tập trung vào một hướng nghiên cứu mới mẻ và ít được khai thác trong phân loại mã độc, đó là ứng dụng xử lý ngôn ngữ tự nhiên (NLP) trong lĩnh vực phân tích tĩnh.
1.1.2 Mục tiêu của đề tài
Các mô hình máy học sử dụng kỹ thuật xử lý ngôn ngữ tự nhiên (NLP)[13] thường có những ưu điêm sau:
Trang 14Khả năng khai thác thông tin ngữ nghĩa: NLP có khả năng khai thác thông tinngữ nghĩa từ mã nguồn, giúp mô hình học máy hiểu rõ hơn về hành vi và ý đồ của
mã độc.
Tiềm năng nâng cao độ chính xác: Việc kết hợp NLP với các kỹ thuật phân
tích tĩnh truyền thống có thé giúp nâng cao độ chính xác và hiệu quả trong phân loại
mã độc.
Mở ra hướng nghiên cứu mới: Việc ứng dụng NLP trong phân loại mã độc là
một hướng nghiên cứu mới mẻ, tiềm năng mở ra nhiều cơ hội khám phá và phát triểncác phương pháp phân loại mã độc hiệu quả hơn.
Vì vậy mục tiêu của dé tài gồm xác định và phát triển mô hình xử lý ngôn ngữ
tự nhiên hiệu quả, tối ưu trong việc phân tích tĩnh mã độc gồm các bước: Đánh giá
và so sánh các mô hình NLP khác nhau, bao gom mô hình học cổ điển, hoc sâu vacác mô hình kết hợp Lựa chọn và tối ưu hóa mô hình NLP phù hợp nhất cho nhiệm
vụ phân loại mã độc tĩnh Phân tích và đánh giá hiệu suất của mô hình NLP được pháttriển
Mục tiêu tiếp theo là sử dụng mô hình phân tích mã độc để tích hợp vào
một hệ thống quản lý an toàn thông tin SIEM [9] tự vận hành gồm các yêu cầu: Thiết kế kiến trúc hệ thống SIEM tự vận hành sử dụng ELK stack Phát triển
mô-đun tích hợp mô hình phân loại mã độc vào hệ thống SIEM Đánh giá và tối
ưu hóa hiệu suất của hệ thống SIEM tích hợp mô hình phân loại mã độc.
1.2 Đối tượng, phạm vi nghiên cứu của đề tài.
1.2.1 Đối tượng nghiên cứu
Các đối tượng của nghiên cứu bao gồm:
Phương pháp học máy
Phương pháp xử lý ngôn ngữ tự nhiên
Công nghệ mô hình SIEM
Trang 15Bảo mật trong hệ thống SIEM
1.2.2 Pham vi nghiên cứu
Phạm vi nghiên cứu của khóa luận gồm:
Tìm hiểu cấu trúc của đối tượng cần phân loại mã độc: File thực thi PE gồm
cấu trúc, hoạt động và các phương thức mã độc được đưa vào đối tượng Nghiên
cứu câu trúc thực thi của mã độc.
Tìm hiểu về các phương thức, mô hình học máy Nắm vững nguyên lý, thuậttoán hoạt động của mô hình Phương pháp xử lý ngôn ngữ tự nhiên cần được làm rõnguyên lý lý thuyết, cơ sở áp dụng vào phân tích mã độc của mô hình xử lý ngôn
Triển khai xây dựng mô hình quản lý tập tin/ phát hiện mã độc trong hệ
thống với lõi thực thi là mô hình máy học đã được chọn ở trên Đảm bảo tính an
toàn trong kết nối của hệ thống, quyền hạn và tính toàn vẹn của thông tin
1.3 Cấu trúc của khóa luận:
Nội dung tóm tắt của khóa luận như sau:
Chương mở đầu: giới thiệu bối cảnh, yêu cầu trong việc phân loại mã độc vàtính áp dụng vào thực tế Nêu lý do của đề tài, tính mới và đột phá so với các nghiêncứu hiện tại Nêu cụ thê đối tượng và phạm vi của nghiên cứu
Chương hai: Khái quát về ứng dụng của học máy đối với lĩnh vực an toànthông tin Nêu ra các thành quả nghiên cứu cụ thé là mảng xác định, phân loại mãđộc Rút ra các ưu, nhược điểm từ đó xác định được phương hướng của nghiên cứu
là xử dụng mô hình học máy theo hướng xử lý ngôn ngữ tự nhiên.
Trang 16Chương ba: Cơ sở về lý thuyết của toàn bộ nghiên cứu Gồm có phân tích chỉtiết về: đối tượng nghiên cứu, các mô hình áp dụng, thuật toán cũng như các côngnghệ hiện nay được tích hợp trong kết quả của khóa luận.
Chương bốn: Chi tiết toàn bộ quá trình triển khai của khóa luận từ lý thuyết
Nội dung chương có hai phần chính là hai quá trình khác nhau gồm: xác định, đào
tạo mô hình xử lý ngôn ngữ tự nhiên cũng như kết hợp với các phương pháp học máy
để xác định một phương pháp phân loại có kết quả thỏa mãn các yêu cầu tốt nhất.Phần thứ hai là chỉ tiết quá trình triển khai phương thức phân loại trên vào một môhình hệ thống giám sát các ứng dụng được cài đặt và phân loại chúng
Chương năm và sáu: Trinh bày kết quả gồm đánh giá và bàn luận tính đúngdan và hiệu quả của nghiên cứu, từ đó đê xuât hướng phát triên tiép theo của đê tai.Phần cuối của khóa luận: hệ thống tài liệu tham khảo, trích dẫn và phụ chương
Trang 17Chương 2 TONG QUAN VE DE TÀI
2.1 Hướng nghiên cứu hoc máy , xử lý ngôn ngữ tự nhiên
Học máy đóng vai trò quan trọng trong việc phân loại mã độc nhờ khả nănghọc hỏi từ dữ liệu và tự động hóa quá trình phân tích Các mô hình học máy có thểđược sử dụng dé trích xuất các đặc trưng từ mã độc, phân biệt mã độc với mã lànhtính, và dự đoán hành vi của mã độc.
2.1.1 Tính chất
2.1.1.1 Mô Hình Xử Lý Học Máy
Mô hình xử lý học máy (Machine Learning - ML) là các hệ thống sử dụng cácthuật toán và kỹ thuật thống kê để cho phép máy tính học từ đữ liệu và đưa ra dự đoánhoặc quyết định mà không cần được lập trình rõ ràng cho từng nhiệm vụ cụ thể Cáctính chất chính của mô hình học máy bao gồm:
e Tự học và cải thiện: Mô hình học máy có khả năng học từ dữ liệu đầu vào và
cải thiện hiệu suất dựa trên kinh nghiệm tích lũy Điều này giúp các mô hình
có thê tối ưu hóa và thích nghỉ với các thay đồi trong dữ liệu
e_ Đa dạng phương pháp: Có nhiều phương pháp hoc máy khác nhau, như học
có giám sát (supervised learning), học không giám sát (unsupervised learning),
và học tăng cường (reinforcement learning), mỗi phương pháp có ứng dụng và
ưu điểm riêng
e Khả năng xử lý dữ liệu lớn: Mô hình học máy có thể xử lý va phân tích khối
lượng dữ liệu lớn và phức tạp, từ đó rút ra các thông tin hữu ích và phát hiện
các mẫu (patterns) ân trong dữ liệu
e Dy đoán và phân loại: Một trong những ứng dụng chính của học máy là dự
đoán kết quả dựa trên dữ liệu mới hoặc phân loại dữ liệu vào các nhóm khácnhau, như phân loại email spam, dự đoán thị trường chứng khoán, hoặc nhận
dạng hình ảnh.
Trang 182.1.1.2 Mô Hình Xử Lý Ngôn Ngữ Tự Nhiên
Mô hình xử lý ngôn ngữ tự nhiên (Natural Language Processing - NLP) là một
nhánh của trí tuệ nhân tao (AI) tập trung vào việc tương tac giữa máy tinh và ngôn
ngữ tự nhiên của con người Các tính chất chính của mô hình xử lý ngôn ngữ tự nhiên
bao gôm:
e Hiểu và tạo ngôn ngữ tự nhiên: Mô hình NLP có khả năng hiểu ngôn ngữ tự
nhiên của con người và tạo ra văn bản tự nhiên, giúp các hệ thong AI có thégiao tiếp và tương tác với người dùng một cách hiệu quả hơn
e Trích xuất thông tin ngữ nghĩa: NLP có khả năng khai thác thông tin ngữ nghĩa
từ văn bản, giúp hiểu rõ hơn về ý nghĩa, ngữ cảnh, và ý đồ của người dùnghoặc tài liệu Điều này rất hữu ích trong việc phân tích văn bản, tìm kiếm thôngtin, và dịch ngôn ngữ tự động.
e Xử lý ngữ pháp và cú pháp: Mô hình NLP có thé phân tích cấu trúc ngữ pháp
và cú pháp của câu, từ đó hiểu rõ hơn về cấu trúc và ý nghĩa của văn bản Các
kỹ thuật này bao gồm phân tích từ vựng, tách từ, nhận dạng thực thẻ, và phântích cú pháp.
e Cải thiện tương tác người và máy: Ứng dung NLP giúp cải thiện tương tác
giữa người va máy, như trong các trợ lý ao (virtual assistants), chatbot, và các
hệ thống hỏi đáp tự động, làm cho trải nghiệm người dùng trở nên tự nhiên vàthân thiện hơn.
2.1.1.3 Kết Hợp Mô Hình Hoc Máy và Xử Lý Ngôn Ngữ Tự Nhiên
Sự kết hợp mô hình học máy (Machine Learning - ML) và xử lý ngôn ngữ tự
nhiên (Natural Language Processing - NLP) trong phân loại mã độc mang lại nhiềulợi ích đáng kể, góp phan nâng cao hiệu quả và độ chính xác trong việc phát hiện và
phân loại mã độc Mô hình học máy có khả năng học từ dữ liệu và cải thiện hiệu suất
dựa trên kinh nghiệm, trong khi NLP giúp khai thác thông tin ngữ nghĩa từ mã nguồn,giúp hiểu rõ hơn về hành vi và ý đồ của mã độc Sự kết hợp này cho phép mô hình
học máy không chỉ dựa vào các đặc trưng kỹ thuật mà còn hiểu được ngữ cảnh và câu
Trang 19trúc ngữ nghĩa của mã độc, từ đó phân biệt được mã độc thật với mã lành tính, ngay
cả khi mã độc đã được che giấu bang các kỹ thuật rỗi mã (code obfuscation) Nhờ đó,việc phát hiện và phân loại mã độc trở nên chính xác và hiệu quả hơn, giảm thiêu rủi
ro cho hệ thống và người dùng
2.1.2 Ưu điểm của xử lý ngôn ngữ tự nhiên
Khai thác thông tin ngữ nghĩa: NLP giúp khai thác thông tin ngữ nghĩa từ mã
nguôn, giúp mô hình học máy hiéu rõ hơn về hành vi và ý đô của mã độc.
Nâng cao độ chính xác: Việc kết hợp NLP với các kỹ thuật Học máy truyềnthống có thé giúp nâng cao độ chính xác và hiệu quả trong phân loại mã độc
Khả năng chống nhiễu tốt: NLP có thé giúp mô hình học máy phân biệt được
mã độc thật với các mã lành tính, ngay cả khi mã độc đã được che giấu bằng các kỹthuật rỗi mã (code obfuscation)
2.2 Các công trình nghiên cứu liên quan
Ở thời điểm hiện tại các đóng góp về hướng sử dụng mô hình xử lý ngôn ngữ
tự nhiên trong lĩnh vực an toàn thông tin nói riêng và phân loại mã độc nói riêng
còn hạn chế về mặt số lượng Tuy nhiên điều đó không đồng nghĩa với sự kém hiệuquả của định hướng áp dụng kỹ thuật xử lý ngôn ngữ tự nhiên Đã có một số nghiêncứu mang lại đóng góp khả quan và hiệu quả đáng kê
2.2.1 Nghiên cứu sử dụng mô hình HMM & K-mean cluster
Nhóm nghiên cứu gồm: Chinmayee Annachhatre - Thomas H Austin - MarkStamp đã đề xuất một hướng giải quyết bài toán phân loại mã độc có ứng dụng kỹthuật xử lý ngôn ngữ tự nhiên, cụ thé là mô hình Hidden Markov Dataset của nghiên
cứu được lay từ project Malicia [23] Mô hình HMM được huấn luyện trên opcodeđược trích xuất thông qua các compliers khác nhau gồm (GCC, MinGW, TurboC và
Clang) Nghiên cứu sử dụng hệ thống phân loại gồm ba nhóm mã độc ( winwebsec,
zbot và zeroaccess).
Các bước của nghiên cứu được thực hiện tóm tat như sau:
10
Trang 20Sử Dung Mô Hình Hidden Markov (HMMs): Các nhà nghiên cứu đã sử dụng môhình Hidden Markov (HMMs) được huấn luyện trên các opcode được tạo ra từ cáctrình biên dịch và các công cụ tạo mã độc khác nhau để đánh giá hơn 8,000 mẫu mãđộc Sau đó, họ sử dụng phương pháp k-means clustering để nhóm các mẫu mã độcdựa trên điểm số HMM của chúng.
Kết quả K-mean cluster: Kết quả phân cụm cho thấy phương pháp dựa trên
HMM có kha năng tách các mẫu mã độc thành các nhóm có ý nghĩa, du rang các môhìnhHMMs không được huấn luyện trên các họ mã độc cụ thé trong tap dữ liệu Ba
họ mã độc chính (Winwebsec, Zbot, và Zeroaccess) phần lớn được tách ra thành các
cụm riêng biệt.
Hiệu Quả của Sử Dụng HMM Scores: Các nhà nghiên cứu phát hiện rằng việc
sử dụng tất cả 7 điểm số HMM làm đầu vào cho k-means clustering thường mang lạikết quả tốt nhất, với độ chính xác của cụm vượt quá 0.82 cho 6 hoặc nhiều cụm hơn.Điều này cho thấy phân tích dựa trên HMM đã có thé nắm bắt hiệu quả các sự tươngđồng và khác biệt cơ bản giữa các mẫu mã độc, cho phép chúng được tự động nhómvào các họ tương ứng của chúng.
Hình 2-1 Mô hình phân loại theo nhóm clusterKết Quả và Phân Tích: Dựa trên các chỉ số trên, các nhà nghiên cứu đã tiếnhành phân tích và đánh giá chất lượng của các cụm mã độc:
Hệ Số Silhouette: Các cụm được hình thành từ phương pháp HMM kết hợp
với k-means cho thấy hệ số silhouette cao, cho thay răng các mẫu trong một cụm rat
11
Trang 21gần nhau và cách biệt rõ ràng với các cụm khác Điều này chứng tỏ phương pháp tiếpcận cua họ có hiệu quả trong việc nhóm các mau tương tự lại với nhau.
Độ Thuan Khiết của Cụm: Độ thuần khiết của các cum cũng rất cao, với độ
thuần khiết vượt quá 0.82 cho 6 hoặc nhiều cụm hơn Điều này chứng tỏ rằng cácmẫu mã độc trong mỗi cụm phần lớn thuộc về cùng một họ mã độc, minh chứng cho
khả năng của phương pháp trong việc phân biệt và nhóm các mẫu mã độc dựa trên
các đặc điêm chung của chúng.
Kết Luận: Các nhà nghiên cứu đã thành công trong việc sử dụng mô hìnhHidden Markov kết hợp với k-means clustering dé phân loại và nhóm các mẫu mãđộc một cách hiệu quả Sử dụng các chỉ số như hệ số silhouette và độ tinh khiết củacụm, họ đã chứng minh rằng phương pháp của mình không chỉ có khả năng phân cụm
chính xác mà còn giữ được sự đồng nhất cao trong các cụm, giúp nhận diện các họ
mã độc một cách rõ ràng và hiệu quả Điều này mở ra tiềm năng cho việc áp dụng
rộng rãi phương pháp này trong các hệ thống bảo mật và phát hiện mã độc tự động
2.2.2 Nghiên cứu sử dụng mô hình Word Embedding — LSTM
Ngoài sử dụng mô hình HMM, tác giả Renjie Lu [8] thực hiện một bài báo cụthé về phương thức Word Embedding trong xác định mã độc Bài báo này đề xuất
một phương pháp mới và hiệu quả cho phân tích mã độc tĩnh, mô hình hóa mã độc
như một ngôn ngữ và sử dụng các kỹ thuật từ xử lý ngôn ngữ tự nhiên (NLP) nhưnhúng từ (word embedding) và mô hình LSTM để tự động học các mẫu chuỗi opcodecủa mã độc Ý tưởng chính là tìm ra điểm tương đồng giữa các chuỗi opcode của mã
độc và ngôn ngữ tự nhiên, trong đó các opcode được coi như "từ" và các chuỗi opcode
như "cau" đại diện cho logic thực thi của chương trình.
Phương pháp đề xuất bao gồm hai giai đoạn chính: xử lý dữ liệu và mô hình
Giai Doan Xử Ly Dữ Liệu: Các tệp tin thực thi được dịch ngược sử dung công
cụ IDA Pro dé thu được các tệp định dạng assembly Sau đó, một thuật toán được
12
Trang 22phát triển để trích xuất các chuỗi opcode từ các tệp assembly, lọc bỏ các opcodekhông có ý nghĩa.
Giai Đoạn Mô Hình Hóa: Các kỹ thuật nhúng từ như CBOW được sử dụng dé
học các biểu diễn vector đặc trưng của các opcode, nắm bắt mối quan hệ ngữ nghĩa
của chúng Tiếp theo, một mô hình LSTM hai giai đoạn được đề xuất để tự động học
các mẫu chuỗi opcode Lớp LSTM đầu tiên xử lý chuỗi opcode của mỗi hàm, tạo ra
một biéu diễn vector cho mỗi hàm Lớp LSTM thứ hai nhận các biểu diễn hàm naylàm đầu vào và học các mẫu chuỗi tông thé ở mức độ chương trình Dé tăng cườngtính bất biến của các biểu diễn đặc trưng, một lớp mean-pooling được thêm vào sau
lớp LSTM thứ hai.
mm li a= ?Format File }———-/| Sequence File _—B9%- / ( am)
Training Set Data Processing Modeling Evaluation
Hình 2-2: Mô hình xử lý của nghiên cứu với Word Embedding — LSTM
Đánh giá: thực nghiệm được tiến hành trên tập dữ liệu gồm 969 mẫu mã độc
và 123 mẫu “lành tinh” (benign) Kết quả cho thấy phương pháp đề xuất đạt hiệusuất xuất sắc, với AUC trung bình là 0.99 cho phát hiện mã độc và 0.987 cho phân
loại mã độc Các tác giả cũng so sánh mô hình LSTM hai giai đoạn với các phương
pháp khác như mạng nơ-ron tích chập (CNNs), RNN đơn giản, va multilayer
perceptrons (MLPs), chứng minh sự vượt trội của mô hình LSTM hai giai đoạn.
Kết luận: bài nghiên cứu đã đề xuất một phương pháp mới và hiệu quả chophân tích mã độc tĩnh, sử dụng kỹ thuật NLP để tự động học các mẫu mã độc từ các
chuỗi opcode Mô hình LSTM hai giai đoạn cung cấp một cách tiếp cận toàn diện và
mạnh mẽ dé nắm bắt các đặc điểm phức tạp của mã độc, vượt trội hơn so với các
phương pháp truyền thống dựa vào kỹ thuật thủ công
13
Trang 232.2.3 Nghiên cứu kết hợp mô hình HMM với các mô hình máy học
Trong nghiên cứu có bước đột phá mới nhất là nghiên cứu so sánh của sự xuất
hiện của mô hình HMM trong vấn đề phân loại mã độc Được thực hiện bởi nhóm tác
gia Ritik Mehta - Olha Jure’ckov’a - Mark Stamp trong phạm vi cách thời điểm thực
hiện nghiên cứu này 6 tháng Bài nghiên cứu là nền tảng chính của khóa luận với các
phương pháp sử dụng mô hình HMM và có sự so sánh chi tiết khi sử dụng và không
sử dụng mô hình HMM trong phân loại mã độc.
Nghiên cứu sử dụng dataset là các mẫu opcode sequence thuộc bộ project
Malicia gom 7 nhãn can phân loại (Zero access, Winwebsec, SecurityShield, Zbot,Cridex, SmartHDD, Harebot).
Nghiên cứu trình bay ứng dụng của mô hình HMM trong tiền xử lý dữ liệu.với hai mô hình học máy RF và SVM khi sử dụng đầu vào là opcode sequences trựctiếp và thong qua mô hình xử lý ngôn ngữ tự nhiên HMM Nguyên ly của nghiên cứu
là biến đổi opcode thuần thành dang Hidden State cũng là chuỗi có độ dài tương tựopcode đầu vào và được sinh ra sau khi đi qua mô hình HMM đã được huấn luyệnsan Vì các nghiên cứu này là nền tảng của khóa luận nên được đề cập chi tiết ở phần
cơ sở lý thuyết Các chuỗi Hidden state được xử lý tương tự như opcode thông thường
ở các mô hình máy học phân loại mã độc Ở đây nghiên cứu sử dụng với phương thứcn-gram cho mô hình SVM va sử dụng như feature vector cho mô hình RF.
Kết luận: Nghiên cứu đề cao khả năng của Hidden State được sinh ra bởi HMM
và khang định có nhiều khả năng phát triển trong tương lai Khang định nếu sử dụng
các mô hình phân loại khác thì sử dụng HMM là bước tiền xử lý sẽ luôn đạt hiệu quả
tốt hơn Do chưa có nghiên cứu nào sử dụng mô hình HMM tương tự như vậy nên
mục tiêu của khóa luận sẽ nghiên cứu sâu về chủ đê này.
2.3 Định hướng sử dung xử lý ngôn ngữ tự nhiên
Dựa trên những nghiên cứu, đóng góp mới nhất của lĩnh vực này, đề tài tìmđược nền tang dé tập trung khai thác và phát triển đó là kết hợp hai mô hình: xử lý
14
Trang 24ngôn ngữ tự nhiên đạt được nhiều kết qua trong xử lý opcode và phân loại mã độc
(HiddenMarkov Model) và mô hình chịu trách nhiệm phân loại dựa trên kết quả mà
mô hình xử lý ngôn ngữ tự nhiên cung cấp Phương pháp này cung cấp một hệ thốngphân loại mã độc có tính tối ưu cao về mặt hiệu suất, thời gian, và tài nguyên tinhtoán thấp hoàn toàn có thê tích hợp vào trình phát hiện mã độc (Anti Virus) là tiêuchí tiên quyết cho hướng nghiên cứu tích hợp vào hệ thống SIEM của khóa luận đề
ra.
Đầu tiên, nghiên cứu sẽ sử dụng chuỗi opcode, là chuỗi các hướng dẫn máytính cơ bản, dé huấn luyện mô hình Hidden Markov (HMM) Đây là một phương
pháp hiệu quả để tìm ra các mẫu và xu hướng 4n trong dữ liệu, cho phép nắm bắt
được câu trúc và ngữ cảnh phức tạp của mã độc.
Tiếp theo, xác định các trạng thái ân từ mô hình HMM Trạng thái an là nhữngyếu tố không thé quan sát trực tiếp nhưng lại ảnh hưởng mạnh mẽ đến dữ liệu quansát được Những trạng thái an này sau đó được dùng làm co sở dé phân loại các mẫu
mã độc theo từng nhóm.
Trong mô hình này, HMM đóng một vai trò rất quan trọng Nó giúp khám phácác thông tin "ẩn" trong opcode, giống như cách mà các kỹ thuật thường được ápdụng trong xử lý ngôn ngữ tự nhiên (NLP) Một ví dụ điển hình là cách HMM đượcdùng để xác định vai trò của từng từ trong một câu Bằng cách phân loại chúng vàocác nhóm thích hợp, từ đó có thể nắm bắt được nghĩa của từng từ dựa trên ngữ cảnh
va vi trí của nó trong câu.
Trong nghiên cứu phân loại mã độc nay, sau khi đã xác định được "quy luật"
của mỗi đoạn opcode dưới dạng chuỗi trạng thái an sinh ra từ mô hình HMM, sau đó
có thé áp dụng nhiều mô hình học máy khác nhau dé tiễn hành bước phân loại tiếptheo Tuy nhiên, dựa trên nhiều nghiên cứu như đã nói ở trên và sau thời gian tìmhiểu cấu trúc, độ phức tạp tính toán, thời gian cũng như hiệu quả áp dụng thì nghiêncứu sẽ tập trung vào mô hình máy học Random forest Với mục tiêu tối ưu hóa và tìm
ra cầu hình tốt nhất của hai mô hình Hiden Markov Model và Random forest nghiên
15
Trang 25cứu sẽ đi sâu vào các cấu hình tinh chỉnh chủ yếu cũng như lý thuyết thuật toán củahai mô hình.
Tổng kết lại định hướng chính trong phần sử dụng ngôn ngữ tự nhiên vào phânloại mã độc là xây dựng mô hình xử lý HMM-RF tối ưu nhất dé tích hợp vào hệ thốnggiám sát như khóa luận đã đề ra
2.4 Định hướng mô hình hệ thống giám sát
Dựa trên kết quả của mô hình phân loại mã độc HMM-RF đã đề ra, nghiêncứu tiếp theo cần xây dựng mô hình thành một khối xử lý đữ liệu với đầu vào là các
tệp tin portable executable (PE) và đầu ra là kết quả phân loại mã độc
Nghiên cứu sử dụng nền tảng trích xuất opcode sequence từ file PE hiệu quả
Bồ sung các điều kiện xử lý dữ liệu padding, sorting, remove, exception v.v sao chocác opcode trích xuất từ tập tin PE chính xác về mặt cau trúc đề ra dé tiến hành phân
loại thông qua mô hình HMM-RF.
Đồng thời, nghiên cứu cũng sẽ tìm hiểu việc sử dụng nền tảng xử lý, phân tích
và lưu trữ dữ liệu elasticsearch Elasticsearch không chỉ là một công cụ mạnh mẽ
trong việc xử lý và lưu trữ dit liệu, mà còn giúp tối ưu hóa quá trình phân tích dữ liệu.Việc cấu hình elasticsearch trên hệ thống mạng và nghiên cứu document của côngnghệ sẽ giúp thiết lập một hệ thống hoàn chỉnh, đáp ứng mọi yêu cầu về hoạt động
va an toàn thông tin.
Tiếp theo, khối xử lý mã độc sẽ được cau hình dé gửi dữ liệu phân tích lên hệthong Điều này giúp tăng cường khả năng xử lý và phân loại dir liệu, đồng thời tạođiều kiện thuận lợi cho việc phân tích và đánh giá kết quả Sau khi dữ liệu được gửi
lên hệ thống, công cụ kibana sẽ được sử dụng dé mô hình hóa đữ liệu, giúp chúng ta
dễ dàng theo dõi và đánh giá hiệu suất của mô hình
Cuối cùng, việc kiểm tra tính liên tục và luồng xử lý của hệ thống sẽ đảm bảohoạt động ổn định, tạo điều kiện thuận lợi cho việc đánh giá thành quả áp dụng cuốicùng của khóa luận Việc này không chỉ giúp chúng ta năm bắt được hiệu suât của
16
Trang 26mô hình, mà còn giúp tôi ưu hóa quá trình xử lý và phân loại dữ liệu, đảm bảo chât lượng và hiệu quả của khóa luận.
17
Trang 27Chương 3 CƠ SỞ LÝ THUYÉT VA CÔNG NGHỆ UNG DỤNG
3.1 Lý thuyết xử lý ngôn ngữ tự nhiên
Chương này nêu ra các kỹ thuật xử lý ngôn ngữ tự nhiên có liên quan đếnnghiên cứu Chức năng chính của các mô hình xử lý ngôn ngữ tự nhiên được thê hiệntrên các phương diện: phân tích ngôn ngữ, tổng hợp ngôn ngữ và tương tác với cácngôn ngữ Mục đích sử dụng phô biến của xử lý ngôn ngữ tự nhiên trong lĩnh vực antoàn thông tin nói chung và phát hiện mã độc nói riêng là xử lý những dữ liệu mã độcđầu vào, chuyền chúng thành các véc tơ dữ liệu phù hợp với các mô hình máy học dé
xử lý.
3.1.1 M6 hình xử lý ngôn ngữ tự nhiên Hidden Markov Model
Hidden Markov Model [10] là mô hình xác suất diễn tả một chuỗi sự kiện có
tính ngẫu nhiên, trong đó đó những thuộc tính quan sát được (observation state) phụ
thuộc vào các thuộc tính an (hidden state) thông qua một quy định xác suất phù hop
Mô hình HMM thường được dùng trong các bài toán thực tế về xử lý ngôn ngữ gồm
các ví dụ phô biến: nhận dạng giọng nói, chữ viết, dự đoán thời tiết, nhiệt độ, phântích chuỗi Trong phần nghiên cứu này của khóa luận sẽ tập trung giải thích thuật toán
của mô hình HMM và các bài toán liên quan.
3.1.1.1 Hidden Markov Chain
Hidden Markov Chan là hình thức sơ khai nhất cua Hidden Markov Model
nhằm mô tả lý thuyết xác suất của thuật toán Trong mô hình Các trạng thái quan sát
được sẽ được ký hiệu dưới dạng O; các trạng thái ân ( trạng thái đặc trưng của mô
hình) được ký hiệu Xi Xác xuất chuyên từ trạng thái i sang trạng thái j (i+1) được kýhiệu P(Lj) Tổng quan của thuật toán khi một trạng thái quan sát được thay đổi từ O;sang Oj điều này được quyết định bởi sự thay đổi của trang thái ân X; sang trạng thái
an Xj, mà sự thay đổi của trạng thái ân được quyết định bởi xác xuất P(i,j) điều này
thé hiện đặt trưng của mô hình là trạng thái kế tiếp chỉ phụ thuộc vào trang thái hiện
18
Trang 28tại mà không phụ thuộc bat kỳ yếu tô nào khác Đây là đặc trưng của Hidden MarkovModel.
P(i>j) P(i>)) P(i>j)
Xi ——>x X; ——> Xs Pine > MX > Mea >
| | | | |
Or: O: Q: † O Orns
Hinh 3-1 M6 hinh Markov chain
3.1.1.2 Hidden Markov - bài toán và lời giải
Hidden Markov Model là cấu trúc gồm A = (A, B, 1) trong đó: A là ma trận
mô tả tỉ lệ chuyên đôi giữa các tính trạng ấn từ T đến T1 (hidden state), B là ma trận
miêu tả xác xuất của các trạng thái quan sát được từ T đến T1, Tương tự 7 là ma tran
đại diện xác xuât khởi đâu.
Trong nghiên cứu và ứng dụng cua mô hình Hidden Markov Model được chia
làm ba bài toán chính:
e Bài toán thứ nhất: Cho mô hình gồm A = (A, B, rr) va Observation sequence
O, tính xác xuát xảy ra cua Observation sequence đó P(O | A).
e Bai toán thứ hai: Cho mô hình gồm A = (A, B, 7) va Observation sequence O,
tim hidden state phù hợp nhất với Observation sequence O
e Bài toán thứ ba: Cho Observation sequence O, va N là s6 hidden state, M là
số Observation states, tim mô hình A = (A, B, 7) phù hợp nhất
Ba bài toán trên là ứng dụng phô biến nhất của mô hình Hidden Markov Dé
giải quyết ba vấn đề trên cần sử dụng ba thuật toán hiện tại đang được áp dụng cóhiệu quả tính toán tốt nhất:
19
Trang 29Thuật toán Forward-Backward:
Thuật toán nay được sử dụng dé tính xác suất của chuỗi các quan sát, bằng
cách tính đệ quy hai loại xác suât: xác suat tiên (forward) và xác suât lùi (backward).
Cụ thê về hai loại xác suât:
e Xác suất tiễn: Xác suất xảy ra của chuỗi quan sát từ bắt đầu đến thời điểm hiện
tại, dựa trên trạng thái An (hidden state) tại thời điểm hiện tại
e_ Xác suất lùi: Xác suất xảy ra của chuỗi quan sát từ thời điểm hiện tại đến cuối
(giả sử chuỗi quan sát có điểm cuối được xác định hoặc được chọn), dựa trêntrạng thái ấn (hidden state) tại thời điểm hiện tại
Bằng cách kết hợp hai xác suất này, ta có thể tính được xác suất của toàn bộ
chuỗi quan sát.
Thuật toán Viterbi:
Thuật toán này được sử dụng đề tìm ra chuỗi trạng thái ân có khả năng xảy racao nhất, dựa trên chuỗi quan sát và các thông số còn lại mô hình Thuật toán Viterbi
sử dụng một phương pháp quy hoạch động để tìm ra chuỗi trạng thái ân tối ưu, bằngcách tính toán lần lượt các xác suất tối đa tại từng thời điểm
Thuật toán Baum-Welch:
Thuật toán này được sử dụng để ước lượng các thông số mô hình (xác suấtchuyên trạng thái và xác suất phát xạ) từ chuỗi quan sát, bằng cách sử dụng phươngpháp lặp Kì vọng-Cực đại (Expectation-Maximization - EM) Quá trình này bao gồm:
e Bước E (Expectation): Tính toán các xác suất trung gian dựa trên các thông số
mô hình hiện tại.
e Bước M (Maximization): Cập nhật các thong số mô hình sao cho xác suất của
chuỗi quan sát được tôi đa hóa
Thuật toán là sự lặp lại hai bước này cho đến khi mô hình đạt trạng thái hội tụ,trong nghiên cứu ta đặt trạng thái hội tụ khi một thời điểm mới được thêm vào mà
20
Trang 30mô hình không có sự thay đổi đáng ké (điều kiện hội tụ người thiết kế mô hình đặt
ra).
Nghiên cứu ứng dụng của mô hình HMM trong nghiên cứu này yêu cầu hai
thuật toán Baum-Welch và Viterbi lần lượt ứng dụng trong huấn luyện mô hình và sửdụng mô hình để định dạng opcode sequences trích xuất được thành chuỗi hidden
state.
3.1.2 Cac mô hình xử lý ngôn ngữ tự nhiên khác
3.1.2.1 Word2vec
Mô hình Word2Vec là một kỹ thuật xử lý ngôn ngữ tự nhiên mạnh mẽ, được
sử dụng để tạo ra các vector từ có ý nghĩa về mặt ngữ nghĩa Trong lĩnh vực phân loại
mã độc, Word2Vec được áp dụng dé biến đổi các chuỗi opcode sequences của các
tập tin thực thi thành các vector có kích thước có định Mục đích dé phản ánh mối
quan hệ ngữ nghĩa giữa các opcode sequences Bằng cách kết hợp một mô hình máyhọc mạng nơ ron (Neural Network) dé hoc các vector biéu diễn từ các chuỗi opcode
sequences của mã độc và phần mềm lành tính, mô hình có thé phát hiện các mẫu ngữ
nghĩa đặc trưng của mã độc Từ đó cải thiện hiệu suất phân loại mã độc, đặc biệt là
phân tích các biến thé mã độc mới chưa từng xuất hiện
3.1.2.2 Bag-of-Word (BoW)
Mô hình Bag-of-Words (BoW)[7] là một phương pháp đơn giản và hiệu quả
dé biéu diễn văn bản trong xử lý ngôn ngữ tự nhiên Các chuỗi opcode của các tập tin
thực thi được coi như các tài liệu văn ban, và mỗi opcode được xem như một từ BoW
chuyên đổi các opcode sequences thành các vector biêu diễn tần suất của từ, phản ánh
sự xuất hiện của từng opcode trong tài liệu Mặc dù mô hình nay biểu diễn thứ tự củacác opcode, nhưng nó vẫn có thé tao ra các đặc trưng mạnh mẽ dé phân loại mã độc,đặc biệt khi kết hợp với các kỹ thuật học máy như SVM hoặc Random Forests
21
Trang 313.1.2.3 Term Frequency-Inverse Document Frequency (TF-IDF)
Mô hình TF-IDF (Term Frequency-Inverse Document Frequency) cai thiện
mô hình BoW bằng cách thêm một chiều dữ liệu là trong số của từ, do đó giảm thiểu
ảnh hưởng của các từ phô biến nhưng ít giá trị ngữ nghĩa, và tăng cường giá trị chocác từ ít phô biến nhưng mang tính phân biệt cao Khi áp dụng vào chuỗi opcode, TF-
IDF giúp xác định các opcode quan trọng, từ đó cải thiện độ chính xác và hiệu quacủa các mô hình học máy trong việc phát hiện và phân loại mã độc Kết hợp với cácthuật toán phân loại như SVM, TF-IDF sẽ cải thiện được hiệu quả phân loại.
3.2 Ly thuyết máy hoc trong phân loại mã độc
Do tính chất của xử lý ngôn ngữ tự nhiên nên các mô hình này thường đi kèmvới các mô hình máy học để ứng dụng được trong phân loại mã độc Hay nói cáchkhác các mô hình máy học đóng vai trò cốt lõi dé xử lý ngôn ngữ tự nhiên có thé ứngdụng vào phân loại mã độc Chương này sẽ đề cập cụ thê đến mô hình máy học được
sử dụng trong nghiên cứu: Mô hình Random Forest Ngoài ra đề cập đến các mô hình
máy học cổ điển và hiện đại có thê ứng dụng vào nghiên cứu trong tương lai
3.2.1 Mô hình Random Forest
Random Forest thuộc thuật toán phân loại (Classification) được xây dựng dựatrên cau trúc cây quyết định (Decision Tree) Cây quyết định là một kỹ thuật phânloại cơ bản, dựa trên kiến trúc cây bao gồm các thành phần như: nút gốc (root node),cành (branches), nút nội bộ (internal nodes) và nút lá (leaf nodes) Cây quyết địnhđược hình thành từ tập hợp các câu lệnh điều kiện if-else
Vi du, ta có thé xây dung một cây quyết định để phân loại các mã độc dựa trên hai
đặc trưng "kích thước tập tin" và "entropy" Mỗi nút trong cây sẽ tương ứng với một
tiêu chí phân loại dựa trên những đặc trưng này, từ đó dẫn đến các nút lá biểu diễncác lớp phân loại khác nhau, chăng hạn như "mã độc” hoặc "an toàn”.
22
Trang 32Hình 3-2 Ví du một cây quyết định đơn giản minh họa xác định mã độc
Random Forest kết hợp nhiều cây quyết định độc lập với nhau, từ đó nângcao độ chính xác và tính bền vững của mô hình phân loại so với việc sử dụng một
cây quyết định đơn lẻ Thuật toán Random Forest là một thuật toán cô điển tuy
nhiên các nhược điểm của thuật toán này đã được hạn chế tối đa trong nghiên cứu
này bởi mô hình HMM về phức tạp về số liệu và kiểm soát thông số Ngoài ra thuậttoán Random Forest có độ tin cậy cao, khả năng xử lý tốt dữ liệu ngoại lệ trong
trường hợp mô Hình HMM sinh ra kết quả ngoại lệ Hơn thế nữa thuật toán được
huấn luyện và triển khai cực kỳ nhanh chóng, phù hợp cho việc xây dựng một cautrúc phân loại mã độc gọn nhẹ, tính sẵn sang cao dé đưa vào một hệ thống SIEM
như tiêu đề của nghiên cứu Với những lý do trên và những phân tích trong bài báo
nền tang thì mô hình Random forest sẽ được sử dụng và nghiên cứu tập trung dé
cho ra kết quả tốt nhất
23
Trang 333.2.2 Cac mô hình máy học khác
3.2.2.1 Support Vector Machines (SVM)
Support Vector Machines là kỹ thuật học máy giám sát tạo ra một không
gian nhiều chiều, tìm ra một mặt phẳng tối ưu để phân tách các điểm dữ liệu
thành lớp Biên của mặt phan tối ưu đóng vai trò phân loại dữ liệu Trong nghiên cứu [16] Kruczkowski cùng cộng sự huấn luyện một mô hình SVM trên các mẫu
mã độc và đạt độ chính xác chéo là 0.9398 và F1-score là 0.9552.
3.2.2.2 Recurrent Neural Network (RNN)
Mô hình Recurrent Neural Network [18] (RNN) là một loại mạng nơ-ron
chuyên dùng để xử lý dữ liệu tuần tự nhưng có một số nhược điểm làm nó không
phù hợp trong lĩnh vực phân tích mã độc Vì vậy để khắc phục các nhược điểm
đó mô hình Long Short-Term Memory - LSTM được nghiên cứu phát triển LSTM
rất hữu ích trong việc xử lý các chuỗi dữ liệu dài và có mối liên hệ phức tạp, chẳng
hạn như chuỗi opcode của mã độc Nghiên cứu sử dụng LSTM đã được dẫn chứng
trong mục các nghiên cứu liên quan Khẳng định mô hình này có tương thích cao
với kỹ thuật xử lý ngôn ngữ tự nhiên và có thể sử dụng mô hình HMM trong các
nghiên cứu đặc biệt hơn.
3.2.2.3 Convolutional Neural Networks (CNN)
Phân tích mã độc bằng kỹ thuật hình ảnh là một lĩnh vực được tập trung
nghiên cứu và chứng minh được sự quan trọng trong những năm gần đây với các nghiên cứu tiêu biểu [2,19], và Convolutional Neural Networks là mô hình phổ
biến ở lĩnh vực này CNN được sử dụng để xử lý dữ liệu dạng lưới như hình ảnh,
ma trận tính năng v.v Nghiên cứu dựa trên mô hình này được Kalash và cộng sự
triển khai với tên gọi M-CNN, để phân loại mã độc M-CNN được định nghĩa là
24
Trang 34kiến trúc CNN dựa trên [20] Nghiên cứu này đạt được chỉ số accuracy trên bộ
dữ liệu Mallmg là 0.9852 và trên bộ dữ liệu của Microsoft! là 0.9997.
3.3 Công nghệ ELK
ELK Stack [3,4] là tên gọi phổ biến của ba công cụ: Elasticsearch, Logstash
và Kibana Lịch sử của Elastic Stack (hay ELK Stack) bắt đầu từ năm 2010, khi ShayBanon tạo ra Elasticsearch như một dự án man guén mở Elasticsearch được xây dựngdựa trên nền tảng Lucene, một thư viện tìm kiếm văn bản miễn phí Vào năm 2012,Elastic được thành lập dé thương mai hóa va phát triển Elasticsearch Sau đó, họ đã
thêm hai thành phần khác là Logstash (năm 2012) và Kibana (năm 2013) để tạo nên
bộ ba Elastic Stack.Ngày nay, Elastic Stack đã trở thành một trong những giải pháp
phân tích dit liệu và quan lý nhật ký phổ biến nhất trên thị trường, với sự ủng hộ củacộng đồng người dùng và các doanh nghiệp trên toàn thế giới
Trong lĩnh vực an toàn thông tin rất nhiều hệ thống SIEM được xây dựng trênkiến trúc của ELK Công cụ Elasticsearch sử dung dé lọc và thu thập các nhật kýmong muốn cho hệ thống phát hiện mã đôc của nghiên cứu Mô hình được triển khai
có thé thu thập các nhật ky đã thu thập dé đưa ra quyết định về hoạt động đáng ngờ
dựa trên chỉ tiết nhật ký ELK stack cho phép chúng ta lưu trữ nhiều nhật ký để trực
quan hóa chúng dễ dàng hơn Elasticsearch là một công cụ tìm kiếm và phân tích chophép chúng ta lưu trữ thông tin không lồ ở định dạng JSON Logstash là một bộ xử
lý và thu thập dữ liệu, cho phép chúng ta thu thập, tải và chuyên dữ liệu trong nhiềukiến trúc, và cuối cùng, nó có thể được chuyền tiếp đến Elasticsearch Kibana cungcấp một lớp trực quan hóa cho trình duyệt web dé phân tích bat kỳ truy vấn nào choElasticsearch trong một số hình ảnh như biéu đồ cột, biểu đồ tuyến tính, biểu đồ tròn,v.v Hơn hết ELK Stack là bộ công cụ mã nguồn mở Vì vậy nghiên cứ sử dụng ELKtrực tiếp dé tích hợp mô hình nghiên cứu phân loại mã độc
1 https://www kaggle.com/c/malware-classification
25