TỔNG QUAN VỀ HỆ THỐNG PHÁT HIỆN XÂM NHẬP TRÊN THIẾT BỊ ĐẦU CUỐI Chương 1 trình bày khái quát chung về hệ thống phát hiện xâm nhập IDS và công cụ để xây dựng hệ thống phát hiện xâm nhậ
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THONG
KHOA AN TOÀN THÔNG TIN
oe
——
ĐỎ ÁN TÓT NGHIỆP ĐẠI HỌC
DE TAI: UNG DUNG PHAT HIEN BAT THUONG TREN
HE DIEU HANH MACOS
Giảng viên hướng dẫn : PGS.TS Đỗ Xuân Chợ
Hà Nội 2024
Trang 2HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THONG
KHOA AN TOÀN THÔNG TIN
oe
——
ĐỎ ÁN TÓT NGHIỆP ĐẠI HỌC
DE TAI: UNG DUNG PHAT HIEN BAT THUONG TREN
HE DIEU HANH MACOS
Giảng viên hướng dẫn : PGS.TS Đỗ Xuân Chợ
Mã sinh viên : BI9DCATI121
Hà Nội 2024
Trang 3Đồ án tốt nghiệp đại học
LOI CAM ON
Lời đầu tiên, em xin gửi lời cảm ơn sâu sắc tới Thầy giáo PGS.TS Đỗ
Xuân Chợ đã tận tình chỉ bảo, hướng dẫn em trong quá trình thực hiện đề tài
đồ án này Nhờ sự giúp đỡ nhiệt tình và những bài học vô cùng quý báu của Thầy mà em rút ra được nhiều bài học kinh nghiệm cũng như định hướng để
có thê hoàn thành quá trình nghiên cứu và hoàn thiện dé tài đồ án tốt nghiệp này
Em xin chân thành cảm ơn các Thầy, các Cô trong Khoa An toàn
thông tin nói riêng vả toàn thể các cán bộ, giảng viên các bộ môn của Học
viện Công nghệ Bưu chính Viễn thông nói chung đã tạo điều kiện để em có
một môi trường học tập rất tốt dé hoàn thiện va phát triển bản thân Cảm ơn các Thầy, Cô đã chỉ cho em rất nhiều kiến thức không chỉ về kiến thức chuyên môn mà còn cả kinh nghiệm học tập, kỹ năng sống và làm việc Đó
là hành trang tuyệt vời dé bản thân em cũng như các bạn khác học tập để có một hành trang vững chắc để đi tiếp những chặng đường tiếp theo đang chờ đón trong tương lai
Do vốn kiến thức và tầm hiểu biết cũng như kỹ năng, kinh nghiệm chuyền môn của em còn nhiều hạn chế nên trong quá trình thực hiện và hoàn
thiện đồ án em không tránh khỏi những thiếu sót Em rất mong nhận được sự
góp ý của các thầy cô đề đề tài của mình được hoàn thiện hơn
Em xin chân thành cảm ơn!
Hà Nội, ngày 02 tháng 01 năm 2024
SINH VIÊN THỰC HIỆN ĐÒ ÁN
Nguyễn Thị Quỳnh Mai
Nguyễn Thị Quỳnh Mai - D19CQAT01-B
Trang 4Đồ án tốt nghiệp đại học
NHAN XET, DANH GIA, CHO DIEM
(Của người hướng dẫn)
Đồng ý/Không đồng ý cho sinh viên bảo vệ trước hội đồng châm đồ án tốt
nghiệp
Hà Nội, ngày 02 tháng 01 năm 2024
GIẢNG VIÊN HƯỚNG DẪN
(Ký và ghi rõ họ tên)
Trang 5
Đồ án tốt nghiệp đại học
NHAN XET, DANH GIA, CHO DIEM
(Của người phản biện)
Đồng ý/Không đồng ý cho sinh viên bảo vệ trước hội đồng châm đồ án tốt
nghiệp
Hà Nội, ngày 02 tháng 01 năm 2024
GIẢNG VIÊN PHÁN BIEN
(Ký và ghi rõ họ tên)
Trang 6
Đồ án tốt nghiệp đại học
MỤC LỤC
MỤC LUỤC 2 55-25222S 2E 2E1E2121127121121111121121111121111111 2111111111111 re iv DANH MỤC HÌNH ẢNH 2-52 S22E2E521521121121121121121121121121 1111 ce vii DANH MỤC CÁC TỪ VÀ THUẬT NGỮ VIẾT TÁTT - 2 s22 s+zszsz+x2 X 0908957172257 ::.‹.1 1 CHUONG 1 TONG QUAN VE HE THONG PHAT HIEN XAM NHAP
TREN THIET BI DAU CUOD 0 ccccccscsscsssessesssessesssessesssessessecssessessssssesessseaseseees 2 1.1 Giới thiệu về hệ thống phát hiện xâm nhập - 2- 2 s2 zzxzce2 2 1.1.1 Khái niệm IDS 2 2 S2 2EE£EEC2EEEEEEEEE2E1271E71 7171112112 re 2 1.1.2 Phân loại IIDS 2 2 S2+SE£EE£2EESEEEEE2E1271711221711211 21121 1T crxe 3
1.1.3.1 Phát hiện xâm nhập dựa trên chữ ký 5 55s Sex 4
1.1.3.2 Phát hiện xâm nhập dựa trên bất thường 2 2 25s: 4
1.2 Hệ thống phát hiện xâm nhập sử dụng Wazuh tích hợp Elastie Stack và
liy 1 5
1.2.1 Giới thiệu về Wazuh -. - 2 Ss ST TT E2 1211211111111 11x errd 5
IV) V?2)Ì)( 8 cọ: iitdá53aẠỊỤẶẠ4 6
IV À£y2ì) 0:20 4 7
1.2.2.4 Wazuh agent eccccceeecccesneecessneceeneeeeneesenaeeesnaeeeeesaeeeeesennaeeees 10
1.2.3 Gidi thidu vé Elastic Stack c.c.cccccccccccsessessesssessessescseseseseeeeseeeees 12 1.2.4 Giới thiệu về Suri€ata -¿- 5c s11 E1 1811111181111 1y, 12
giám sát thiêt bị đầu cuôi - - c2 13211332111 35111 5111 111111 1 kg ngư 13
1.3 Kết chương 2-2 s22 E2 x2 12E157121111112111111111111 1111111 ee 14 CHƯƠNG 2 CÀI ĐẶT VÀ CẤU HÌNH ỨNG DỤNG -5- 255-552 15 2.1 M6 hinh trién khai hé thong cece ccseeceseeseeseeseeseeseessessesseeeseeseees 15 2.2 Cài đặt hệ thống 2-52 2 S1 E1 1121121121121121121121121121121121111 11211 re l6
2.2.1 Môi trường cài đặt - nnS SH * HH TH ng ng HH ket 16
Trang 7
Đồ án tốt nghiệp đại học
2.2.2.1 Cai dat Wazuh va Elastic Stack cccccccceceseeeeeseeesseeeeeees 16
2.2.2.2 Cài đặt Suricafa - 5: cscctc T21 221101121101121211 1e 22
2.3 Câu hình ứng dụng 2-2-2 ®+ s+SE£EE£EE£EE£EEEEEEEEEEEEEEEEEEEEErErrkrrkerkree 23
2.3.1 Giám sát các tiến trình ¡110.77 23
2.3.1.1 Câu hình macOS ageni - css eesesssssessessesssssesseseeseesteneees 23
2.3.2 Giám sát tài nguyên trên điểm cuối maeOS 25-55: 24 2.3.2.1 Cấu hình điểm cuối maeOS - 2-2: 2 S2x2£xc£xzxezxered 27 2.3.2.2 Cấu hình Wazuh $erVeT - - 2-52 s22E‡EEEEEEEEEEEEkrrrrrrkrree 27
2.3.3 Phát hiện các lỗ hồng bảo mậtt - 22 St +x+EeEzEeEeErkererxred 30
2.3.5.1 Phát hiện phần mềm độc hại sử dụng FIM tích hợp Virustotal .40
2.3.5.2 Phát hiện phần mềm độc hại sử dụng FIM tích hop YARA 41
2.4 K6t CHWON Goce cccceccccceessssssessessesscssesscsuessesecsuessesstsutsnesatssesatsatsseeseaseseeees 53 CHUONG 3 THUC NGHIEM VA DANH GIÁ - 2-52 s+cs+zszcszceẻ 54
3.1 Thực nghiệm giám sát tính toàn vẹn của tệp tỉn -<<- 54
3.1.2 Két qua thure nghigi 0 c.ccccceccccecececsessessecsessessessessessessessessessesseenees 55
3.2 Thue nghiém phát hiện phần mềm độc hại 2-22 2 2+S+S2zS+ 57 3.2.1 Phát hiện phần mềm độc hại sử dụng FIM tích hợp Virustotal 57
3.2.1.2 Kết quả thực nghiệm 2: ¿+ + +E££E££E2E£EZEcEErErkrrrrree 58
3.2.2.2 Kết quả thực nghiệm 2 SE E231 7xx crrrree 63
3.3 Thực nghiệm phát hiện xâm nhập qua mạng - -s+++ss>+++s 65
3.3.1 Phát hiện tắn công từ chối dich vu Denial of Services (DoS) TCP
Trang 8Đồ án tốt nghiệp đại học
3.3.2.2 Kết quả thực nghiệm - - ¿SE +E£E2E£E 2E cEkrErkrrrrree 69
3.4 Kết chương 2 s+St+E2E121121121121121121121111111111 1111111111111 re 70
KẾT LUẬN - 5c S1 E21 E12E121715112112111211211111111111111 1111111112111 te 71
TAI LIEU THAM KHẢO - 2-52 2+S22EE2EE2EE2EE2EEEEEEEEEEEEEEEEEEEErEEEkrkerrred 72
I3;i08000i0.Ả Ô 73
Trang 9
Đồ án tốt nghiệp đại học
DANH MỤC HÌNH ẢNH
Hình 1: Thành phần của Wazuh Server ccc +: 6
Hình 2: Bảng điều khiển Wazuh cccccc cv: 9
Hình 3: Bảng điều khiển Wazuh từng Agents - 9
Hình 4: Bảng quản lý nền tảng của Wazuh ‹‹ -: 10
Hình 5: Thành phần của Wazuh agent - - 10
Hình 6: Mô hình tổng quan triển khai hê thống - 15
Hình 7: Kiến trúc của hê thống Wazuh kết hợp Elastic Search 17
Hinh 8: Cau hinh network cho Elastic Search - - 18
Hình 9: Cấu hình loại Elastic Search -s-+: 18 Hình 10: Tạo mật khẩu ngẫu nhiên cho Elastic Search 18
Hình 11: Kích hoạt khóa bí mật cho Kibana 19
Hình 12: Cấu hình địa chỉ IP và cổng truy cập cho Kibana 19
Hình 13: Cấu hình khóa bí mật cho Kibana ‹-.-‹.-‹ 20
Hình 14: Bật module Wazuh cho Filebeat -.‹-.‹ : 21
Hình 15: Cấu hình địa chỉ IP và cổng cho Kibana và Elasticsearch ¬— EEE EEE EE DESH EEDA EE EE EE EE EE EE EEE EA EE EA EA EAE SEES EEE HEHEHE EES 21 Hình 16: Cấu hình agent giám sát tiến trình đang chạy 23
Hình 17: Khởi đông lại Wazuh agent - c c2 23 Hình 18: Cấu hình rule để giám sát các tiến trình đang chạy 24
Hình 19: Khởi đông lại Wazuh Manager - -. -‹ 24
Hình 20: Cảnh báo tại Module Security events trên Wazuh DaSNDOAMC SE nh nh Ki ki ki ky 24 Hình 21: Xem mức đô sử dụng CPU trên macOS 25
Hình 22: Kiểm tra mức tải trung bình của CPU 25
Hình 23: Xem mức đô sử dụng bô nhớ của macOS 25
Hình 24: Kiểm tra mức đô sử dụng đĩa của hê thống file 26
Hình 25: Kiểm tra mức đô sử dụng mạng trên macOsS 26
Hình 26: Cấu hình điểm cuối giám sát tài nguyên hê thống 27
Hình 27: Cấu hình decoder bô nhớ và CPU để giám sát tài nguyên điểm CUỐI 001111111 HH ng ng ven 28 Hình 28: Cấu hình decoder ổ đĩa và mạng để giám sát tài nguyên 251830211177 a n Õẽă 28 Hình 29: Tạo rule để giám sát tài nguyên hệ thống 29
Hình 30: Trình phát hiên lỗ hổng bảo mật tạo ra cảnh báo trong quá trình quét cơ bản cho mọi lỗ hổng được phát hiên 31
Hình 31: Trình phát hiên lỗ hổng tạo ra cảnh báo khi phát hiên các lỗ hổng mới hoặc khi người dùng sửa các lỗ hổng đã xác định 32
Hình 32: Kích hoạt module phát hiên lỗ hổng bảo mật 33
Trang 10
Đồ án tốt nghiệp đại học
Hình 33: Dashboard các lỗ hổng bảo mật trên máy agert 34
Hình 34: Thông tin chi tiết của môt lỗ hổng bảo mật 34
Hình 35: Kiến trúc của module giám sát tính toàn vẹn của file 35
Hình 36: Cấu hình module giám sát tính toàn vẹn của file trên máy agQen ccnnnnnn HH TT TT KT TT ng ng nh ch nh 36 Hình 37: Nhóm quy tắc syscheck phát hiên các sự kiên FIM trong thư mục được giám sát -cnSnSnSn nh hưu 37 Hình 38: Dữ liêu kiểm kê của module FIM ‹ -‹- 37
Hình 39: Thông tin chỉ tiết tính toàn vẹn của file 38
Hình 40: Dữ liêu tổng quan của module FIM - 38
Hình 41: Dữ liêu của môt agent trong module FIM 39
Hình 42: Các sự kiên cảnh báo được kích hoạt của module FIM 39
Hình 43: Cấu hình tích hợp Virustotal để giám sát file 41
Hình 44: Tạo rule để giám sát file tích hợp Virustotal 41
Hình 45: Quá trình giám sát file tích hợp YARA - 42
Hình 46: Script YARA để phản hồi trực tiếp khi FIM phát hiên tính toàn vẹn CỦa fiÍ@ -. n9 HH SH HT ng nh ng nhu khu như cư, 43 Hình 47: Cấu hình đường dẫn đến active-response.log 44
Hình 48: Cấp quyền cho script YARA cccc cà sằ2 44 Hình 49: Kiểm tra các quyền của file active-response 44
Hình 50: Cài đặt jq để xử lý dữ liêu JSON từ FIM 45
Hình 51: Tạo decoder cho rule phát hiên tính toàn vẹn của file .45 Hình 52: Nhóm quy tắc yara cảnh báo khi tích hợp YARA tìm thấy phần mềm đôc hại trong thư mục điểm cuối được giám sát 46
Hình 53: Cấu hình thực thi script YARA -. cccccs+c2 46 Hình 54: Kích hoạt Community ID của Suricata 47
Hình 55: Kiểm tra thông tin của mạng - ‹ -‹ -‹- 47
Hình 56: Đặt giá trị của biến interface thành tên thiết bị của hê thống tại phần af-packet -‹‹ccc 111v xa 48 Hình 57: Đặt giá trị của biến interface thành tên thiết bị của hê thống tại phần pcap - ‹‹ - n1 11 SH n kh như, 48 Hình 58: Cập nhật các rule của Suricata - - -.‹ - 49
Hình 59: Kiểm tra trạng thái của Suricata . . - 49
Hình 60: Các sự kiên mà Suricata nhận được 49
Hình 61: Tạo integration để gửi cảnh báo về Telegram 50
Hình 62: Mã cấu hình nôi dung gửi cảnh báo về Telegram 51
Hình 63: Cấp quyền cho các file được tạo để gửi cảnh báo về I2 el2:didđadadaidiiiiddiiẳiŸ£Ả 51
Hình 64: Kiểm tra các quyền của file trong integration 51
Hình 65: Thêm integration gửi cảnh báo Telegram trên Wazuh a1 52
Trang 11
Đồ án tốt nghiệp đại học
Hình 66: Các cảnh báo được gửi về Telegram 52
Hình 67: Tải file vào thư mục giám sát - - ‹ -‹ x+- 55 Hình 68: Thông tin file được module FIM quét được 55
Hình 69: Thông tin chỉ tiết sự kiên thay đổi file 56
Hình 70: Thông tin chỉ tiết sự kiên xóa file - ‹ : 56
Hình 71: Cảnh báo thêm, sửa, xóa file gửi về Telegram 57
Hình 72: Tải file eicar.com về thư mục giám sát 59
Hình 73: Tải file mã đôc SysJoker về thư mục giám sát 59
Hình 74: Thông tin các file được module FIM giám sát được 59
Hình 75: Thông tin các file module FIM quét được tích hợp ViFUSfOfAÌL cu TT TK TT nh ninh nà ky 60 Hình 76: Thông tin chỉ tiết về file mã đôc SysJoker trên Virustotal ¬— 60 Hình 77: Thông tin chỉ tiết về file eicar.com trên Virustotal 61
Hình 78: Cảnh báo về Telegram các file Viruatotal phát hiên được errr er err 61 Hình 79: Cảnh báo của file mã đôc SysJoker được phát hiên bởi 2117 DĐ 63 Hình 80: Thông tin chỉ tiết về file SysJoker mà YARA quét được .64 Hình 81: Cảnh báo của file Lockbit được phát hiên bởi YARA 64
Hình 82: Thông tin chỉ tiết của file Lockbit được phát hiên bởi YARRA I EE EEE EEE EEE 64 Hinh 83: Canh bao Telegram các file YARA phát hiên được 65
Hình 84: Tấn công TCP SYN Flood vào máy agent 66
Hình 85: Thông tin các rule Suricata bắt được - G7 Hình 86: Nôi dung file fast.log của Suricata - ‹ : 67
Hình 87: Thông tin chỉ tiết về rule Suricata phat hién TCP SYN I2 ener neat 68 Hình 88: Truy cập url http://testmynids.org/uid/index.html 69
Hình 89: Thông tin chỉ tiết rule Suricata phát hiên truy cập web
VỚI QUYỀN CâO c c0 Q12 SS HH nn ng ng ng ky ky 69
Trang 12
STT | Thuật ngữ Từ viết tắt Y nghĩa
công khai
tệp tin
do Google cung cấp
Nguyễn Thị Quỳnh Mai - D19CQAT01-B
Trang 13Đồ án tốt nghiệp đại học
trang web
tin giữa server và client
14 ID Identification Số hoặc ký tự để xác định
đối tượng, phân biệt giữa các
đối tượng khác Đảm bảo
đữ liệu
Control vai trò, gán quyền người
dùng dựa trên vai trò trong tổ
chức
configuration assessment | Xác minh hệ thống tuân thủ
Trang 14
Đồ án tốt nghiệp đại học
quy tặc, xác định điêm yêu
và vá chúng đê làm giảm bê
đăng nhập một lần trên một
trang duy nhất để truy cập tất
cả các ứng dụng
khác
27 | TLS/SSL | Transport Layer Security/ | Bao mat lớp truyền tải/ Lớp
hóa đữ liệu trong mạng
28 UDP User Datagram Protocol Giao thức dữ liệu người
Trang 16Đồ án tốt nghiệp đại học
LỜI MỞ ĐẦU
Trong bối cảnh kinh doanh hiên đại đang chứng kiến ngày
càng nhiều mối đe dọa an ninh mạng từ tôi phạm mạng ngày
càng tỉnh vi Tin tặc tiến hành môt cuôc tấn công mạng cứ sau 39
giây, với tổng số 2.244 cuôc tấn công hàng ngày Điểm cuối là
môt trong những mục tiêu phổ biến nhất, với số lượng lớn chúng được sử dụng để kết nối với mạng Mọi điểm cuối kết nối với mạng
đều là môt lỗ hổng, tạo điểm truy cập tiềm năng cho tôi phạm
mạng Do đó, mọi thiết bị sử dụng để kết nối với bất kỳ hê thống
hoặc tài nguyên nào đều có nguy cơ trở thành con đường được
chọn để xâm nhập vào tổ chức Những thiết bị này có thể bị phần
mềm độc hại khai thác để rò rỉ hoặc đánh cắp dữ liêu nhạy cảm
của doanh nghiệp
Trước tình hình này, các doanh nghiệp bắt buộc phải triển
khai các giải pháp có thể phân tích, phát hiên, sau đó ngăn chặn
các cuôc tấn công mạng khi chúng xảy ra Các tổ chức cũng cần
công tác với nhau và sử dụng các công nghê cung cấp cho đôi
ngũ CNTT và bảo mật khả năng hiển thị các mối đe dọa nâng cao,
cho phép họ nhanh chóng phát hiên các rủi ro bảo mật để khắc
phục nhanh chóng các vấn đề tiềm ẩn
Đồ án được thực hiên nhằm mục đích tìm hiểu về hê thống
phát hiên xâm nhập trên điểm cuối hê điều hành macOS:
Mục tiêu đặt ra khi thực hiên đồ án là:
1 Nắm được tổng quan của hê thống phát hiên xâm nhập
2 Cài đặt và cấu hình được hê thống phát hiên xâm nhập
trên hê điều hành macOS
3 Thực nghiêm để phát hiên bất thường trên điểm cuối hê
điều hành macOS
Sau khoảng thời gian thực hiên đồ án, các mục tiêu về cơ
bản đã đạt được Ngoài mục tiêu đặt ra, tôi đã cải tiến thêm đoạn
mã để gửi cảnh báo theo thời gian thực về Telegram dựa trên các
sự kiên thu thập được Tuy nhiên, ngành an toàn thông tin là môt ngành rông, luôn luôn được phát triển và phát hiên bất thường là
môt phần trong đó Do thời gian thực hiên đồ án tương đối ngắn
Trang 17
Đồ án tốt nghiệp đại học
nên chắc chắn không tránh khỏi thiếu sót Rất mong được sự góp
ý của các thầy cô, cũng như các bạn để đồ án này được hoàn
thiên hơn
Trang 18
Đồ án tốt nghiệp đại học Chương 2
CHƯƠNG 1 TỔNG QUAN VỀ HỆ THỐNG PHÁT HIỆN XÂM
NHẬP TRÊN THIẾT BỊ ĐẦU CUỐI
Chương 1 trình bày khái quát chung về hệ thống phát hiện
xâm nhập IDS và công cụ để xây dựng hệ thống phát hiện
xâm nhập sử dụng Wazuh tích hợp Elastic Stack và Suricata
1.1 Giới thiệu về hệ thống phát hiện xâm nhập
1.1.1 Khái niệm IDS
Hê thống phát hiên xâm nhập IDS (Intrusion Detection
Systems) là công cụ bảo mật có nhiêm vụ giám sát lưu lượng mạng và thiết bị để phát hiên các hành vi đáng ngờ, hoạt đông
đôc hại đã biết hoặc vi phạm chính sách bảo mật
Hê thống phát hiên tấn công, xâm nhập IDS là môt lớp phòng
vê quan trọng trong các lớp giải pháp đảm bảo an toàn cho hê thống thông tin và mạng theo mô hình phòng thủ theo chiều sâu
Nhiêm vụ chính của hê thống IDS gồm:
e Giám sát lưu lượng mạng hoặc các hành vi trên một hê
thống để nhận dạng các dấu hiêu của tấn công, xâm
nhập
se Khi phát hiên các hành vi tấn công, xâm nhập thì ghi logs
các hành vi nhằm mục đích phân tích bổ sung sau này
se Gửi thông báo cho người quản trị về các hành vi tấn công,
xâm nhập đã phát hiên được
IDS có thể giúp tăng tốc và tự đông hóa viêc phát hiên mối
đe dọa mạng bằng cách cảnh báo cho quản trị viên bảo mật về
các mối đe dọa đã biết hoặc tiềm ẩn bằng cách gửi cảnh báo đến
môt công cụ bảo mật tập trung, chẳng hạn như hê thống quản lý
sự kiên và thông tin bảo mật SIEM, nơi chúng có thể được kết hợp
với dữ liêu từ các nguồn khác để giúp các nhóm bảo mật xác định
và ứng phó với các mối đe dọa mạng I1]
Môt hê thống IDS cần phải thỏa mãn những yêu cầu:
e Tinh chinh xac (Accuracy): IDS không được coi những hành
đông thông thường trong môi trường hê thống là những
hành đông bất thường hay lạm dụng
Trang 19
Đồ án tốt nghiệp đại học Chương 2
e Hiéu năng (Performance): Hiêu năng của IDS phải đủ để
phát hiên xâm nhập trái phép trong thời gian thực e_ Tính trọn vẹn (Completeness): IDS không được bỏ qua môt
xâm nhập trái phép nào Đây là môt điều kiên khó thỏa
mãn được
se _ Chịu lỗi (Fault Tolerance): Bản thân IDS phải có khả năng
chống lại tấn công
¢ Kha nang mé réng (Scalability): IDS phai cé kha nang xu ly
trong trạng thái xấu nhất là không bỏ sót thông tin nào Yên cầu này liên quan tới hê thống mà các sự kiên trong tương lai đến từ nhiều nguồn tài nguyên với số lượng host
nhỏ Với sự phát triển nhanh và mạnh của mạng máy tính,
hê thống có thể bị quá tải bởi sự tăng trưởng của số lượng
sự kiên
1.1.2 Phân loại IDS
Có 2 loại hê thống phát hiên xâm nhập phổ biến:
e Hê thống phát hiên xâm nhập mạng (NIDS - Network
based IDS): NIDS phân tích lưu lượng mạng để phát hiên
tấn công, xâm nhập cho cả mạng hoặc môt phần mạng Giám sát lưu lượng truy cập vào và ra tới các thiết bị trên
mạng NIDS sẽ kiểm tra các giao tiếp trên mạng theo thời gian thực Nó kiểm tra các giao tiếp, quét header của các
gói tin và có thể kiểm tra nôi dung của các gói đó để phát
hiên ra các đoạn mã nguy hiểm hay các dạng tấn công
khác nhau Môt Network-Based IDS hoạt đông tin cậy
trong viêc kiểm tra, phát hiên các dạng tấn công trên mạng, ví dụ như dựa vào băng thông (bandwidth-based)
của tấn công Denied of Service (DoS)
e« _ Hê thống phát hiên xâm nhập cho host (HIDS - Host based
IDS): HIDS phân tích các sự kiên xảy ra trong hê thống/
dịch vụ để phát hiên tấn công, xâm nhập cho hê thống đó HIDS được cài đặt trên môt điểm cuối cụ thể, giám sát hoạt đông trên thiết bị đó, bao gồm cả lưu lượng truy cập
Trang 20
Đồ án tốt nghiệp đại học Chương 2
đến và đi từ thiết bị đó HIDS giám sát và phân tích tất cả những hoạt đông về cấu hình hê thống và các file log,
hoạt đông ứng dụng, lưu lượng mạng thu thập, cuôc gọi
hé thống, lịch sử và những thông điệp báo lỗi trên hê
thống máy chủ Nhiêm vụ của HIDS là theo dõi các thay
đổi trên hê thống bao gồm:
* Cac tién trình
= Cac entry cua Registry
» Muc do su dung CPU
* Tinh trang RAM
» Kiém tra tinh toan ven va truy cap trén hé théng file Các khả năng của HIDS bao gồm kiểm tra tính toàn vẹn,
tương quan sự kiên, phân tích nhật ký, thực thi chính sách,
phát hiên rootkit, bô xử lý, bô nhớ, đĩa cứng và cảnh báo HIDS có khả năng chính xác cao hơn và ít dương tính giả
hơn NIDS vì nó phân tích các têp log nên có thể xác định
liêu môt cuôc tấn công có xảy ra thành công hay không
HIDS yêu cầu các chương trình hoặc agent được cài đặt
trên hê thống để tạo báo cáo nếu có bất kỳ hoạt đông đôc
hại nào xảy ra
HIDS sẽ duy trì cơ sở dữ liêu của các đối tượng hê thống
mà nó cần giám sát Cơ sở dữ liêu chứa thông tin quan
trọng về các đối tượng hê thống này bao gồm các thuôc
tính, thời gian sửa đổi, kích thước, tổng kiểm tra hoặc mã băm của các đối tượng hê thống
1.1.3 Các kỹ thuật phát hiện xâm nhập
1.1.3.1 Phát hiện xâm nhập dựa trên chữ ký
Phát hiên xâm nhập dựa trên chữ ký trước hết cần xây dựng
cơ sở dữ liêu các chữ ký hoặc các dấu hiêu của các loại tấn công, xâm nhập đã biết Hầu hết các chữ ký, dấu hiêu được nhận dạng
và mã hóa thủ công và dạng biểu diễn thường gặp là các luật
phát hiên (detection rule)
Trang 21
Đồ án tốt nghiệp đại học Chương 2
Bước tiếp theo là sử dụng cơ sở dữ liêu các chữ ký để giám sát các hành vi của hé thống hoặc mạng và cảnh báo nếu phát hiên chữ ký của tấn công, xâm nhập
Phát hiên xâm nhập dựa trên chữ ký có khả năng phát hiên
các tấn công, xâm nhập đã biết môt cách hiêu quả, tốc đô xử lý cao và yêu cầu tài nguyên tính toán tương đối thấp
Phương pháp này không có khả năng phát hiên các tấn công,
xâm nhập mới, do chữ ký của chúng chưa tồn tại trong cơ sở dữ liêu các chữ ký
Để có hiêu quả, cơ sở dữ liêu chữ ký phải được cập nhật
thường xuyên với thông tin tình báo về mối đe dọa mới khi các
cuôc tấn công mới xuất hiên và các cuôc tấn công hiên có phát triển
1.1.3.2 Phát hiện xâm nhập dựa trên bất thường
Phát hiên xâm nhập dựa trên bất thường gồm 2 giai đoạn:
huấn luyên và phát hiên Trong giai đoạn huấn luyên, hồ sơ của
đối tượng trong chế đô làm viêc bình thường được xây dựng Thực
hiên giám sát đối tượng trong khoảng thời gian đủ dài để thu thập
được đầy đủ dữ liêu mô tả các hành vi của đối tượng trong điều
kiên bình thường làm dữ liêu huấn luyên Trong giai đoạn phát hiên, thực hiên giám sát hành vi hiên tại của hê thống và cảnh
báo nếu có khác biêt rõ nét giữa hành vi hiên tại và các hành vi lưu trong hồ sơ của đối tượng
Phát hiên xâm nhập dựa trên bất thường có tiềm năng phát hiên các loại tấn công, xâm nhập mới mà không yêu cầu biết
trước thông tin về chúng Tuy nhiên, phương pháp này có tỷ lê
cảnh báo sai tương đối cao so với phương pháp phát hiên dựa trên
chữ ký
1.2 Hệ thống phát hiện xâm nhập sử dụng Wazuh tích hợp
Elastic Stack và Suricata
1.2.1 Giới thiệu về Wazuh
Wazuh là môt nền tảng bảo mật mã nguồn mở và miễn phí hợp nhất các khả năng của XDR và SIEM Wazuh dugc sinh ra nhu
Trang 22
Đồ án tốt nghiệp đại học Chương 2
môt nhánh của OSSEC HIDS và sau đó được tích hợp với Elastic Stack
Wazuh được sử dụng trong nhiều trường hợp:
se _ Phân tích bảo mật: Wazuh được sử dụng để thu thập, tổng
hợp, lập chỉ mục và phân tích dữ liêu bảo mật, giúp các tổ chức phát hiên các hành vi xâm nhập, mối đe dọa và hành
vi bất thường
se _ Phát hiên xâm nhập: Wazuh agent quét các hê thống được
giám sát để tìm phần mém doc hai, rootkit va cac điểm bất thường đáng ngờ Phát hiên các têp ẩn, tiến trình được
che giấu hoặc trình nghe mạng chưa đăng ký cũng như sự
không nhất quán trong phản hồi cuôc gọi hê thống Phát
hiên xâm nhập dựa trên chữ ký, sử dụng biểu thức chính
quy để phân tích dữ liêu nhật ký được thu thập và tìm
kiếm các dấu hiêu xâm phạm
se Phân tích dữ liêu nhật ký: Wazuh agent đọc nhật ký ứng
dụng và hệ điều hành, đồng thời chuyển tiếp chúng môt cách an toàn đến trung tâm quản lý để phân tích và lưu
trữ dựa trên quy tắc
se Giám sát tính toàn vẹn của têp: Wazuh giám sát hê thống
têp, xác định các thay đổi về nôi dung, quyền, quyền sở
hữu và thuôc tính của têp cần theo dõi
e Phát hiên lỗ hổng: Wazuh agent lấy dữ liêu kiểm kê phần
mềm và gửi thông tin đến máy chủ, tương quan với cơ sở
dữ liêu CVE (Common Vulnerabilities and Exposure) được
cập nhật liên tục để xác định phần mềm dễ bị tấn công
phổ biến
se Đánh giá cấu hình: Wazuh giám sát các cài đặt cấu hình
ứng dụng và hê thống để đảm bảo tuân thủ các chính
sách, tiêu chuẩn bảo mật và hướng dẫn nâng cao Agent
thực hiên quét định kỳ để phát hiên các ứng dụng được xác định là dễ bị tấn công, chưa được vá lỗi hoặc được cấu
Trang 23Đồ án tốt nghiệp đại học Chương 2
»« Ứng phó sự cố: Wazuh cung cấp các phản hồi tích cực
ngay lập tức để thực hiên nhiều biên pháp đối phó khác nhau nhằm giải quyết các mối đe dọa không hoạt đông
e Tuan thu quy định, chính sách: Wazuh cung cấp môt số
biên pháp kiểm soát bảo mật cần thiết để tuân thủ các tiêu chuẩn và quy định
e Bảo mật đám mây: Wazuh giúp giám sát cơ sở hạ tầng
đám mây sử dụng API, sử dụng các module tích hợp có
khả năng lấy dữ liêu bảo mật từ các nhà cung cấp đám
mây
se Bảo mật container: cung cấp khả năng hiển thị bảo mật
cho các máy chủ và Docker container, giám sát hành vi và
phát hiên các mối đe dọa, lỗ hổng và sự bất thường I2]
1.2.2 Thành phần của Wazuh
1.2.2.1 Wazuh server
Wazuh server chịu trách nhiêm phân tích dữ liêu nhận được
từ các agent, kích hoạt cảnh báo khi phát hiên các mối đe dọa
hoặc sự bất thường, quản lý cấu hình agent từ xa và theo dõi trạng thái của chúng
a Threat intelligence B MITRE ATT&CK R 'Wulnerability detection ee
stat ' hrest model datat
B Regulatory compliance B State of the endpoint B Integration daemon
Hình 1: Thành phần của Wazuh Server
Các thành phần chính của Wazuh server:
e Agent enrollment service: Được sử dụng để đăng ký Agent
mới bằng cách cung cấp và phân phối khóa xác thực chia
sẻ trước dành riêng cho từng Agent Quá trình này chạy
như môt dịch vụ mạng và hỗ trợ xác thực thông qua
Trang 24
Đồ án tốt nghiệp đại học Chương 2
chứng chỉ TLS / SSL hoặc bằng cách cung cấp mật khẩu cố định
e Agent connection service: Day là dịch vụ nhận dữ liêu từ
các Agent Nó sử dụng các khóa được chia sẻ trước để xác thực danh tính từng tác nhân và mã hóa thông tin liên lạc giữa tác nhân và Wazuh Server Ngoài ra, dịch vụ này
được sử dụng để cung cấp quản lý cấu hình tập trung, có thể đẩy các cài đặt tác nhân mới từ xa
se Analysis engine: Đây là quá trình thực hiên phân tích dữ
liêu Nó sử dụng bô giải mã để xác định loại thông tin
đang được xử lý (ví dụ: Windows events, SSHD logs, web
server logs, v.v.) và trích xuất các phần tử dữ liêu có liên quan từ thông báo nhật ký (ví dụ: source IP address, event
ID, username, v.v.) Tiếp theo, bằng cách sử dụng các
quy tắc (Rules), nó xác định các mẫu cụ thể trong các sự
kiên được giải mã có thể kích hoạt cảnh báo và thậm chí
có thể gọi các biên pháp đối phó tự đông (ví dụ: lênh cấm
IP trên tường lửa)
e Wazuh RESTful API: Dich vu nay cung cap giao diên dé
tương tác với cơ sở hạ tầng Wazuh Nó được sử dụng để quản lý các tác nhân và cài đặt cấu hình máy chủ, để theo
dõi trạng thái cơ sở hạ tầng và tình trạng tổng thể, quản lý
và chỉnh sửa các quy tắc (Rule) và bô giải mã Wazuh cũng
như truy vấn về trạng thái của các điểm cuối được giám
sát Nó cũng được sử dụng bởi giao diên người dùng web
Wazuh, đó là ứng dụng Kibana
e Wazuh cluster daemon: Dịch vụ này được sử dụng để mở
rông các Wazuh Server theo chiều ngang, triển khai chúng dưới dạng môt cụm Loại cấu hình này, kết hợp với bô cân
bằng tải mạng, cung cấp tính khả dụng cao và cân bằng
tải Daemon cụm Wazuh là thứ mà các máy chủ Wazuh sử
dụng để giao tiếp với nhau và giữ đồng bô hóa
e Filebeat: Nó được sử dụng để gửi các sự kiên và cảnh báo
tới Elasticsearch Nó đọc kết quả của công cụ phân tích
Trang 25
Đồ án tốt nghiệp đại học Chương 2
Wazuh và gửi các sự kiên trong thời gian thực Nó cũng
cung cấp khả năng cân bằng tải khi được kết nối với môt
cụm Elasticsearch nhiều nút
1.2.2.2 Wazuh indexer
Wazuh indexer là môt công cụ phân tích và tìm kiếm toàn
văn bản có khả năng mở rông cao Thành phần trung tâm này lập
chỉ mục và lưu trữ các cảnh báo do máy chủ Wazuh tạo ra
Wazuh indexer được lưu trữ dưới dạng JSON Mỗi tài liêu
tương ứng với môt bô khóa, tên trường hoặc thuôc tính, với các
giá trị tương ứng của chúng có thể là chuỗi, số, booleans, ngày,
mảng giá trị, vị trí địa lý hoặc các loại dữ liêu khác
e wazuh-alerts: Lưu trữ các cảnh báo được tạo bởi máy chủ
Wazuh Chúng được tạo mỗi khi môt sự kiên vượt qua quy
tắc có mức đô ưu tiên đủ cao (có thể định cấu hình)
se wazuh-archives: Lưu trữ tất cả các sự kiên (dữ liêu lưu trữ)
mà máy chủ Wazuh nhận được, cho dù chúng có vi phạm
quy tắc hay không
se wazuh-monitoring: Lưu trữ dữ liêu liên quan đến trạng thái
Wazuh agent theo thời gian Nó được giao diên web sử
dụng để biểu thị thời điểm đang hoặc đã Hoạt đông, ngắt
kết nối hoặc chưa bao giờ được kết nối
se wazuh-statistics: Lưu trữ dữ liêu liên quan đến hiêu suất
của Wazuh server, được giao diên web sử dụng để biểu thị
thống kê hiêu suất
Wazuh indexer cho phép bạn tương tác thông qua REST API,
cung cấp các tính năng linh hoạt: tìm kiếm, thêm, sửa xóa, đổi chỉ mục,
Wazuh indexer ất phù hợp cho các trường hợp sử dụng nhạy cảm với thời gian như phân tích bảo mật và giám sát cơ sở hạ
tầng vì đây là nền tảng tìm kiếm gần như thời gian thực Đô trễ từ khi tài liêu được lập chỉ mục cho đến khi có thể tìm kiếm được là
rất ngắn, thường là môt giây
Trang 26
Đồ án tốt nghiệp đại học Chương 2
Ngoài tốc đô, khả năng mở rông và khả năng phục hồi,
Wazuh indexer còn có một số tính năng tích hợp mạnh mẽ giúp
lưu trữ và tìm kiếm dữ liêu hiêu quả hơn, chẳng hạn như cuôn dữ
liêu, cảnh báo, phát hiên bất thường và quản lý vòng đời chỉ mục
1.2.2.3 Wazuh dashboard
Wazuh dashboard là giao diên người dùng web linh hoạt và
trực quan để khai thác, phân tích và trực quan hóa dữ liêu cảnh
báo và sự kiên bảo mật Nó cũng được sử dụng để quản lý và
giám sát nền tảng Wazuh Ngoài ra, nó cung cấp các tính năng
cho kiểm soát truy cập dựa trên vai trò (RBAC) và đăng nhập môt
lần (SSO)
e Truc quan hóa và phân tích dữ liêu
Giao diên web giúp người dùng điều hướng qua các loại
dữ liêu khác nhau do tác nhân Wazuh thu thập, cũng như các
cảnh báo bảo mật do máy chủ Wazuh tạo ra Người dùng
cũng có thể tạo báo cáo, tạo bảng điều khiển và trực quan
Hinh 2: Bang diéu khién Wazuh
se Giám sát và cấu hình
Bảng điều khiển Wazuh cho phép người dùng quản lý
cấu hình agent và theo dõi trạng thái
Ví dụ: đối với mỗi điểm cuối được giám sát, người dùng
có thể xác định mô-đun tác nhân nào sẽ được bật, têp nhật
ký nào sẽ được đọc, têp nào sẽ được giám sát để thay đổi
tính toàn vẹn hoặc kiểm tra cấu hình nào sẽ được thực hiên
Trang 27
Đồ án tốt nghiệp đại học Chương 2
này bao gồm theo dõi trạng thái, nhật ký và số liêu thống kê
của các thành phần Wazuh khác nhau Nó cũng bao gồm
viêc định cấu hình máy chủ Wazuh, đồng thời tạo các quy tắc và bô giải mã tùy chỉnh để phân tích nhật ký và phát hiên mối đe dọa
= B® wazuh
Hình 4: Bảng quản lý nền tảng của Wazuh
se Công cụ phát triển
Bảng điều khiển Wazuh bao gồm môt công cụ Kiểm tra
bô quy tắc có thể xử lý các thông báo nhật ký để kiểm tra
cách nó được giải mã và liêu nó có phù hợp với quy tắc phát hiên mối đe dọa hay không Tính năng này đặc biêt hữu ích
khi bô giải mã và quy tắc tùy chỉnh đã được tạo và người dùng muốn kiểm tra chúng
Bảng điều khiển Wazuh cũng bao gồm Bảng điều khiển API để người dùng tương tác với API Wazuh Điều này có thể
được sử dụng để quản lý viêc triển khai Wazuh (ví dụ: quản
Trang 28
Đồ án tốt nghiệp đại học Chương 2
lý cấu hình máy chủ hoặc tác nhân, theo dõi trạng thái và thông báo nhật ký, thêm hoặc xóa tác nhân, v.v.)
1.2.2.4 Wazuh agent
Wazuh agent có thể được cài đặt trên các hê điều hành
Windows, Linux, Solaris, BSD và Mac Các agent sẽ thu thập dữ liêu từ hê thống và ứng dụng, sau đó gửi chúng đến Wazuh server
qua môt kênh truyền đã được mã hóa và xác thực Kênh truyền an ninh này sẽ được khởi tạo bởi môt tiến trình đăng ký sử dụng các
khóa duy nhất với mỗi agent
Block network connection AWS, Azure & GCP services
Security configuration assessment
ClS baselines Stop running process 5 Other third-party vendors
e Log collector: Thu thập các thông báo, sự kiên của hê điều
hành Bô thu thập cũng hỗ trợ bô lọc XPath cho các sự
kiên Windows và nhận dạng các định dạng nhiều dòng
Linux Audit logs Nó cũng có thể bổ sung thêm các sự kiên JSON bằng siêu dữ liêu bổ sung
¢ Command execution: Cac tac nhân chạy các lênh được ủy
quyền theo định kỳ, thu thập đầu ra của chúng và báo cáo lại cho máy chủ Wazuh để phân tích thêm
e File integrity monitoring (FIM): Mô-đun này giám sát hé
thống têp, báo cáo khi têp được tạo, xóa hoặc sửa đổi Nó
theo dõi các thay đổi trong thuôc tính têp, quyền, quyền
sở hữu và nôi dung Khi môt sự kiên xảy ra, nó sẽ nắm bắt
thông tin chỉ tiết về ai, cái gì và khi nào trong thời gian
Trang 29
Đồ án tốt nghiệp đại học Chương 2
thực Ngoài ra, mô-đun FIM xây dựng và duy trì cơ sở dữ
liêu với trạng thái của các têp được giám sát và cho phép
chạy các truy vấn từ xa
e Security configuration assessment (SCA): Thành phần này
cung cấp đánh giá cấu hình liên tục, sử dụng các kiểm tra
sẵn dùng dựa trên các điểm chuẩn của Trung tâm An ninh
Internet (CIS) Người dùng cũng có thể tạo các kiểm tra SCA của riêng mình để theo dõi và thực thi các chính sách bảo mật dành riêng cho hê thống của mình
se System inventory: Mô-đun tác nhân này chạy quét định
kỳ, thu thập dữ liêu kiểm kê như phiên bản hê điều hành,
giao diên mạng, quy trình đang chạy, ứng dụng đã cài đặt
và danh sách các cổng đang mở Kết quả quét được lưu trữ trong cơ sở dữ liêu SQLite cục bô có thể được truy vấn
từ xa
se Malware detection: Sử dụng cách tiếp cận không dựa trên
chữ ký, thành phần này có khả năng phát hiên sự bất
thường và sự hiên diên có thể có của rootkit Ngoài ra, nó tìm kiếm các quy trình ẩn, têp ẩn và cổng ẩn trong khi
giám sát các cuôc gọi hê thống
e Active response: Mô-đun này chạy các hành đông tự đông
khi phát hiên thấy các mối đe dọa, kích hoạt các phản hồi
để chặn kết nối mạng, dừng môt quy trình đang chạy hoặc
xóa môt têp đôc hại Người dùng cũng có thể tạo các phản
hồi tùy chỉnh khi cần thiết
¢ Container security monitoring: Mé-dun tac nhan nay duoc
tich hop véi Docker Engine API dé giám sát các thay đổi
trong môi trường được chứa
¢ Cloud security monitoring: Thanh phan nay giám sát các
nhà cung cấp dam may nhu Amazon AWS, Microsoft Azure
hoặc Google GCP Nó tự nhiên giao tiếp với các API của họ
Nó có khả năng phát hiên các thay đổi đối với cơ sở hạ
tầng đám mây (ví dụ: người dùng mới được tạo, nhóm bảo
mật được sửa đổi, phiên
Trang 30
Đồ án tốt nghiệp đại học Chương 2
Ngoài ra, Wazuh agent còn có nhiêm vụ kết nối với wazuh server và gửi đi các dữ liêu đã thu thập ,sự kiên liên quan đến bảo
mật Giao tiếp giữa wazuh server và wazuh agent diễn ra qua
kênh bảo mật (TCP hoặc UDP), cung cấp mã hóa và giải nén trong thời gian thực
1.2.3 Giới thiệu về Elastic Stack
Elastic Stack là môt bô gồm các công cụ mã nguồn mở được triển khai nhằm mục đích thu thập, phân tích, thống kê, tìm kiếm
và trực quan hóa dòng dữ liêu (Data Stream) theo thời gian thực,
bao gồm Elasticsearch, Kibana, Filebeat, Logstash, Các công cụ
của Elastic stack được sử dụng trong Wazuh gồm:
e Elasticsearch: máy chủ lưu trữ và tìm kiếm dữ liêu Môt
công cụ tìm kiếm và phân tích mạnh mẽ với chức năng full-text search cũng như khả năng mở rông cao Elasticsearch được tổ chức phân phối, nghĩa là dữ liêu
(index) sẽ được chia thành các phân đoạn cơ sở dữ liêu
(shard) và mỗi phân đoạn có thể có 0 hoặc nhiều bản sao
se Kibana: Cung cấp môt giao diên web linh hoạt và trực
quan cho mining, phân tích, và trình bày dữ liêu Kibana
được sử dụng để trừu tượng hóa dữ liêu, xây dựng các biểu đồ, báo cáo, màn hình giám sát và phân tích dữ liêu
thời gian thực từ nguồn dữ liêu trong ElasticSearch
e Filebeat: thu thập các sự kiên để gửi các kiểu dữ liêu khác
nhau tới Elasticsearch
Wazuh tích hợp Elastic Stack để lưu trữ và index các log đã được giải mã với Elasticsearch, và sử dụng như môt giao dién
console real-time để theo dõi các alert và phân tích log Bên cạnh
đó, giao diên người dùng của Wazuh (chạy trên Kibana) cũng có
thể được sử dụng để quản lý và giám sát hạ tầng của Wazuh
1.2.4 Giới thiệu về Suricata
Suricata là môt hê thống phát hiên xâm nhập dựa trên mã
nguồn mở, được phát triển bởi Open Information Security
Foundation (OISF)
Trang 31
Đồ án tốt nghiệp đại học Chương 2
Suricata là môt công cụ giám sát an ninh mạng (NSM - Network Security Mornitoring) sử dụng tập hợp các chữ ký do công đồng tạo ra và do người dùng xác định (còn được gọi là các
quy tắc) để kiểm tra và xử lý lưu lượng mạng Suricata có thể tạo
các sự kiên nhật ký, kích hoạt cảnh báo và giảm lưu lượng khi
phát hiên các gói hoặc yêu cầu đáng ngờ đối với bất kỳ dịch vụ
khác nhau đang chạy trên máy chủ [3]
Theo mặc định, Suricata hoạt đông như môt hê thống phát hiên xâm nhập thụ đông (IDS - Intrusion Detection System) để
quét các lưu lượng đáng ngờ trên máy chủ hoặc mạng Nó sẽ tạo
ra và ghi lại các cảnh báo để điều tra thêm Nó cũng có thể được định cấu hình như môt hê thống ngăn chặn xâm nhập đang hoạt
đông (IPS) để ghi nhật ký, cảnh báo và chặn hoàn toàn lưu lượng
mạng phù hợp với các quy tắc cụ thể
Giám sát an ninh mạng NSM là việc thu thập các thông tin
trên các thành phần của hê thống, phân tích các thông tin, dấu
hiêu nhằm đánh giá và đưa ra cảnh báo cho người quản trị hê
thống
1.2.5 Ưu điểm của hệ thống Wazuh tích hợp Elastic Stack và Suricata để giám sát thiết bị đầu cuối
Wazuh là môt giải pháp an ninh thông tin mã nguồn mở,
được thiết kế để giám sát và phát hiên các mối đe dọa an ninh
trên hê thống Khi tích hợp với Elastic Stack và Suricata, Wazuh có thể cung cấp môt giải pháp bảo mật mạnh mẽ cho viêc giám sát
thiết bị đầu cuối Hê thống sử dụng Wazuh tích hợp Elastic Stack
và Suricata có những ưu điểm chính như sau:
e_ Phát hiên và ứng phó mối đe dọa
:" Wazuh: dựa trên quy tắc và log để phát hiên các sự cố
an ninh, giúp xác định các hành vi đáng ngờ
“" Suricata: hê thống IDS mã nguồn mở, giúp phát hiên va
ngăn chặn các tấn công mạng
se _ Quản lý log hiêu suất
Elastic Stack: cho phép lưu trữ, tìm kiếm và hiển thi log
mot cach hiéu qua
Trang 32
Đồ án tốt nghiệp đại học Chương 2
Wazuh: tích hợp với ELK để cung cấp giao diên đồ họa
và khả năng tìm kiếm linh hoạt cho viêc theo dõi log
se Hê thống quản lý thông tin và sự kiên an ninh (SIEM)
“" Wazuh: cung cấp tính năng SIEM để tổng hợp và phân
tích log từ nhiều nguồn khác nhau, giúp tạo ra môt bức tranh toàn diên về an ninh hê thống
= Elastic Stack: dung dé xay dựng và duyêt các bảng điều
khiển SIEM
se Phân loại và đánh giá mức đô nghiêm trọng
= Wazuh: xác định mức đô nghiêm trọng của sự cố bảo
mật để ưu tiên xử lý
« Elastic Stack: cung cap théng tin về mức đô nghiêm
trọng của các sự kiên mạng
se Hê thống đám mây và đa nền tảng
= Wazuh: ho trg cho các môi trường đám mây và nền
tảng đa dạng
“ Elastic Stack: linh hoạt và có thể triển khai trên nhiều
nền tảng
e _ Mở rông và tùy chỉnh
« Wazuh: cho phép mở rông chức năng thông qua plug-in
và tùy chỉnh quy tắc để đáp ứng được các nhu cầu cụ thể
“ Suricata: có thể được cấu hình để phát hiên các loại tấn
công cụ thể và được hỗ trợ bởi công đồng mạnh mẽ
se Hiêu suất và mở rông:
= Elastic Stack: hê thống có thể mở rông để xử lý dữ liêu
số lượng lớn và cung cấp hiêu suất cao
= Suricata va Wazuh: cung cấp khả năng mở rông để xử
lý các môi trường hê thống lớn
Cả Wazuh, Suricata và Elastic Stack đều có công đồng riêng
hỗ trợ mạnh mẽ và được hỗ trợ định kỳ, giúp người dùng giải quyết vấn đề và tối ưu hóa các triển khai hê thống để tạo ra môt
Trang 33
Đồ án tốt nghiệp đại học Chương 2
giải pháp toàn diên cho viêc giám sát và bảo vê hê thống đầu cuối
khỏi các mối đe dọa an ninh mạng
Hê thống hoạt đông hiêu quả khi phát hiên các cuôc tấn
công đã từng xảy ra và có đã có mẫu và quy tắc phát hiên Hê
thống chưa thể phát hiên được các cuôc tấn công mới, chưa từng
xảy ra, chưa có quy tắc phát hiên
1.3 Kết chương
Chương 1 đã giới thiêu tổng quan về khái niêm, phân loại hê
thống phát hiên xâm nhập, các kỹ thuật phát hiên xâm nhập
Tổng quan về kiến trúc của hê thống phát hiên xâm nhập Wazuh
tích hợp Elastic Stack và Suricata
Chương 2 sẽ thực hiên cài đặt và cấu hình cho hê thống phát
hiên xâm nhập sử dụng Wazuh tích hợp Elastic Stack và Suricata
để có thể giám sát, phát hiên bất thường trên điểm cuối macOS
CHƯƠNG 2 CÀI ĐẶT VÀ CẤU HÌNH ỨNG DỤNG
Chương 2 sẽ trình bày cách thức cài đặt, triển khai một hệ thống
phát hiện quy mô nhỏ sử dụng Wazuh tích hợp Elastic Stack và
Suricata để giám sát điểm cuối hệ điều hành macOS
Trang 34
Đồ án tốt nghiệp đại học Chương 2
2.1 Mô hình triển khai hệ thống
Endpoint security agent
Agent enrollment service ——— ;
Agent connection service Ị ‘
RESTful API service
Data analysis ị Data visualizations
Platform management bó g Inventory data ị Data analysis
Hình 6: Mô hình tổng quan triển khai hệ thống
Mô hình tổng quan của hê thống Wazuh tích hợp Elastic
Stack và Suricata bao gồm các thành phần sau:
Suricata: hê thống IDS để phát hiên các cuôc tấn công
mạng Theo dõi lưu lượng mạng và phân tích dữ liêu để
phát hiên các dấu hiêu của tấn công hoặc hành vi đáng
ngờ
Wazuh Agent: thành phần cài đặt trên các thiết bị đầu
cuối trong mạng Thu thập log và thông tin từ hê thống
đầu cuối và gửi đến Wazuh server để phân tích
Wazuh Server: máy chủ trung tâm, chịu trách nhiêm tổ
chức và quản lý dữ liêu từ Wazuh Agent và Suricata Xử lý
dữ liêu log, áp dụng các quy tắc và phát hiên mối đe dọa
dựa trên các thông tin nhận được từ agent
Filebeat: thu thập dữ liêu log từ các nguồn và chuyển tiếp
đến ElasticSearch, tích hợp dữ liêu từ Wazuh agent và
Suricata vào Elastic Stack
Elasticsearch: cơ sở dữ liêu tìm kiếm phân tán được sử dụng để lưu trữ dữ liêu log và thông tin từ Wazuh server
Trang 35
Đồ án tốt nghiệp đại học Chương 2
thông qua Filebeat Elasticsearch được sử dụng thay cho Wazuh indexer
Kibana: giao diên người dùng đồ họa để tìm kiếm, trực
quan hóa và theo dõi dữ liêu log Suricata được lưu trữ
trong Elasticsearch
Wazuh Dashboard: thành phần mở rông của Kibana, cung
cấp giao diên đồ họa và tính năng tương thích với Wazuh,
trực quan hóa dữ liéu log Wazuh agent
2.2 Cài đặt hệ thống
2.2.1 Môi trường cài đặt
Máy ảo Ubuntu server 22.04.3:
= Céng cu IDS Suricata trén Ubuntu server
May ao MacOS Ventura 13 cai dat wazuh agent:
2.2.2.1 Cài đặt Wazuh và Elastic Stack
Máy chủ Wazuh và Elastic Stack được cài đặt trên cùng môt
máy chủ Kiểu triển khai này phù hợp để thử nghiêm và môi
trường làm việc nhỏ
Các thành phần được cài đặt:
Máy chủ Wazuh, bao gồm trình quản lý Wazuh dưới dạng
cụm nút đơn và Filebeat
Elastic Stack, bao gồm Elaticsearch dưới dạng cụm nút
đơn và Kibana, bao gồm plugin Wazuh Kibana I4i
Trang 36
an Wazunh agent : :
mm : 8® Llasticscearch `
Wazuh Kibana plugin
main" | tee /etc/apt/sources.list.d/elastic-7.x.list
«= Cap nhat danh sách kho lưu trữ:
$ sudo apt-get update
Trang 37
Đồ án tốt nghiêp đại học Chương 2
„ Cài đặt gói Elasticsearch:
$ apt-get install elasticsearch=7.17.13
Chỉnh sửa cấu hình của Elasticsearch
$ sudo nano /etc/elasticsearch/elasticsearch.yml
on the system and that the owner of the process is allowed to use this limit
Elasticsearch performs poorly when the system is swapping the memory
~ - Network -
By default Elasticsearch is only accessible on localhost set a different
address here to expose this node on the network:
# By default Elasticsearch listens for HTTP traffic on the first free port it
# finds starting at 9200 set a specific HTTP port here:
# Elasticsearch security features are not enabled by default
# These features are free, but require configuration changes to enable them
# This means that users don’t have to provide credentials and can get full access
# to the cluster Network connections are also not encrypted
#
# To protect your data, we strongly encourage you to enable the Elasticsearch security features
# Refer to the following documentation for instructions
#
# https: //www elastic co/guide/en/elasticsearch/reference/7.16/configuring-stack-security html discovery.type: single-node
xpack security enabled: true
=
Hình 9: Cấu hình loại Elastic Search
Bật môt số tính năng bảo mật cho Elasticsearch
: Tạo mật khẩu ngẫu nhiên cho người dùng mặc định của
Elasticsearch
$ /usr/share/elasticsearch/bin/elasticsearch-setup- passwords auto
Trang 38
Đồ án tốt nghiệp đại học Chương 2
-setup-passwords aut ,kibana, kibana_system, logstash_system, beats_system,remote_monitor ing_user
stic = PfzivFKVHIPYWVOR92TI
Hình 10: Tạo mật khẩu ngẫu nhiên cho Elastic Search
"_ Kích hoạt và khởi đông dịch vụ Elasticsearch
$ systemctl daemon-reload
$ systemctl enable elasticsearch
$ systemctl start elasticsearch
se Cài đặt Kibana
= Cai dat gdi Kibana
$ apt-get install kibana=7.17.13
= Kích hoạt chức năng bảo mật bằng cach tao khóa bí mật
Kibana sử dụng các khóa bí mật để lưu trữ dữ liêu trong
Elasticsearch
$ cd /usr/share/kibana/bin/
$ sudo /kibana-encryption-keys generate -q -force
@wazuh-1ab-maing: /usr/share/elasticsearch/bin# cd /usr/share/kibana/bin
Hình 11: Kích hoạt khóa bí mật cho Kibana
„Chỉnh sửa file cấu hình Kibana
$ sudo nano /etc/kibana/kibana.yml
Trang 39
Đồ án tốt nghiệp đại học Chương 2
# Specifies the address to which the Kibana server will bind IP addresses and host names are both valid values
# The default is ‘localhost’, which usually means remote machines will_not be able to connect
server.host: "192.168.229.181"
# from requests it receives, and to prevent a deprecation warning at startup
# This setting cannot end in a slash
#server.basePath: ””
# specifies whether Kibana should rewrite requests that are prefixed with
# 'server.basePath` or require that ey are rewritten by your reverse Pay
# default to “true” Sere in Kibana 7.0
#server.rewriteBasePath: fals:
# Specifies the public URL at which Kibana is available for end users If
# Kibana uses an index in Elasticsearch to store saved searches, visualizations and
# dashboards Kibana creates a new index if the index doesn't already exist
# The default_application to load
#kibana.defaultappid: "home"
# If your Elasticsearch is protected with basic authentication, these settings provide
# the username and password that the Kibana server uses to per form maintenance on the Kibana
# index at startup Your Kibana users still need to authenticate with Elasticsearch, which
#_is proxied through the Kibana server
elasticsearch.username: “elastic”
elasticsearch password: “LapcJcHTfQIrBF6fbDNv™
Hình 12: Cấu hình địa chỉ IP và cổng truy cập cho Kibana
# Specifies locale to he used for all localizable strings, dates and number formats
# Supported languages are the following: English - en , by default , Chinese - zh-cn
#118n locale: “en”
xpack reporting encryptionkey: a0e3382b5b 9848246110567 Bdae8ab98 xpack security encryptionkey: 883e9523c099888c1h48d3b3803e1ba3
Hình 13: Cấu hình khóa bí mật cho Kibana
$ systemctl enable kibana
$ systemctl start kibana
Trang 40
Đồ án tốt nghiệp đại học Chương 2
$ sudo apt update
$ apt-get install filebeat=7.17.13
= Tai mau canh bao cho Elasticsearch
https://raw.githubusercontent.com/wazuh/wazuh/v4.5 4/extensions/elasticsearch/7.x/wazuh-template.json
$ chmod go+r /etc/filebeat/wazuh-template.json
* Cai dat Wazuh module cho Filebeat
https://packages.wazuh.com/4.x/filebeat/wazuh-
/usr/share/filebeat/module
"Chỉnh sửa cấu hình Filebeat
$ sudo nano /etc/filebeat/filebeat.yml
# Each - is an input Most options can be set at the input level, so
# you can use different inputs for various configurations
# Below are the input specific configurations
# filestream is an input for collecting log messages from files
— type: filestream
# unique ID among all inputs, an ID is required id: my-filestream-id
# Change to true to enable this input configuration
# Exclude lines a list of regular expressions to match It drops the lines that are
# matching any regular expression from the list
#exclude_Tines: ["ApBG"]
# Include lines A list of regular expressions to match It exports the lines that are
# matching any regular expression from the list
#include Íines: [”^ERR", '^AWARN"]
# Exclude files A list_of regular expressions to match Filebeat drops the files that
# are matching any regular expression from the list By default, no files are dropped
#prospector.scanner.exclude_files: [".gz$"]
# optional additional fields These fields can be freely picked
# to add additional information to the crawled log files for filtering
p template json enabled: true
etup template json etc/filebeat /wazuh-template json
etup template json.name: wazuh
setup template overwri true
SN
fi lebeat config modu
# Glob pattern for configuration loading
path: ${path config}/modu1es d/* ym1
# Set to true to enable config reloading reload enabled: false
# Period on which files under path should be checked for changes