Cụ thê, nghiên cứu áp dụng phương pháp học máy trên các tập dữ liệu phô biên đê tạo ra một mô hình giúp hệ thông phát hiện được những dạng tân công phô biên.. o Xây dựng được mô hình học
Trang 1ĐẠI HỌC QUÓC GIA TP HÒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA MẠNG MAY TÍNH VÀ TRUYEN THONG
NGUYEN TUONG DANG
TRINH VAN HOANG
KHOA LUAN TOT NGHIEP
Techniques of Cyber Deception and Intrusion Detection
in SDN-enabled networks
KY SU NGANH AN TOAN THONG TIN
TP HO CHI MINH, 2021
Trang 2ĐẠI HỌC QUOC GIA TP HO CHÍ MINH
TRUONG DAI HOC CONG NGHE THONG TIN KHOA MANG MAY TINH VA TRUYEN THONG
NGUYEN TUONG DANG - 16520170
TRINH VAN HOANG - 16520450
KHOA LUAN TOT NGHIEP
KY THUAT LUA DOI MANG VA PHAT HIEN XAM
NHAP CHO MANG KHA LAP TRINH
Techniques of Cyber Deception and Intrusion Detection
in SDN-enabled networks
KY SU NGANH AN TOAN THONG TIN
GIANG VIEN HUONG DAN
ThS PHAN THE DUY
TP HO CHÍ MINH, 2021
Trang 3THÔNG TIN HỘI ĐÒNG CHÁM KHÓA LUẬN TÓT NGHIỆP
Hội đồng chấm khóa luận tốt nghiệp, thành lập theo Quyết định số
của Hiệu trưởng Trường Đại học Công nghệ Thông tin.
Trang 4ĐẠI HỌC QUOC GIA TP HO CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
TRƯỜNG ĐẠI HỌC Độc Lập - Tự Do - Hạnh Phúc
CÔNG NGHỆ THÔNG TIN
ĐÈ CƯƠNG CHI TIẾT
Cán bộ hướng dan: ThS Phan Thé Duy
Thời gian thực hiện: Từ ngày 07/09/2020 đến ngày 21/12/2020
Sinh viên thực hiện:
Sinh viên: Nguyễn Tường Đăng MSSV: 16520170 SDT: 0359718383
Sinh vién: Trinh Van Hoang MSSV: 16520450 SDT: 0387792828
Nội dung đề tai:(M6 ta chi tiết mục tiêu, phạm vi, doi tượng, phương pháp thực hiện,
kết quả mong đợi của đề tài)
Mục tiêu:
e Tận dụng các đặc tính của công nghệ SDN đề triển khai lừa dối mạng (đánh lừa
kẻ tân công xâm nhập vào bây) nhăm cung câp chiên lược phòng thủ chủ động cho mạng khả lập trình Thiet kê kết nôi tương tác giữa bộ phận lừa doi mạng và trình phát hiện tân công, xâm nhập.
e Xây dựng một hệ thống phát hiện tắn công trong mạng SDN dùng phương pháp
học máy Cụ thê, nghiên cứu áp dụng phương pháp học máy trên các tập dữ liệu
phô biên đê tạo ra một mô hình giúp hệ thông phát hiện được những dạng tân
công phô biên.
Phạm vỉ nghiên cứu:
e Hệ thong phát hiện xâm nhập dựa trên kỹ thuật học máy, dưới dạng khuôn mẫu
(prototype), được triên khai trong môi trường mạng SDN có khả năng phát hiện các cuộc tan công, xâm nhập dựa trên các tập dữ liệu như CIC-IDS-2018, UNSW- NB-15, dùng đê đánh giá tính hiệu quả của các IDS.
e Kỹ thuật lừa dối mạng (Cyber Deception) cho môi trường mạng khả lập trình
Đôi tượng nghiên cứu:
¢ _ Hệ thống mang SDN và cách giám sát luồng dữ liệu trong mạng
« Ky thuật lừa dối mạng
Trang 5« Phuong pháp học máy cho trình phát hiện xâm nhập, tan công.
« Cac thư viện hỗ trợ máy học Tensorflow, Pytorch, Keras.
Phương pháp thực hiện:
a Nội dung 1: Tìm hiểu kiến trúc, nguyên tắc hoạt động của mang SDN
e Mục tiêu: Nắm được kiến trúc, nguyên tắc hoạt động và triển khai được hệ
thông mạng SDN với Mininet, controller Ryu.
« Phương pháp: Nghiên cứu tài liệu hướng dẫn và thực hiện triển khai mạng
ø_ Triển khai kỹ thuật lừa dối mạng trong mạng khả lập trình nhằm tạo bẫy
cho kẻ tân công.
o Xây dựng kênh giao tiếp tương tác giữa Bay lừa đối mang (Cyber
Deception) và IDS cho mạng khả lập trình.
e Phương pháp:
o Tham khảo các video mô tả, tài liệu giải thích và các phương pháp triển
khai lừa dôi mạng.
o Sử dụng các công nghệ như Honeypot, Sandbox,
c Nội dung 3: Tim hiểu tong quan về IDS học máy, xây dựng mô hình nhận dạng
tan công dựa trên phương pháp học máy Sử dụng các bộ dữ liệu phù hợp, pho biến cho việc huấn luyện mô hình phát hiện bat thường trong mạng.
e Mục tiếu:
o Năm vững kiên thức cơ bản vê hoc máy, tông quan về kiên trúc và các
đặc điêm Hiêu vê các thành phan, cách hoạt động và các thư viện hỗ trợ xây dựng các mô hình học máy.
o Xây dựng được mô hình học máy phát hiện bat thường trong mạng sử
dụng các thư viện như Keras, Pytorch cùng với các bộ dữ liệu phù hợp,
phô biên.
e Phương pháp:
o Tham khảo các video mô tả, tài liệu giải thích, các ứng dụng liên quan
đên học máy và phương pháp xây dựng mô hình học máy.
o Tìm hiểu các bộ dữ liệu thường được sử dụng để huấn luyện cho các mô
hình học máy phát hiện bất thường trong mạng, tham khảo các nghiên
cứu trước đó cach đưa bộ dữ liệu vào huân luyện cho mô hình.
Trang 6d Nội dung 4: Thực nghiệm và đánh giá kết quả.
+ Muc tiêu: Xây dựng, triển khai mô-đun NIDS trong môi trường SDN từ mô
hình học máy xây dựng được và áp dụng kỹ thuật lừa dôi mạng Đánh giá
được hiệu năng và độ chính xác.
e Phương pháp:
o_ Thực hiện triển khai mạng SDN
o Xây dựng mô-đun NIDS từ mô hình đã thực hiện được.
o Áp dụng kỹ thuật lừa dối mạng
o Thực hiện các thử nghiệm khác nhau để đánh giá hiệu năng và độ chính
xác.
Kết quả mong đợi:
« _ Triển khai kỹ thuật lừa đối mạng cho mạng khả lập trình
« _ Thiết kế cơ chế phát hiện tấn công dựa trên phương pháp học máy: Huấn luyện
được mô hình từ tập dữ liệu CIC-IDS-2018, hoàn thành mô phỏng và đưa ra tiêu
chí đánh giá phát hiện tan công
« C6 được kết quả thực nghiệm và dua ra được báo cáo tổng quan về quá trình thực
hiện dé tai.
[1] M Bachl, F Meghdouri, J Fabini et al., SparseIDS: Learning Packet Sampling with Reinforcement Learning, 2020.
[2] C Wang and Z Lu, Cyber Deception: Overview and the Road Ahead, 2018.
[3] S Venkatesan, S Sugrim, C.Y.J Chiang et al., On Defensive Cyber Deception:
A Case Study using SDN, 2018.
[4] A Puzanov and K Cohen, Deep Reinforcement One-Shot Learning for Artificially Intelligent Classification Systems, 2018.
Trang 7Kế hoạch thực hién:(M6 ta kế hoạch làm việc và phân công công việc cho từng sinh
viên tham gia)
Tìm hiểu thêm về SDN, lừa dối _ Tìm hiểu thêm về SDN, lừa dối
07/09/2020 — mạng và các vân đê liên quan đên mạng và các vân đê liên quan 01/10/2020 phát hiện tân công dựa trên đên phát hiện tan công dựa trên
phương pháp học sâu phương pháp học tăng cường.
Tìm hiểu về học máy, các phương Tìm hiểu học may, các
CÀ ^ Tà — phương pháp xây dựng mô hình,
pháp xây dụng mô hình, thư viện TA R ,
Thán X ; thư viện hỗ tro may học:
& hỗ trợ máy hoc: Tensorflow,
10/2020 Keras Pytorch.
Triển khai kỹ thuật lừa đối mạng, Liên khai ky thuật lừa dôi
mạng.
Tháng Áp dụng máy học vào xây dựng _Mô phỏng và phát hiện tan công
11/2020 mô hình phát hiện tân công dựa trên mô hình đó.
Tháng Thực nghiệm và đánh giá kết quả Thực nghiệm và đánh giá kết quả
12/2020 đạt được đạt được.
Xác nhận của CBHD TP HCM, ngày tháng năm
(Ky tên và ghi rõ họ tên) Sinh viên
(Ký tên và ghi rõ họ tên)
Trang 8LỜI CẢM ƠN
Lời đầu tiên, chúng em xin trân trọng gửi đến thầy ThS Phan Thế Duy - người
đã trực tiếp tận tình hướng dẫn cũng như cung cấp tài liệu, thông tin khoa học cần
thiết cho khóa luận này lời cảm ơn chân thành và sâu sắc nhất
Chúng em cũng xin gửi lời tri ân sâu sắc đến lãnh đạo, ban giám hiệu cùng
toàn thé các thầy cô trường Dai học Công nghệ thông tin, đặc biệt là các thầy cô khoa
Mạng máy tính & Truyền thông cùng các anh chị ở Phòng thí nghiệm An toàn thôngtin đã truyền đạt những kiến thức và kinh nghiệm quý báu trong suốt quãng thời gian
chúng em học tập tại trường.
Chúng em xin chân thành cảm ơn!
Thành phó Hồ Chí Minh, tháng 12 năm 2020
Trang 9MỤC LỤC
Chương 1 MO ĐẦU -E- E222 EEE2151E212151112121110111 211111 re 2
1.2 Pham vi nghiÊn CỨU c1 1E ng nen 2
1.3 Đối tượng nghiên cứu ¿- ¿52 ++2x+E++E++E2EEEeExerxerxsrrrkerree 2
1.4 Phương pháp nghiÊn CỨU - c5 SE rệt 3
1.5 - Cấu trúc khóa luận - -c++c+t+cxteEkttrktrrrrtrrrrrrirrrrrrrriek 3
2.1 Mạng khả lập trình (SDN) LL SH HH HH ng kg 4
2.1.2 Tổng quan về SDN -¿-:- ¿2 +cSESESESEEEEEEEEEEEEEErrkrkrrrree 42.1.3 Kiến trúc SDN che 52.1.4 Cơ chế hoạt động của mang SDN Sky 6
2.2 Học sâu (Deep Learning) - cv ngưng rkt 7
2.2.1 KWAI MiG a 7
2.2.2 Mạng nơ-ron tích chap (Convolutional Neural Network) 8
2.2.2.1 Kiến trúc mang no-ron tích Chap c.ccccescesssssssessessessessssteseseeses 8
2.2.2.2 Luồng hoạt động của mang nơ-ron tích chập - 9
23 Hệ thống phát hiện xâm nhập mạng (NIDS) -+-<<+ 102.4 Hệ thống lừa dối mạng (Cyber Deception) - - 2s +c+szs+ss lãi
Q.AL Khai ni@m e cece ec dai 11
2.4.2 Những honeypot được sử dung trong hệ thống - 11
"P9 9 an 11
2.4.2.2 COWYIC n 12 2.4.2.3 Dionaea - - << HS 1 ng 1 1k krrre 12
Trang 102.5.1.2 Lợi ích của DocKef - c2 E + *+22*EEEesseeeeeesseeees 16
2.5.1.3 Kiến trúc Docker csccscssessssessesessessssessssessssessesessesessesesseseseeesees 17
2.5.2 AnSIbl@ Ăn TH KH HH Hit 19
2.5.2.1 Giới thiệu AnSIbÌe - - - c + 31211 119 1111 kg re 19
2.5.2.2 Kiến tTÚC 66Ố51 54115015 e«s4g8EBẤ sekhẪ vu treo 20
3.1 Giới thiệu chung về hệ thống ¿+ 2+s52+E+£+zEe£zEerxzrrrxesee 253.2 Phân tích thiết kế hệ thống phát hiện xâm nhập : 27
3.2.1 Quy trình hoạt động của hệ thống phát hiện tan công 273.2.2 Phương pháp nhận diện tấn công 2+ 2+s+cz+E+zszxerszed 27
3.2.2.1 Bộ dit liệu được sử dụng cà stress 28
3.2.2.2 Tiền xử lý dit liệu -¿-¿- S22 SE E211 E11 re 28
3.2.3 Xây dựng mô hình phát hiện tan công ¿2-5 s5: 303.3 Phân tích thiết kế hệ thống lừa dối mạng - 2 + s+=++s+5+¿ 32
Trang 113.3.1 Các tính chất chính của hệ thống lừa đối mạng 323.3.2 Các thành phần chính của hệ thống lừa đối mạng 33
3.3.2.1 Hệ thống triển khai bẫy tự động -. -: 5 ++5++5+55e2 33 3.3.2.2 Hệ thống lưu trữ bẫy ¿+ ¿s22 +EvEE2ESE2 E22 2E rrrrreg 33 3.3.2.3 Hệ thống phòng thủ mục tiêu di chuyên (MTD) - 34
3.3.2.4 Hệ thống phát hiện xâm nhập dựa trên dau hiệu (si gnature-based
ID) HH HH HH HH th 37
Chương 4 HIỆN THỰC VÀ ĐÁNH GIA ¿©252+s+cs+Eerszeerxsree 39
4.1.1 Môi trường trién khai ¿5 S£+E+E‡EEEzEeEeEErkrkersrerrses 39
4.1.2 Xây dựng mô hình mạng với Containernet - - - ‹ - 40
4.1.3 Xây dựng mô-đun trích xuất thuộc tính -2 +s¿ 424.2 Hiện thực hệ thong NIDS dựa trên học Sau - - - - 5 44
4.2.1 Môi trường huấn luyện -2- + ++5++x++x+zxerxerezrezrezxee 44
4.2.2 Quy trình huấn luyện +- 2 SE EeEE+ESEEEEEEeErkersrrersred 45
4.2.2.1 Chuyển đổi các bản ghi trong bộ dữ liệu sang ảnh 45 4.2.2.2 Huấn luyện mô hình CNN với ảnh được tạo ra 46
4.2.3 Kết quả huấn luyện - ¿2k SEEEEEEEEEEEEEEerrkrrrei 47
4.2.4 Xây dựng mô-đun NIDS .- 5S Si erikp 48
4.3 Hiện thực hệ thong lừa dối THẠN Sư 49
4.3.1 Viết Dockerfile và triển khai bẫy lên Docker Hub 49
4.3.2 Viết Playbook triển khai bay tự động - - 2+cecs+s¿ 51
4.3.4 Triển khai SnOrt -.- St Se SE E3ESEEEE5ESEEEEEESEEEEEEEEEEErErerrrree 62
Trang 124.3.5 Tương tác với DAY -. - ¿5+ St t1 12121 1111 E111 re 65
4.4 Đánh giá hệ thống - 2 S222 2E EEEEE212121 212111212 cxe2 69
4.4.1 Đánh giá hệ thống NIDS 2 SE+E£EE£E£EeEzkerrrersred 69
4.4.1.1 Đánh giá khả năng nhận diện và độ trễ -:-+5-: 69
4.4.1.2 Đánh giá tốc độ nhận diện của mô hình học sâu - 72
4.4.2 _ Đánh giá hệ thông lừa dối mạng - ¿-5- + cz+x+Eecccezxsed 72
Trang 13DANH MỤC HÌNH
Hình 2.1 Kiến trúc các lớp trong mạng SDN - 2+ +££s+x+£z£zzxzxec+z 5
Hình 2.2 Quy trình xử lý gói tin của giao thứ OpenRFlow « «5 +s< <2 7
Hình 2.3 Mô hình mạng nơ-ron tích chập - << 1+ ÉEssskEsrsekres 9
Hình 2.4 Kiến trúc Docker - ¿+ 2+++5£+x+E++E£EE+E£EEEEEEeEEEEerkrxerxrrereeree 17Hình 2.5 Các lệnh phố biến của Docker Client và mối quan hệ giữa 19Hình 2.6 Kiến trúc Ansible -55+2+tct xrtEEtrrtrrrtrirrtrirrrrierrrierrriee 20Hình 2.7 Tổng quan hoạt động của Ansible 2- 2-2 ¿2s x+z+z++x+zsze: 21Hình 2.8 Cấu trúc của Ansible playbook ccccsscssessssessssessesessesssesscsesssseeseees 22Hình 2.9 Ludng hoạt động của SnOrt - - 2 2© 2+E+E£E+EE2EeEEzEeExzEerxrree 23
Hình 3.1 Mô hình tong quan của hệ thống - 2 - 22 2 £++s+£++£ezx+s+2 25Hình 3.2 Luông xử lý dữ liệu trong hệ thống phát hiện tấn công 27
Hình 3.3 Mô hình CNN hiện đại dùng trong phát hiện tấn công sử dụng kỹ thuật
học chuyền tiẾp +: 2 St SE EE19E1215E1215712111211212111111111111111111E 111 Tre 31
Hình 3.4 Tổng quan hệ thong lừa dối Mang cesessessesseseseseeseesessesesesesees 32
Hình 3.6 Tổng quan về hệ thống phòng thủ dựa trên kỹ thuật MTD 36Hình 4.1 Mô hình triển khai của hệ thong 2 - 2s 22 +£+2+£+£s+£e£x2s+2 39Hình 4.2 Danh sách các kết nối qua interface trong mạng được thể hiện qua lệnh
Hình 4.3 Dung lượng của các images sau khi giải nén 5+++++++ 49
Hình 4.4 Hình ảnh images chứa Opencanary trên DockerHub - 50
Hình 4.5 Hình anh images chứa Dionaea trên DockerHub ‹ 50
Hình 4.6 Hình ảnh images chứa Cowrie trên DockerHub << ‹ 51
Hình 4.7 Cấu trúc file và thư mục của fixed trap c.ccccccesesseeseessseseeseeseeeeees 51
Hình 4.8 Kết quả trên terminal sau khi chạy file rưn_ƒixed_trap.py - 52Hình 4.9 Cơ chế random của fixed trap đang chạy bẫy Dionaea - 53
Hình 4.10 Chon bay trong fixed trap c.ccccccscccscssesssssssesesesescseseetesesesesssesesesesees 53
Trang 14Hình 4.11 OpenCanary trong fixed tr4D - c1 SH như, 54
Hình 4.12 HoneyPy trong fixed f4D - - c 13119 19 vn vn vn 55 Hình 4.13 Dionaea trong fixed trap - - - - <5 S1 1113 9 11 ng về 56
Hình 4.14 Cowrie trong fixed fraD - - - 1n ngư 57
Hình 4.15 Cau trúc thư mục của Moving Trap - 2-5 s+s+cs+sczszs+2 57
Hình 4.16 Snort đưa ra cảnh báo khi có tấn công DDoS trong mang 63
Hình 4.17 Kết nối SSH vào bẫy Cowrie bằng công 2222 - +: 63Hình 4.18 Snort đưa ra cảnh báo khi có kết nối SSH trong mang 64
Hình 4.19 Nmap host đang chạy bẫy Opencanary - 5-5-5552 66
Hình 4.20 Giao diện web của bẫy Opencanary ¿ + 2s+s+s+x+x+x+evreeees 67
Hình 4.21 Log được ghi lại của bẫy Opencanary +25s+s+x+x+zexeeees 67
Hình 4.22 Kết nối SSH vào bẫy Cowrie -¿ - + 222++x+2xezxezxerxzrerrees 68
Hình 4.23 File log của COWTIC LH Họ Hư, 69
Hình 4.24 Thời gian triển khai bẫy ngẫu nhiên trên 2 host - 73Hình 4.25 Thời gian triển khai bẫy ngẫu nhiên trên 4 host 2- -: 74Hình 4.26 Biéu đồ thời gian triển khai bẫy dựa trên số lượng bay 74Hình 4.27 Terminal các thông kê thời gian triển khai bẫy với số host là 2 và số lầnbxị.:84710P0 0N 8 ẽ 75
Hình 4.28 Terminal các thống kê thời gian triển khai bẫy với số host là 2 và số lầntriển khai là l5 -¿- + 25k SE£EEEEEE2EEEE2EE712121211211171112111211111111 1.0111 cre 76
Hình 4.29 Terminal các thông kê thời gian triển khai bẫy với số host là 2 và số lầntriển khai là 3( -¿- +: 5+5: 2E9E21E2121221212121212112111211111112111211 112111 cre 71
Hình 4.30 Terminal các thống kê thời gian triển khai bẫy với số host là 3 và số lần
Trang 15Hình 4.33 Terminal câc thống kí thời gian triển khai bẫy với số host lă 4 vă số lần
Hình 4.40 Kết qua dò quĩt mang SDN với MTD vă không MTD với số host lă 16
Seekseeksereersorcrscr.r.Ể PP BI ÿ đa xa VI J 86
Hình 4.41 Thời gian dò quĩt trong mạng SDN với MTD vă không MTD với số
host lă 16 BĐ Ê mm c Ă“œqœ⁄¬Ầzqu —_ĂĂ—Ă_ĂẴLA-<eeeeeeesseesesresseesee 86
Hình 4.42 Thời gian dò quĩt trín mạng SDN với cơ chế MTD vă không có MTD
87
Trang 16DANH MỤC BANG
Bảng 2.1 So sánh một vài thông số về Ansible, SaltStack, Chef, Puppet trên
6015057201) ễ 20
Bang 3.1 7 thuộc tính được chon ra từ bộ dữ liệu CIC-IDS-2018 28
Bang 4.1 Môi trường triển khai 5: 25 S2 SE2E‡E£EE2E2EvEEEEzEeEerkrkrrerrreee 39
Bảng 4.2 Kết quả huấn luyện các mô hình 2- 2 2 22s x+z++z++z+zs++: 41
Bảng 4.3 Compressed size va pulled size của các images chứa bẫy 49
Bang 4.4 Danh sách địa chi IP thực và IP ảo trong hệ thống - 60
Bảng 4.5 Kết quả đánh giá khả năng nhận diện và độ trễ của mô hình ResNet50 ở
số lần triển khai khác nhau 2 ¿2 £+E£S£2E£EE2E£EE£EEEEEEEEEEEEEEEEErkerxrrersree 73
Bảng 4.11 Bảng so sánh kết quả đò quét với Nmap với cơ chế MTD và khôngMTD trong mạng SDN với số lượng host khác nhau - 2 2 s+s2+s2 5+2 87
Bang 4.12 Bang so sánh kết quả dò quét với Nmap với cơ chế MTD va khôngMTD trong mạng SDN với số lượng host khác nhau - 2-52 ©5+sz5s2 5+2 87
Trang 17DANH MỤC TỪ VIẾT TÁT
SDN Software-Defined Networks
IDS Intrusion Detection System
CNN Convolutional Neural Network
NIDS Network Intrusion Detection System
CD Cyber Deception
ML Machine Learning
DL Deep Learning
MTD Moving Target Defense
API Application Programming Interface
Trang 18TOM TAT KHÓA LUẬN
Software-Defined Networks (SDN) — mang cau hinh bang phan mém, duoc nhac
đến như một kiểu kiến trúc mạng với lợi thế cho phép việc quản lý, điều khiển và tối
ưu hóa tài nguyên mạng theo thiên hướng lập trình đã và đang trở thành một cuộc
cách mạng trong công nghệ mạng hiện đại.
Với sự phát triển đó, vấn đề bảo mật cụ thể là đảm bảo phát hiện chính xác các
cuộc tan công từ đó có các biện pháp ngăn chặn kịp thời là van đề được đặt lên hangđầu trong kỷ nguyên số và SDN cũng không phải ngoại lệ
Nhằm giải quyết van đề trên, khóa luận này hướng đến việc xây dựng một hệthong phòng chủ động bang việc kết hợp hai giải pháp mang tinh thời đại và dem lại
hiệu quả cao chính là ứng dụng công nghệ máy học (Machine Learning) vào việc hỗ
trợ phát hiện tan công mạng và lừa dối mạng Cụ thé, hệ thống sẽ dùng IDS máy học
dé đưa ra thông báo dự đoán tan công ban đầu (nếu có), đồng thời dùng CD dé dẫn
dụ, làm hao tốn tài nguyên của attacker, giám sát các hoạt động cua attacker trong hệthống, qua đó giúp nâng cao độ chính xác của các dự đoán của model bằng việc tạo
ra các bộ dataset phù hợp với môi trường mạng nội bộ.
Trang 19Chương 1 MỞ ĐẦU
1.1 Muc tiêu của đề tài
Khóa luận này tập trung nghiên cứu về kỹ thuật lừa dối mạng và phương pháp dé
kết hợp lừa dối mang và IDS dé tạo nên một hệ thống phòng thủ chủ động hơn Cụthể, những đóng góp chính của khóa luận:
e Tận dụng các đặc tính của công nghệ SDN dé triển khai lừa dối mạng (đánh
lừa kẻ tan công xâm nhập vào bay) nhằm cung cấp chiến lược phòng thủ chủ
động cho mạng khả lập trình Thiết kế kết nối tương tác giữa bộ phận lừa dốimạng và trình phát hiện tan công, xâm nhập
e Xây dựng một hệ thống phát hiện tan công trong mạng SDN dùng phương
pháp học sâu Cụ thé, nghiên cứu áp dụng phương pháp học sâu trên các bộ
dữ liệu phô biến dé tạo ra một mô hình giúp hệ thống phát hiện được nhữngdạng tấn công phô biến
1.2 Pham vi nghiên cứu
Hệ thống phát hiện xâm nhập dựa trên kỹ thuật học sâu, được triển khai trong môitrường mạng SDN có khả năng phát hiện các cuộc tấn công, xâm nhập dựa trên bộ
dữ liệu CIC-IDS-2018 dùng để đánh giá tính hiệu quả của các IDS
Kỹ thuật lừa dối mạng (Cyber Deception) cho môi trường mạng khả lập trình
1.3 Đối tượng nghiên cứu
e Hệ thống mạng SDN với Controller Ryu
e Công cụ mô phỏng hệ thống mạng Containernet
e Kỹ thuật lừa dối mạng
e Phuong pháp học sâu cho trình phát hiện xâm nhập, tan công
Trang 201.4 Phương pháp nghiên cứu
Khóa luận sử dụng các phương pháp nghiên cứu hướng đến thực tiễn dé xây dựng
hệ thống:
1.5.
Tìm hiểu kiến trúc, nguyên tắc hoạt động của mang SDN
Tìm hiéu vê học sâu và cách ứng dụng nó vào bài toán phát hiện tân công dựa
trên dataset có sẵn.
Chọn lọc, xây dựng nên các model hiện đại và tích hợp vào IDS.
Tìm hiểu các công nghệ thích hợp dé tạo nên hệ thống lừa dối mạng
Xây dựng hệ thống lừa dối mạng với các công nghệ được chọn
Câu trúc khóa luận
Chương 1: Giới thiệu tổng quan về đề tài nghiên cứu, mục tiêu, đối tượng và phạm
vi nghiên cứu.
Chương 2: Trình bày các kiến thức nền tảng về SDN, DL, NIDS, CD
Chương 3: Phân tích thiết kế mô hình phát hiện tan công sử dụng học sâu và môhình lừa đối mạng trong mang SDN
Chương 4: Hiện thực và đánh giá hệ thống phát hiện tan công, lừa đối mạng trong
mạng SDN.
Chương 5: Kết luận và hướng phát triển
Trang 21Chương2 KIÊN THUC NEN TANG
2.1 Mang khả lập trình (SDN)
2.1.2 Tông quan về SDN
Kiến trúc mạng truyền thống đang ngày càng trở nên không phù hợp với nhu cầucủa các doanh nghiệp, nhà khai thác mạng của như người dùng cuối SoftwareDefined Networking (SDN), một công nghệ mới, một phương pháp tiếp cận mới tớinetworking làm thay đổi kiến trúc mạng hiện nay nhằm đáp ứng các nhu cầu mới.Trong SDN, phan điều khiển của thiết bi mạng được tách rời khỏi phan cứng và đượcthực hiện bằng ứng dụng phần mềm gọi là Controller, và giao tiếp với phần cứngthông qua các giao thức truyền thông, trong đó OpenFlow nổi lên như là một giaothức với nhiều ưu điểm nhất Phương pháp trên cho phép kỹ sư mạng và người quảntrị có thé định hình lưu lượng từ một giao diện điều khiển trung tâm mà không cần
chạm vào các Switch.
Trang 222.1.3 Kiến trúc SDN
APPLICATION LAYER
CONTROL LAYER SDN
Control
Control Data Plane interface
(e.g., OpenFlow)
INFRASTRUCTURE LAYER
Network Device Network Device
Network Device Network Device
e Lớp điều khiển
Là nơi tập trung các bộ điều khiến thực hiện việc điều khiển cấu hình mạng theo
các yêu câu từ lớp ứng dụng và khả năng của mạng Các bộ điêu khiên này có thê là
Trang 23các phần mềm được lập trình Ngoài ra dé truyền thông điều khién lớp cơ sở hạ tang,lớp điều khiển sử dụng các cơ chế như OpenFlow, ONOS Các bộ điều khiến là cácphần mềm có khả năng xử lý logic, làm nhiệm vụ tiếp nhận và phản các yêu cầu từlớp ứng dụng, cấu hình các thiết bị mạng tại lớp ứng dụng và chọn con đường tốt nhất
cho lưu lượng ứng dụng.
e Lớp cơ sở hạ tầng
Bao gồm các thiết bị mạng, có thé là vật lý hoặc ảo hoá, thực hiện chuyển tiếp và
xử lý các gói tin theo sự điều khiển của bộ điều khiến Một thiết bi mạng có thê hoạtđộng theo sự điều khién của nhiều bộ điều khiến khác nhau, điều này giúp tăng cường
khả năng ảo hóa của mạng.
2.1.4 Cơ chế hoạt động của mạng SDN
Dữ liệu trong mạng SDN được truyền đi theo hai luồng riêng biệt Luồng dữ liệu(data plane) chuyền tiếp các gói tin đi trong mạng, bao gồm tất cả các hàm và tiếntrình chịu trách nhiệm xử lý và chuyền tiếp gói tin Luồng điều khiển (control plane)
chuyên tiếp các gói mang thông tin điều khiến từ thiết bị chuyên mạch đến bộ điều
khiển và ngược lại SDN hoạt động dựa trên cơ chế tách riêng việc kiểm soát luồngđiều khiến với luồng dữ liệu Luồng điều khién không nằm trong các nút như mangtruyền thống mà được tách ra từ các thiết bị vật lý và chuyển đến quản lý tập trungtại các bộ điều khiển Điều này giúp cho việc quản lý mạng có thé được thực hiện
thông qua một giao diện duy nhất, trái ngược với việc cau hình ở mỗi thiết bị mạng
riêng lẻ Việc tương tác với các thiết bị mạng vật lý được bộ điều khiển thực hiệnthông qua một giao thức chuẩn dành riêng cho mạng SDN, phổ biến nhất là
OpenFlow.
Luéng dữ liệu của SDN gồm các thiết bị mạng chứa bảng luồng, và trong bảngluồng chứa nhiều bản ghi luồng Các bản ghi luồng quy định các hành vi và nguyên
tắc về đường đi cho các gói tin di trong mạng Luông điều khiến trao déi các gói tin
mang thông tin vê việc điêu khiên đường di, câu hình của gói tin, giữa bộ điêu
Trang 24khiến và các thiết bị chuyển mạch Thông qua các gói tin truyền đi trong luồng điều
khiên, bộ diêu khiên biệt và quản lý sự tôn tai của các bản ghi luông.
Kiểm tra bản ghi luồng
Gói tín đến tại thiết bị chuyển mạch Thực thi các hành vi
Chuyển thông tin gói tin
đến bộ điều khiển
Thực thi các hành vi và
cập nhật ban ghi luéng
tại thiết bị chuyển mạch Kiểm tra bản ghi luồng
tại bộ điều khiển
Huy gói tin
Hình 2.2 Quy trình xử lý gói tin của giao thứ OpenFlow
2.2 Học sâu (Deep Learning)
2.2.1 Khai niém
Hoc sâu (deep learning) là một chi của ngành máy học dựa trên một tập hợp các
thuật toán để cố găng mô hình dữ liệu trừu tượng hóa ở mức cao bằng cách sử dụng
nhiều lớp xử lý với cấu trúc phức tạp, hoặc bằng cách khác bao gồm nhiều biến đổi
phi tuyến!
Deep Learning đã giúp máy tính thực thi những việc tưởng chừng như không thé
vào 15 năm trước: phân loại cả ngàn vật thé khác nhau trong các bức anh, tự tạo chú
! https://vi.wikipedia.org/wik/H%EI%BB%8Dc_s%C3%A2u
Trang 25thích cho anh, bat chước giọng nói va chữ viêt của con người, giao tiép với con người,
hay thậm chí cả sáng tác văn, phim, ảnh, âm nhạc.
Deep Learning ngày càng được nhiều người biết đến và nó những bước đột phá
vô cùng to lớn Những đột phá to lớn này là việc thiết kế ra những trợ lý ảo bằnggiọng nói, các hệ thống xe tự lái hay sử dụng vào thiết kế đồ họa, phân tích tình hình
giao thông của thành phó, cho đến phát triển các nguyên liệu mới giúp robot thấu
hiểu thé giới xung quanh hon Xu hướng về Robot và Deep Learning đang được nhiềucông ty công nghệ lớn chú trọng đầu tư và phát triển
Dưới đây là một vài các “mạng sâu (deep network)” đại diện cho phân lớn các
thuật toán sử dụng ngày nay:
e Perceptron đa tang (Multi-layer perceptron)
e Mang no-ron tich chap (Convolutional neural networks — CNN).
e Mang no-ron truy hồi
e Autoencoders.
2.2.2 Mang no-ron tich chap (Convolutional Neural Network)
Mang nơ-ron tích chập là một trong các thuật toán hoc sâu được sử dung trong
các bài toán phân loại ảnh hay phát hiện đối tượng trong ảnh
Mang nơ-ron tích chập sử dụng nhiều lớp liên tiếp nhau dé phân tích hình ảnh.Kết quả trả về của lớp này sẽ là dữ liệu đầu vào của lớp kế tiếp Mỗi lớp mạng sẽ có
một vai trò khác nhau Lớp cuối cùng là lớp được dùng dé nhận diện va phân loại
ảnh.
Ảnh đầu vào của mạng nơ-ron tích chập được chuyển đổi và xử lý như một ma
trận Kích thước của một ma trận bao gồm 3 thông số: chiều dài, chiều rộng và chiều
sâu Chiều sâu của ma trận có giá trị bằng với số kênh của ảnh Theo đó, chiều sâu là
1 khi anh đầu vào là ảnh xám, là 3 khi đầu vào là ảnh màu
2.2.2.1 Kiến trúc mạng nơ-ron tích chập
Trang 26Kiến trúc của CNN thông thường gồm các phần:
e Lớp tích chap (convolutional layer)
Trích xuất và xử ly các đặc trưng từ anh đầu vào Dé có thê trích xuất và xử ly
các đặc trưng từ ảnh, lớp tích chập sử dụng các bộ lọc (filter) Các bộ lọc này
là những ma trận có san Một bộ lọc là một ma trận vuông có chiều dài và
chiều rộng là một số lẻ, với chiều sâu bằng chiều sâu của ma trận đầu vào.Từng bộ lọc sẽ được sử dụng với tác dụng trích xuất từng đặc trưng cụ thé.Trong lớp tích chập, bộ lọc được sử dụng bằng cách nhân tích chập với các ma
trận con có cùng kích thước với bộ lọc.
e Lớp giảm mau (pooling layer)
Giúp don giản hoá thông tin đầu ra bang cách lay ra hoặc tính toán được giátrị đặc trưng nhất trên từng ma trận con không chồng chéo lên nhau Nhờ ưu
điểm này pooling layer được sử dụng dé giải quyết van đề overfitting
Trong mô hình CNN, pooling layer thường được dùng xen kẽ và ngay sau lớp
tích chập.
e_ Fully connected layer (Lớp kết nói day đủ)
Mỗi nơ-ron của lớp này sẽ kết nói tất cả các tham số và các đặc trưng của lớp
trước đó lại với nhau Việc kết nối này giúp tông hợp lại tất cả các đặc trưng,
thu gọn lại và đưa ra kêt quả cuôi cùng.
2.2.2.2 Luéng hoạt động của mạng no-ron tích chập
Trang 27Ảnh đầu vào được đưa vào mô hình, thông qua lớp tích chập đề trích xuất các
ma trận đặc trưng Số lượng lớp tích chập được dùng và vị trí sử dụng do người lậptrình khai báo và xen kẽ với lớp giảm mẫu Cuối cùng đi qua lớp tích chập dé tong
hợp các đặc trưng và trọng số của nó đề trả về kết quả bài toán Quá trình huấn luyện
có thể được thực hiện thông qua phương pháp lan truyền xuôi (forward) hoặc lantruyền ngược (backpropagation)
2.3 Hệ thống phát hiện xâm nhập mạng (NIDS)
Hệ thống phát hiện xâm nhập trong mạng NIDS là thiết bị hoặc phần mềm có khả
năng giám sát và thông báo các hoạt động bắt thường trong hệ thống mạng
Một hệ thống phát hiện xập nhập được sử dụng để phát hiện các mối đe doạ từviệc dám sát các gói tin truyền qua nó NIDS phát hiện các hoạt động đáng ngờ và
độc hại từ các xâm nhập bên ngoài lẫn bên trong Một hệ thống phát hiện xâm nhập
phải đối mặt với các van đề như là lưu lượng mạng lớn hay phân phối dữ liệu khôngđồng đều
NIDS được phân làm 2 loại là NIDS dựa trên dấu hiệu và NIDS dựa trên hành vi.Một NIDS dựa trên dấu hiệu thường sẽ so sánh lưu lượng mạng theo dõi so với cácmẫu dấu hiệu tấn công biết trước đề phát hiện các hành vi độc hại Loại NIDS này cókhả năng phát hiện các cuộc tan công với tỷ lệ nhằm lẫn thấp nhưng không có khảnăng phát hiện các cuộc tan công phức tạp hơn
Mặt khác, Hệ thông NIDS phát hiện dựa trên hành vi có tiềm năng lớn khi có khả
năng phát hiện được các loại tan công mới, bằng cách mô hình hóa các hành vi trong
mạng Tuy nhiên, cách tiếp cận dựa trên hành vi gặp thách thức khi tỉ lệ false positivecao Nhiều kỹ thuật đã được sử dụng dé giảm tỉ lệ false positive này, trong đó có kỹthuật áp dung deep learning dé xây dựng mô hình Kỹ thuật deep learning đã được ápdụng trong nhiều lĩnh vực khác nhau, đặc biệt thành công trong khoa học sâu tính cho
nhận diện giọng nói, gương mặt và hình ảnh Chính vì khả năng tìm ra các đặc trưng
hay mối tương quan giữa các dữ liệu được đưa vào phân tích, phương pháp học sâuđem lại tiềm năng lớn trong việc nâng cao độ chính xác cho hệ thống NIDS
10
Trang 282.4 Hệ thống lừa dối mạng (Cyber Deception)
2.4.1 Khái niệm
Một trong những định nghĩa được chấp nhận rộng rãi nhất về lừa dối mạng, doYuill đề xuất là “các hành động có kế hoạch được thực hiện dé đánh lừa và/hoặc gâynhằm lẫn cho những kẻ tấn công và do đó khiến họ thực hiện (hoặc không thực hiện)các hành động cụ thể hỗ trợ phòng thủ an ninh máy tính” Các phần thiết yếu tronglừa dối mạng bao gồm thông tin do người bảo vệ tạo ra (sẽ được sử dụng đề đánh lừa)
và các hành động sai trái của đối thủ do hành vi lừa dối
Mục đích của công nghệ lừa đảo là ngăn chặn tội phạm mạng đã tìm cách xâm
nhập vào mạng dé gây ra bat kỳ thiệt hai đáng ké nào Công nghệ hoạt động bang
cách tạo ra các bay hoặc mỗi nhử lừa dối bắt chước các tài sản công nghệ hợp pháp
trong toàn bộ cơ sở hạ tang Những mỗi nhử này có thé chạy trong môi trường hệđiều hành ảo hoặc thực và được thiết kế dé đánh lừa tội phạm mạng nghĩ rằng chúng
đã phát hiện ra cach dé leo thang đặc quyền và đánh cắp thông tin đăng nhập Khi
một cái bẫy được kích hoạt, các thông báo sẽ được phát tới một máy chủ đánh lừa tập
trung để ghi lại môi nhử bị ảnh hưởng và các vectơ tấn công đã được tội phạm mạng
sử dụng.
Một trong những yêu cầu quan trọng nhất dé triển khai công nghệ lừa dối thành
công là nó phải luôn không thé phân biệt được và mới đối với kẻ tan công Nếu kẻtan công nghi ngờ họ dang bị lừa dối, họ sẽ làm những gi có thé dé trốn tránh bẫy và
mở rộng quy mô nô lực đê truy cập tài sản thực của nạn nhân.
Nhiều giải pháp bảo mật chống lừa có học sâu và AI được tích hợp trong lõi của
chúng Các tính năng này không chỉ đảm bảo các kỹ thuật đánh lừa luôn hoạt động
mà còn giúp giảm thiêu chi phí hoạt động và tác động lên các nhóm bảo mật bằngcách giải phóng họ khỏi việc liên tục tạo các chiến dịch lừa dối mới
2.4.2 Những honeypot được sử dụng trong hệ thống
2.4.2.1 OpenCanary
11
Trang 29OpenCanary” là một daemon chạy các dịch vụ canary, kích hoạt các cảnh báo khi
bị tấn công Các cảnh báo có thê được gửi đến nhiều nguồn khác nhau, bao gồm nhật
ký hệ thống, email và trình tương quan opencanary - tương quan daemon đồng hành
Về cơ bản, nó là một máy tính hoặc máy ảo giả lập một số dịch vụ (ví dụ: ssh, ftp,telnet, netbios, https, samba server, v.v ) chấp nhận, ghi nhật ky va gửi cảnh báo về
tất cả các kết nối đến Ngoài ra, có thể sử dụng OpenCanary làm hệ thống phát hiện
xâm nhập hoặc cảnh báo sớm, cũng có thể đi xa hơn một chút, cho phép một kẻ xâmnhập vào bên trong sâu hơn vì có thể ghi lại mọi tương tác của kẻ tan công
2.4.2.2 Cowrie
Cowrie? là một honeypot SSH va Telnet có tính tương tác từ trung bình đến cao
được thiết kế để ghi lại các cuộc tấn công bao lực va tương tác vỏ được thực hiện bởi
kẻ tan công Ở chế độ tương tác trung bình (shell), nó mô phỏng hệ thống UNIX bangPython, ở chế độ tương tác cao (proxy), nó hoạt động như một SSH và proxy telnet
để quan sát hành vi của kẻ tấn công đối với hệ thống khác
Cowrie được phát triên từ Kippo
2.4.2.3 Dionaea'
Ý định của dionaea là bẫy các lỗ hồng khai thác phần mềm độc hại được phơi bay
bởi các dịch vụ được cung câp cho mạng, mục tiêu cuôi cùng là đạt được một bản sao
của phần mềm độc hại
2.4.2.4 HoneyPy
HoneyPyŠ là một honeypot tương tác thấp đến trung bình, được viết bằng Python
Nó được thiết kế dé trở thành một honeypot dễ cấu hình, triển khai và mở rộng
HoneyPy được xây dựng dé có thé mở rộng nên có thé dé dàng thêm các mô phỏngdịch vụ mới (plugin) cho cả giao thức dựa trên TCP hoặc UDP Việc cấu hình nhữn g
Trang 30plugin mong muôn cũng rat đơn giản, chỉ cân chỉnh các câu lệnh trong tệp
services.cfg.
Một tinh năng tuyệt vời khác là tích hợp trình xử ly log event với các công cu
khác như Twitter, HoneyDB, Slack, Logstash và Elasticsearch Các trình xử lý log
event này nhằm làm cho việc sử dụng nội dung có trong log thuận tiện hơn Thay vì
viết tập lệnh dé phân tích cú pháp tệp log và tạo cảnh báo, trình xử lý log HoneyPy
sẽ làm điều đó cho người dùng
2.4.3 Phòng thủ mục tiêu di động (MTD)
MTD là một kỹ thuật bảo vệ mạng chủ động khác đang được cộng đồng tích cựcnghiên cứu MTD đề cập đến các kỹ thuật liên tục thay đổi bề mặt tấn công của hệ
thống thông qua sự thích ứng, do đó làm tăng đáng ké tính không chắc chăn, phức
tạp và chi phí cho kẻ tan công
So với MTD, ý tưởng cơ bản của lừa déi mạng không tập trung vào việc biến đổi
hệ thống mạng của chúng ta liên tục, mà thay vào đó là đánh lạc hướng sự chú ý của
kẻ tan công khỏi các tài sản quan trong bằng cách dựa vào thông tin sai lệch được xâydựng cần thận dé tạo ra thành kiến về nhận thức và đánh lừa hành động của kẻ thù.rằng các cuộc tan công tiềm ấn được thực hiện vào các mục tiêu sai Sau đây, chúng
tôi tóm tắt những lợi thế tiềm ân của lừa đảo qua mạng đối với MTD khi triển khai
thực tế
e Giảm chi phí và tiết kiệm tài nguyên Các chương trình thích ứng hệ thống
thường phức tạp và đòi hỏi nhiều tài nguyên máy tính, mạng và phần cứng dé
hoàn thành So với MTD, lừa đảo qua mạng có thể không cần cập nhật hệ
thống đáng kế và có thé được thực hiện đơn giản và hiệu quả khi được thiết
lập chính xác.
e Hiêu rõ đôi thủ Hau hét các cơ chê bảo mật được thiệt kê dé tạo ra một ranh
giới xung quanh các hệ thống mạng và nhằm ngăn chặn các nỗ lực truy cập
bat hợp pháp Ngoài ra, MTD cố gắng thay đôi ranh giới hệ thống một cách
13
Trang 31linh động mà không có gắng hiểu nơi đối thủ có thé cố gắng xâm nhập Thôngqua sự tương tác với kẻ thù, lừa dối trên mạng cho phép chúng ta có được kiến
thức tốt hơn về kẻ thù, điều này có thể không chỉ giúp xây dựng các kế hoạchlừa dối mà còn làm cho các kỹ thuật MTD ít đột xuất hơn và hiệu quả hơn
nhiêu đê chông lại những kẻ tân công tiêm năng.
Tăng rủi ro về phía đối thủ Lừa đảo trên mạng dựa vào việc thăm dò, quan sát
và học hỏi đối thủ một cách thụ động và chủ động Khả năng triển khai cácphương pháp tiếp cận dựa trên sự lừa dối có thé ngăn chặn những kẻ tan công
không sẵn sàng chấp nhận rủi ro bị lộ, phân tích và bị lừa dối thêm Ngược lại,phòng thủ MTD yếu hơn về khả năng răn đe từ khía cạnh này Những kẻ tấn
công có thể thử tất cả các phương pháp có thể mà không lo bị quan sát và đánh
lừa Thông điệp chính là trong khi MTD tập trung vào việc thay đổi hệ thốngcủa chúng tôi dé phòng thủ, thì lừa dối mạng nhằm mục đích thay đổi đối thủ(kế hoạch tấn công của nó) để đạt được mục tiêu tương tự Thông thường,
MTD dựa vào công nghệ vượt trội để giành chiến thắng Mặt khác, lừa dối
trên mạng dựa vào kỹ thuật thông minh hơn của con người Trong bài viết này,chúng tôi đã cung cấp một cái nhìn tổng quan về nghiên cứu gian lận mạngmới nổi và xác định mô hình vòng đời cũng như các đặc điểm chính của lừadối mạng Mặc dù việc sử dụng lừa dối để tăng cường khả năng phòng thủkhông gian mạng đã cho thấy một số ứng dụng thú vị và đầy hứa hẹn, nhưng
vân cân có những nghiên cứu mới đáng kê đê thúc đây khu vực này tiên lên.
Mô hình đối thủ chính xác hơn Các kế hoạch lừa dối trên mạng thành công
phụ thuộc vào sự hiểu biết tốt về kẻ thù, đây là một nhiệm vụ day thách thức
Một mô hình đối thủ được xác định rõ ràng kết hợp ước lượng trạng thái tỉnhthần là rất quan trọng dé xây dựng một kế hoạch lừa dối và đánh giá hiệu quả
của nó.
Tham gia liên tục, nhiều nơi Việc tìm hiểu ý định, khả năng và phương pháp
đối địch đòi hỏi sự tham gia liên tục trực tiếp và gián tiếp Thường rất khó và
14
Trang 32đôi khi không thé thu thập thông tin và tìm hiểu về kẻ tan công tiềm năng machúng ta không tham gia cùng Honeypot hoặc các hệ thống giống như
honeynet có thê thu hút đối thủ và cho phép chúng tôi tham gia Các tương tácđược kích hoạt bởi hệ thống mật ong có thé mang lại cơ hội quý giá dé tìm
hiểu ý định, khả năng và mục tiêu tiềm năng của đối thủ, đồng thời giúp chúngtôi tạo ra một kế hoạch đánh lừa ban đầu và thực hiện các điều chỉnh tiếp theo
Thao túng tâm trí kẻ thù Mục đích cuối cùng của lừa dối trên mạng là đưa ra
những thành kiến về nhận thức cho kẻ thù nhằm thao túng quá trình quyết địnhcủa họ và đánh lừa họ vào những quyết định sai lầm Chúng ta cần tận dụngnhững tiễn bộ trong các lĩnh vực khác (chăng hạn như khoa học nhận thức,
khoa học quyết định và lý thuyết điều khiển hệ thống) dé có thể giúp chúng ta
nâng cao hiệu quả trong việc thao túng đối thủ.
Phân tích và định lượng khả năng sử dụng Người dùng thường xuyên là một
bộ phận của hệ thống thông tin Một kế hoạch lừa dối thành công cần đảm bảo
rằng nó có tác động tối thiêu đến người dùng bình thường Các chỉ số lừa gạt
cần kết hợp khả năng sử dụng như một phần của tiêu chuẩn đánh giá hiệu suất
của nó.
Kết hợp các phương pháp tiếp cận lừa dối và MTD Trong khi MTD điều chỉnhmột hệ thống mang dé tăng tinh đa dạng va phức tạp của nó nhằm làm cho kẻthù tấn công khó hơn và tốn kém hơn, lừa dối mạng có thê được kết hợp vớiMTD như một phương pháp bổ sung bang cách sử dụng thông tin sai lệch dédẫn đối thủ vào các hành động sai trái và làm tiêu tài nguyên Cần nghiên cứuthêm dé hiểu cách kết hợp nhuan nhuyễn cả hai kỹ thuật chủ động và cách tối
đa hóa khả năng bảo vệ chủ động Chúng tôi hình dung rằng, về sau, một khuônkhổ lừa dối mạng được xác định rõ ràng với các lĩnh vực ứng dụng cụ thể, chỉtiết đòi hỏi nghiên cứu hợp tác liên quan đến an ninh mạng và máy tính, lýthuyết điều khiển, cũng như khoa học nhận thức và tâm lý con người Những
15
Trang 33tiến bộ đạt được trong nghiên cứu đánh lừa không gian mang sẽ dẫn đến các
kỹ thuật hiệu quả cao để chủ động phòng thủ trên không gian mạng
Dé khắc phục nhược điểm của những hệ thống phòng thủ, thay đổi quan trọng cầnthiết là phải tương tác với kẻ thù trong giai đoạn đầu của chuỗi tiêu diệt mạng của họ
dé phá vỡ và vô hiệu hóa các cuộc tấn công tiềm an Nghiên cứu gần đây về kháiniệm phòng thủ chủ động đã dẫn đến hai cơ chế chính:
e MTD làm tăng tính phức tạp, da dạng và ngẫu nhiên của hệ thống mạng dé
phá vỡ kế hoạch do thám và tấn công của đối thủ
e Lira dối mạng, cung cấp thông tin hợp lý nhưng gây hiểu lam để đánh lừa
những kẻ tấn công Ca hai chương trình đều cung cấp các cách tiếp cận bổ
sung dé đánh bại các hành động tan công
2.5 Cac công nghệ khác được sử dụng trong hệ thống
2.5.1 Docker
2.5.1.1 Docker là gì?
Docker là một nền tang cho developers va sysadmin dé develop, deploy và runapplication với container Nó cho phép tạo các môi trường độc lập và tách biệt dé
khởi chạy và phát triển ứng dụng và môi trường này được gọi là container Khi cần
deploy lên bất kỳ server nào chỉ cần run container của Docker thì application sẽ được
khởi chạy ngay lập tức.
Docker bao gồm các thành phan chính:
e Docker Engine: dùng dé tạo ra Docker image và chạy Docker container
e Docker Hub: dịch vụ lưu trữ giúp chứa các Docker image.
2.5.1.2 Lợi ích của Docker
e Không như máy ảo Docker start và stop chỉ trong vài giây.
© Có thể khởi chạy container trên mọi thống có hỗ trợ
16
Trang 34e Container có thé build và loại bỏ nhanh hơn máy ảo.
e Dễ dàng thiết lập môi trường làm việc Chi can config 1 lần duy nhất và không
bao giờ phải cai đặt lại các dependencies Nếu người dùng thay đổi máy hoặc
có người mới tham gia vào project thì chỉ cần lay config đó và đưa cho ho
e N6 giữ cho work-space sạch sẽ hơn việc xóa môi trường mà ảnh hưởng đên
tượng Docker như images, containers, network và volumn Một daemon cũng có thê
giao tiêp với các daemon khác dé quan lý các Docker services.
Docker registries: Các Docker image có thé được đăng ký lưu trữ một cách dễdàng qua Docker Hub va Docker Cloud để có thé day lên vào kéo về dé dàng các
images.
Docker objects:
17
Trang 35IMAGES: là các template read-only hướng dẫn cách tạo ra các Docker
container image được sử dụng dé đóng gói ứng dụng và các thành phần phụthuộc của ứng dụng Image có thể được lưu trữ ở local hoặc trên một registry
Vi dụ ban có thé xây dung | image trên ubuntu, cài Apache server, cũng nhưcau hình chi tiết nhưng thứ cần thiết
CONTAINERS: I Container là 1 runable instance của image Người dùng có
thé tạo, chạy, dừng, xóa hoặc di chuyên container sử dụng Docker API hoặcCLI cũng như có thé kết nối 1 hoặc nhiều network, lưu trữ nó, hoặc thậm chí
tạo ra 1 image mới dựa trên trang thái của nó Mặc định thì một container được
tách biệt với các container khác và host machine.
SERVICES: Service cho phép mở rộng các contaners thông qua Docker
daemons, chúng làm việc với nhau như | nhóm (swarm) với machine manager
và workers Mỗi một member của swarm là 1 daemon Docker giao tiếp vớinhau bang cách sử dung Docker API Theo mặc định thi service được cân ban g
tải trên các nodes.
NETWORKS: Cung cấp một private network mà chỉ tổn tại giữa container và
Trang 36—”*»“—X Vawsez |
(C) Lu\ Hevveva, LO\b
Hình 2.5 Các lệnh phố biến của Docker Client và mối quan hệ giữa
các thành phan
2.5.2 Ansible
2.5.2.1 Giới thiệu Ansible
Ansible là một công cụ tự động hóa CNTT Nó có thể định cấu hình hệ thống,
triển khai phần mềm và sắp xếp các tác vụ CNTT nâng cao hơn như triển khai liêntục hoặc cập nhật luân phiên thời gian chết.
Mục tiêu chính của Ansible là đơn giản va dé sử dụng Nó cũng tập trung mạnh
mẽ vào tính bảo mật và độ tin cậy, có tối thiểu các bộ phận chuyên động, sử dụng
OpenSSH dé vận chuyên (với các phương tiện vận chuyên và kéo khác là lựa chọn
thay thế) và một ngôn ngữ được thiết kế xoay quanh khả năng nghe của con người —
ngay cả những người không quen thuộc chương trình Bang 2.1 so sánh một vai thông
sô của Ansible với các công cụ tương đương khác.
19
Trang 37Bảng 2.1 So sánh một vài thông số về Ansible, SaltStack, Chef, Puppet trên
Ansible sử dụng kiến trúc agentless để giao tiếp với các máy khác mà không cần
agent Cơ bản nhất là giao tiếp thông qua giao thức SSH trên Linux, WinRM trên
Windows hoặc giao tiếp qua chính API của thiết bị đó cung cấp
ANSIBLE ARCHITECTURE edurekal
INVENTORY
</>
`
MODULES PLUGINS YSANSIBLE PLAYBOOK NETWORKING
Hình 2.6 Kiến trúc Ansible
5 https://cloudcraft.info/gioi-thieu-ve-ansible/#Gioi_thieu_Ansible
20
Trang 38Ansible có thé giao tiếp với rất nhiều platform, OS và loại thiết bị khác nhau TừUbuntu, CentOS, VMware, Windows cho tới AWS, Azure, các thiết bị mạng Cisco
và Juniper (hoàn toàn không cần agent khi giao tiếp)
Chính cách thiết kế này làm tăng tính tiện dụng của Ansible do không cần phảisetup bảo trì agent trên nhiều host Có thể coi đây là một thế mạnh của Ansible so với
các công cụ có cùng chức năng như Chef, Puppet, SaltStack.
Hình 2.7 Tổng quan hoạt động của Ansible
2.5.2.3 Playbook
Playbooks ghi lại và thực thi các chức năng cấu hình, triển khai và điều phối củaAnsible Chúng có thể mô tả chính sách người quản trị muốn hệ thống từ xa của mình
thực thi hoặc một tập hợp các bước trong quy trình CNTT chung.
Nếu mô-đun Ansible là công cụ trong xưởng làm việc, thì playbook là sách hướng
dẫn và danh sách máy chủ là nguyên liệu thô.
21
Trang 39Ở cấp độ cơ bản, playbook có thể được sử dụng dé quản lý cấu hình và triển khai
tới các máy từ xa Ở cấp độ nâng cao hơn, chúng có thê trình tự triển khai nhiều tầng
liên quan đến cập nhật luân phiên và có thể ủy quyền hành động cho các máy chủ
khác, tương tác với máy chủ giám sát và bộ cân băng tải trong suôt quá trình.
Playbook được thiết kế để con người có thể đọc được và được phát triển bằng
ngôn ngữ văn ban cơ bản Một Ansible Playbook là môt file ở định dạng YAML
(.yml), nó ở dạng list và chứa một hoặc nhiều "play"
e Play: mỗi "play" dùng để kết nối (map) một nhóm các "host" với một vài
"role" Roles trong playbook được gọi là "tasks".
e Role và task: một task thực hiện gọi đến một Ansible mô-đun nào đó
Ansible Playbook Structure LA]
Snort là một hệ thong phát hiện xâm nhập được cai dat trên hệ thống mạng rất phô
biên và được sử dụng rộng rãi Đây là một công cụ rât dê đê sử dụng, mã nguôn mở.
22
Trang 40Hiện tại đang được phát triển bởi Cisco Nó chứa rất nhiều câu lệnh dé đáp ứng nhucầu của người dùng, nhưng không ràng buộc quá gay gắt phải sử dụng cùng nhau.
Snort hoạt động ở 3 chế độ:
e Sniffer: Bắt gói tin trong hệ thống mang rồi hiển thị chúng liên tục trên cửa số
dòng lệnh (screen).
e Packet Logger: Ghi lại các gói tin vào 6 đĩa
¢ Network Intrusion Detection System (NIDS): Dùng dé phát hiện và phân tích
lưu lượng mạng, nhằm phát hiện ra những hành vi bất thường
2.5.3.2 Nguyên lý hoạt động
Snort là một signature-based IDS Nó có thé phát hiện những hành vi, hoạt
động đáng ngờ bằng cách thu thập các gói tin, tổng hợp phân tích, rồi so sánh
chúng với những rule được thiết lập trước nhằm đưa ra cách cảnh báo hoặc hoạtđộng cần thiết
process
Hình 2.9 Luéng hoạt động của Snort
Quá trình đó diễn ra như sau:
e Decode: Gói tin thu thập được giải mã dé xác định những thông tin như địa
chỉ nguồn, địa chỉ đích, port nguồn, port đích Trong giai đoạn nay cũng tiến
hành kiểm tra sự bất thường trong cách đóng gói của các giao thức khác nhau
trong quá trình giải mã.
e Pre-process: Các gói tin đã được giải mã, sẽ được tông hợp và tiền xử lý trước
dé xác định mục đích và nội dung thông điệp (message) Ở bước này tiến hành
sắp xếp lại các đoạn IP và tổng hợp các đoạn TCP để tạo nên đơn vị dữ liệutrong giao thức gốc (protocol data unit - PDU) Các PDU này được phân tích
và chuân hóa thêm (nêu cân thiêt).
23