TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
LUẬN VĂN THẠC SĨ
Nghiên cứu và phát triển hệ thống
phát hiện bất thường dựa trên log
LÊ VĂN ĐỒNG
Ngành Kỹ thuật máy tính
Giảng viên hướng dẫn:
PGS.TS. Trần Quang Đức
Trường:
Công nghệ thông tin và Truyền thông
HÀ NỘI, 2021
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
LUẬN VĂN THẠC SĨ
Nghiên cứu và phát triển hệ thống
phát hiện bất thường dựa trên log
LÊ VĂN ĐỒNG
Ngành Kỹ thuật máy tính
Giảng viên hướng dẫn:
PGS.TS. Trần Quang Đức
Chữ ký của GVHD
Trường:
Công nghệ thông tin và Truyền thông
HÀ NỘI, 2021
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc lập – Tự do – Hạnh phúc
BẢN XÁC NHẬN CHỈNH SỬA LUẬN VĂN THẠC SĨ
Họ và tên tác giả luận văn: Lê Văn Đồng
Đề tài luận văn: Nghiên cứu và phát triển hệ thống phát hiện bất thường
dựa trên log
Chuyên ngành: Kỹ thuật máy tính
Mã số SV: 20202913M
Tác giả, Người hướng dẫn khoa học và Hội đồng chấm luận văn xác nhận
tác giả đã sửa chữa, bổ sung luận văn theo biên bản họp Hội đồng ngày
24/12/2021 với các nội dung sau:
- Bổ sung các biểu đồ và mô tả các API để làm rõ cách thức tương tác, xử
lý dữ liệu giữa hệ thống quản lý tập luật với máy chủ SIEM-QRadar
- Bổ sung các mô tả để làm rõ cách thức xây dựng tập luật theo cấu trúc
chuẩn dạng sigma-rule
- Bổ sung các mô tả về cách thức chuyển đổi các luật được viết dưới dạng
sigma-rules thành các luật có thể cấu hình trên hệ thống SIEM-QRadar
- Cập nhật chỉ số của các đề mục và các trích dẫn của đề mục, hình vẽ,
bảng biểu trong luận văn
Ngày
tháng năm
Giáo viên hướng dẫn
Tác giả luận văn
PGS.TS. Trần Quang Đức
Lê Văn Đồng
CHỦ TỊCH HỘI ĐỒNG
TS. Đỗ Bá Lâm
LỜI CẢM ƠN
Đầu tiên, em xin gửi lời cảm ơn chân thành và sâu sắc tới PGS.TS. Trần
Quang Đức, Giảng viên bộ mơn Truyền thơng và Mạng máy tính, Trường
CNTT&TT, Đại học Bách Khoa Hà Nội, người đã trực tiếp hướng dẫn em thực
hiện luận văn này. Thầy là người rất cẩn thận, có trách nhiệm cao trong cơng việc,
ln hỗ trợ em rất nhiều kể từ quãng thời còn sinh viên cho đến tận bây giờ.
Đồng thời, em xin cảm ơn anh Bùi Xuân Định, bạn Nguyễn Trọng Ngọc cùng
toàn thể mọi người tại Trung tâm An toàn, an ninh thông tin Bách Khoa (BKCS).
Các anh, các bạn đã luôn động viên, hỗ trợ em rất nhiều trong công việc nói chung
cũng như trong việc thực hiện luận văn này nói riêng.
Sau cùng, em xin gửi lời cảm ơn tới PGS.TS. Nguyễn Linh Giang, Trưởng bộ
môn Truyền thông và Mạng máy tính, cùng tồn thể các thầy cơ trong Trường
CNTT&TT đã hỗ trợ em rất nhiều trong quá trình học thạc sĩ, cũng như truyền đạt
cho em nhiều kiến thức, kinh nghiệm quý báu để em có hành trang tốt khi vào đời.
Với những kiến thức đã gặt hái được, em sẽ cố gắng hoàn thiện bản thân và đóng
góp nhiều điều có ích cho cộng đồng, cho xã hội, xứng đáng với truyền thống của
sinh viên Bách Khoa nói chung và sinh viên CNTT nói riêng.
Tuy nhiên, do còn hạn chế về thời gian nên chắc chắn em sẽ khơng tránh khỏi
những thiếu sót trong q trình thực hiện luận văn tốt nghiệp này. Vì vậy, em rất
mong nhận được sự góp ý, chỉ bảo của các thầy, các cơ để hồn thiện luận văn của
mình được tốt hơn.
Hà Nội, ngày tháng
Tác giả
Lê Văn Đồng
năm
MỤC LỤC
ĐẶT VẤN ĐỀ ....................................................................................................... 1
Lý do lựa chọn đề tài .............................................................................................. 1
Tính cấp thiết của đề tài ......................................................................................... 3
CHƯƠNG 1. CƠ SỞ LÝ THUYẾT.................................................................... 4
1.1
1.2
1.3
1.4
Tổng quan về Cyber Security Framework ................................................. 4
1.1.1
Cyber Kill Chain Framework ............................................................ 4
1.1.2
NIST Cybersecurity Framework........................................................ 5
1.1.3
MITRE ATT&CK Framework .......................................................... 6
Giới thiệu về logs trên hệ điều hành Windows và Linux......................... 10
1.2.1
Nhật ký Windows Event Logs ......................................................... 10
1.2.2
Dịch vụ Sysmon ............................................................................... 13
1.2.3
Logs mặc định trên Linux ................................................................ 17
1.2.4
Dịch vụ OSQuery............................................................................. 19
1.2.5
Dịch vụ Auditd................................................................................. 22
Thu thập và chuẩn hóa logs về SIEM-Qradar .......................................... 31
1.3.1
Giới thiệu Wincollect Agent ............................................................ 31
1.3.2
Thu thập logs trên máy chủ Linux ................................................... 35
Tổng quan về Rules trên SIEM-Qradar ................................................... 36
1.4.1
Giới thiệu chuẩn sigma-rules ........................................................... 36
1.4.2
Giới thiệu về Rules trên Qradar ....................................................... 40
1.4.3
Giới thiệu về Qradar-Rules-API ...................................................... 43
CHƯƠNG 2. THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG ............................... 46
2.1
2.2
Thiết kế hệ thống Rules-Cross-Platform .................................................. 46
2.1.1
Xây dựng kiến trúc hệ thống............................................................ 46
2.1.2
Thiết kế cơ sở dữ liệu ...................................................................... 49
2.1.3
Quy trình xây dựng tập luật sigma-rules ......................................... 51
Cấu hình nguồn logs trên Windows và Linux.......................................... 53
2.2.1
Cấu hình Windows Policy ............................................................... 53
2.2.2
Cấu hình dịch vụ Sysmon ................................................................ 55
2.2.3
Cấu hình dịch vụ OSQuery .............................................................. 58
i
2.2.4
Cấu hình dịch vụ Auditd.................................................................. 60
CHƯƠNG 3. TRIỂN KHAI VÀ ĐÁNH GIÁ HỆ THỐNG ........................... 62
3.1
3.2
3.3
3.4
3.5
Triển khai và cài đặt thử nghiệm hệ thống .............................................. 62
3.1.1
Xây dựng mơ hình triển khai ........................................................... 62
3.1.2
Thu thập và chuẩn hoá logs về SIEM.............................................. 63
3.1.3
Quy trình cấu hình tập luật trên QRadar ......................................... 67
Xây dựng script hỗ trợ vận hành hệ thống ............................................... 71
3.2.1
Cấu hình Windows GPO ................................................................. 71
3.2.2
Cấu hình osquery và auditd ............................................................. 72
Thiết kế kịch bản thử nghiệm tập luật ..................................................... 75
3.3.1
Danh sách tập luật được triển khai .................................................. 75
3.3.2
Kịch bản tấn công máy chủ Windows [1] ....................................... 76
3.3.3
Kịch bản tấn công máy chủ Windows [2] ....................................... 81
3.3.4
Kịch bản tấn công máy chủ Linux ................................................... 82
Phân tích kết quả thử nghiệm hệ thống.................................................... 90
3.4.1
Windows GPO với Sysmon ............................................................. 90
3.4.2
OSQuery với Audit .......................................................................... 92
3.4.3
Đánh giá hiệu quả tập luật ............................................................... 93
Xây dựng quy trình tối ưu tập luật ........................................................... 95
CHƯƠNG 4. KẾT LUẬN ................................................................................. 99
4.1
Kết luận .................................................................................................... 99
4.2
Hướng phát triển luận văn trong tương lai .............................................. 99
TÀI LIỆU THAM KHẢO ............................................................................... 100
PHỤ LỤC .......................................................................................................... 102
ii
DANH MỤC CÁC KÝ HIỆU VÀ TỪ VIẾT TẮT
CNTT
Công nghệ thông tin
Trường CNTT&TT
Trường Công nghệ Thông tin và Truyền thông
SIEM
Security Information and Event Management
API
Application Programming Interface
APT
Advanced Persistent Threat
XOAR
Security Orchestration, Automation and Response
SOC
Security Operations Center
ATT&CK
Adversarial
Knowledge
DLP
Data Loss Prevention
SNMP
Simple Network Management Protocol
NIST
National Institute of Standards and Technology
IDPS
Intrusion Detection and Prevention System
EDR
Endpoint Detection and Response
EPS
Event Per Second
AQL
Ariel Query Language
JSON
JavaScript Object Notation
CEF
Common Event Format
LEEF
Log Event Extended Format
LSASS
Local Security Authority Subsystem Service
SHA1
Secure Hash Algorithm 1
TCP
Transmission Control Protocol
UDP
User Datagram Protocol
DoS
Denial-of-Service
GPO
Group Policy Object
Tactics,
Techniques,
and
Common
iii
DANH MỤC HÌNH VẼ VÀ ĐỒ THỊ
Hình 1.1. Sơ đồ các bước tấn công theo Cyber Kill Chain Framework [3] .......... 5
Hình 1.2. Sơ đồ các thành phần của NIST CyberSecurity Framework [17] ......... 5
Hình 1.3. Sơ đồ một số chiển thuật và kỹ thuật tấn công dưới dạng ma trận trong
MITRE ATT&CK [1] ............................................................................................ 7
Hình 1.4. Sơ đồ quan hệ của các thành phần trong hệ thống audit trên linux ..... 23
Hình 1.5. Chế độ Wincollect Managed thu thập logs trên máy chủ Windows ... 32
Hình 1.6. Chế độ Wincollect Standalone thu thập logs trên máy chủ Windows. 33
Hình 1.7. Mơ hình kết nối giữa Wincollect Agent và SIEM-Qradar .................. 34
Hình 1.8. Mơ hình thu thập logs trên máy chủ Linux về hệ thống Qradar .......... 35
Hình 1.9. Ví dụ cú pháp của sigma-rules cho phép phát hiện Web Shell ........... 40
Hình 1.10. Kết quả sử dụng QRadar-API trích xuất thơng tin tập luật ............... 45
Hình 2.1. Sơ đồ kiến trúc thành phần của hệ thống Rule-Cross-Platform .......... 46
Hình 2.2. Sở đồ luồng xử lý dữ liệu theo mô hình MVC trong Laravel.............. 47
Hình 2.3. Sơ đồ luồng xử lý dữ liệu giữa hệ thống quản lý tập luật và QRadar . 48
Hình 2.4. Sơ đồ quan hệ giữa các bảng trong cơ sở dữ liệu của hệ thống........... 51
Hình 2.5. Quy trình các bước xây dựng tập luật sigma-rules .............................. 52
Hình 3.1. Sơ đồ mơ hình triển khai hệ thống thu thập logs và thử nghiệm các kịch
bản tấn cơng ......................................................................................................... 62
Hình 3.2. Sơ đồ luồng thu thập và xử lý logs trên hệ thống SIEM ..................... 64
Hình 3.3. Quy trình cấu hình tập luật trên hệ thống SIEM-Qradar ..................... 67
Hình 3.4. Sơ đồ luồng xử lý xây dựng script tự động cấu hình Windows GPO . 71
Hình 3.5. Sơ đồ luồng xử lý xây dựng script tự động cấu hình dịch vụ osquery 73
Hình 3.6. Sơ đồ luồng xử lý xây dựng script tự động cấu hình dịch vụ auditd ... 73
Hình 3.7. Sơ đồ quy trình tối ưu tập luật trên hệ thống SIEM ............................ 95
Hình 3.8. Sơ đồ quy trình tối ưu nguồn logs trên máy chủ.................................. 98
iv
DANH MỤC BẢNG BIỂU
Bảng 1.1. Bảng mô tả các chiến thuật tấn công trong ma trận ATT&CK ............. 8
Bảng 1.2. Bảng đánh giá ưu và nhược điểm của MITRE ATT&CK Framework . 9
Bảng 1.3. Bảng mô tả một số loại logs trên hệ điều hành Windows ................... 11
Bảng 1.4. Bảng so sánh Basic Audit Policy và Advanced Audit Policy ............. 12
Bảng 1.5. Bảng đánh giá ưu điểm và nhược điểm của dịch vụ Sysmon .............. 14
Bảng 1.6. Bảng thống kê một số sự kiện trong logs của dịch vụ Sysmon ........... 16
Bảng 1.7. Bảng thống kê và đặc tả một số loại logs trên Linux .......................... 17
Bảng 1.8. Bảng thống kê các bảng dữ liệu cần truy vấn bởi osquery .................. 20
Bảng 1.9. Bảng thống kê các trường thông tin quan trọng của tệp auditd.conf... 25
Bảng 1.10. Bảng giá trị uid của người dùng trên hệ thống linux ......................... 31
Bảng 1.11. Bảng so sánh Wincollect Managed và Wincollect Standalone ......... 33
Bảng 1.12. Bảng đặc tả các thành phần chính trong sigma-rules ........................ 37
Bảng 1.13. Bảng mô tả mối quan hệ giữa rules và offense trong Qradar ............ 41
Bảng 1.14. Bảng mô tả các trường thông tin trả về trong QRadar-API............... 44
Bảng 2.1. Bảng đặc tả cơ sở dữ liệu của hệ thống Rules-Cross-Platform ........... 49
Bảng 2.2. Bảng các audit policy cần kích hoạt để sinh logs cho Windows ......... 53
Bảng 2.3. Bảng cập nhật một số thay đổi trong tệp cấu hình Sysmon................. 55
Bảng 3.1. Bảng thơng tin cấu hình hệ thống thử nghiệm..................................... 63
Bảng 3.2. Bảng đặc tả một số extension cài đặt trên Qradar ............................... 65
Bảng 3.3. Bảng thống kê các trường thông tin trong logs của osquery ............... 65
Bảng 3.4. Cấu trúc bảng cơ sử dữ liệu webvul chứa nhiều lỗ hổng bảo mật....... 82
Bảng 3.5. Bảng so sánh dịch vụ osquery và auditd.............................................. 92
Bảng 3.6. Bảng đánh giá khả năng đáp ứng của tập luật ..................................... 94
Bảng 3.7. Bảng thống kê các thông tin cần thu thập để tối ưu tập luật................ 96
Bảng 3.8. Bảng thống kê các ký tự cần chú ý khi tối ưu tập luật trên SIEM....... 97
v
ĐẶT VẤN ĐỀ
Lý do lựa chọn đề tài
Cùng với sự phát triển của khoa học và công nghệ, các hệ thống CNTT từ
máy chủ cung cấp dịch vụ, máy trạm người dùng, các thiết bị mạng, cho đến
nhiều thiết bị phần cứng, phần mềm chuyên dụng đã và đang trở thành một phần
khơng thể thiếu, tác động tới quy trình nghiệp vụ và sự phát triển chung của mọi
tổ chức, doanh nghiệp. Song song với những lợi ích to lớn đó là “nỗi lo” về việc
mất an tồn, an ninh thông tin trên không gian mạng, trước sự gia tăng ngày càng
nhiều các cuộc tấn công cả về quy mô và độ phức tạp trong những năm gần đây.
Theo báo cáo hàng năm [4, 5] của các tổ chức bảo mật hàng đầu thế giới như
McAfee, Kaspersky thì các cuộc tấn cơng mạng, nhất là các cuộc tấn cơng có chủ
đích (APT) nhắm vào các tổ chức, tập đồn lớn ngày càng trở nên phổ biến. Kẻ
tấn công liên tục thay đổi phương thức tấn công, sử dụng nhiều kỹ thuật tinh vi,
phức tạp nhằm che giấu hành vi của mình cũng như để qua mặt các hệ thống
phịng thủ. Trước nguy cơ đó, các doanh nghiệp cũng đang thay đổi, chuyển dịch
dần xu hướng đầu tư của mình. Thay vì đầu tư tới 80% cơ sở hạ tầng cho các giải
pháp ngăn chặn, phịng thủ như trước đây thì đang tập trung đầu tư nhiều hơn cho
các giải pháp theo dõi, giám sát nhằm sớm phát hiện bất thường, cũng như phục
vụ cho việc phản ứng, điều tra, truy vết khi xảy ra sự cố mất an toàn an ninh
thông tin.
Theo văn bản số 2973/BTTTT-CATTT ngày 04/09/2019 của Bộ Thông tin và
Truyền thông về việc “Hướng dẫn triển khai hoạt động giám sát an tồn thơng tin
trong cơ quan, tổ chức nhà nước” [6], có thể thấy việc giám sát, đảm bảo an tồn
cho hạ tầng cơng nghệ thơng tin thường được triển khai theo hai cách dưới đây:
- Giải pháp thứ nhất: Cài đặt các phần mềm giám sát, phát hiện và ngăn
chặn hành vi tấn công trên máy chủ cung cấp dịch vụ, máy trạm của người dùng
như Host-IDS, AV, DLP, … Cách này cho phép trực tiếp phát hiện tấn cơng và
có thể sinh các cảnh báo gửi về hệ thống quản lý.
- Giải pháp thứ hai: Thu thập thông tin nhật ký (log) từ hạ tầng CNTT gửi
về hệ thống giám sát tập trung như SIEM để sớm phát hiện các hành vi tấn công
dựa trên việc phân tích các dấu hiệu bất thường, so khớp các luật, sử dụng các
công nghệ xử lý dữ liệu lớn. Việc gửi log về hệ thống giám sát tập trung có thể
được thực hiện thơng qua các giao thức, cơ chế mà hệ điều hành hỗ trợ như
Syslog, SNMP, … hoặc cần phát triển các phần mềm tác tử riêng cho từng giải
pháp cụ thể.
1
Giải pháp thứ nhất thường được sử dụng trong các doanh nghiệp vừa và nhỏ, còn
giải pháp thứ hai được triển khai trong các doanh nghiệp, tập đoàn lớn. Tuy có
q trình cài đặt phức tạp, cần hệ thống tính tốn đủ mạnh để có thể hoạt động ổn
định nhưng việc triển khai các hệ thống SIEM/XOAR theo giải pháp thứ hai
thường mang lại nhiều lợi ích to lớn. Trong đó, hệ thống SIEM có trách nhiệm
thu thập và lưu trữ log, dựa trên tập luật của mình để sinh ra các cảnh báo khi
phát hiện hành vi nghi ngờ là tấn công. Hệ thống XOAR được triển khai tại các
trung tâm điều hành SOC cho phép quản lý các quy trình xử lý sự cố và các cảnh
báo từ hệ thống SIEM gửi về. Trong quá trình giám sát an tồn, an ninh thơng
tin, các tập luật trên SIEM cần phải liên tục được cập nhật, làm giàu thông tin
nhằm phát hiện những kỹ thuật tấn công mới, đồng thời cũng cần được tối ưu để
giảm số lượng cảnh báo sai trên hệ thống.
Nhật ký (log) là thành phần đầu vào quan trọng, quyết định đến sự hiệu quả
trong hoạt động của hệ thống giám sát. Vấn đề đặt ra là phải xác định được
nguồn log cần thu thập, cũng như các cấu hình cần thiết lập để có thể gửi logs về
hệ thống quản lý tập trung. Ví dụ, nếu chỉ sử dụng chính sách cấu hình mặc định
của Windows, Linux thì khi kẻ tấn cơng thực thi các câu lệnh tấn công, hệ thống
không thể biết được tiến trình nào đã được gọi, tham số nào đã được sử dụng.
Vấn đề thứ hai là cần xây dựng và quản lý các kịch bản tấn cơng có thể xảy ra
trong thực tế. Chúng sẽ là cơ sở để xây dựng tập luật cho phép phát hiện các
hành vi bất thường, hành vi tấn cơng dựa trên phân tích log.
Vấn đề tiếp theo là sự đa dạng trong cấu trúc của mỗi hệ thống SIEM dẫn tới
khó khăn trong việc quản lý và cấu hình tập luật. Do vậy, cần thiết phải xây dựng
một nền tảng, thư viện quản lý tập luật (Rule Cross-Platform) với định dạng
chung nhất (Sigma-Rule) cho phép nhanh chóng triển khai trên nhiều hệ thống
SIEM khác nhau như IBM Qradar, RSA Netwitness, ArcSight, Splunk, Microsoft
Azure Sentinel, ELK, v.v.
Cuối cùng là việc cần liên tục cập nhật các kỹ thuật, dấu hiệu tấn công mới để
làm giàu cho tập luật. Các nguồn dữ liệu có thể lấy trực tiếp từ các dấu hiệu xâm
nhập (IOC) thu được trong quá trình phát hiện và xử lý sự cố hoặc từ các nguồn
tình báo an ninh mạng (Threat Intelligence), cũng như các lỗ hổng đã được công
bố. Một số nguồn tham chiếu phổ biến thường được sử dụng như MITRE
ATT&CK Framework [2], Atomic/RedTeam [1].
Đề tài này sẽ tập trung xây dựng hệ thống Rule-Cross-Platform nhằm giải
quyết các vấn đề đã nêu trên. Hệ thống sẽ hoạt động như một thư viện tập luật
chuẩn, cho phép triển khai cấu hình luật trên nhiều nền tảng SIEM khác nhau.
2
Đồng thời có thể liên tục cập nhật liên tục các dấu hiệu, kỹ thuật tấn công mới từ
các nguồn thơng tin đã xác định trước.
Tính cấp thiết của đề tài
Ngày nay, các cuộc tấn công mạng ngày càng trở nên tinh vi và phức tạp. Kẻ
tấn công liên tục thay đổi cách thức và kỹ thuật tấn công, nhằm che giấu hành vi,
cũng như vượt qua các cơ chế phòng thủ của các cơ quan, tổ chức. Do vậy, cần
phải liên tục cập nhật và làm giàu tập luật, nhằm sớm phát hiện các hành vi tấn
công và các mối đe dọa tiềm tàng cho tổ chức.
Với việc các hệ thống SIEM ngày càng phát triển đa dạng như hiện nay thì
việc cần xây dựng một thư viện chuẩn, cho phép quản lý các kịch bản/tập luật là
thực sự cần thiết. Nó giúp mang lại giá trị lợi ích kinh tế to lớn, đặc biệt là đối
với các đơn vị/tổ chức kinh doanh dịch vụ SOC thực hiện giám sát an ninh mạng
24/7, hỗ trợ điều tra và xử lý sự cố an tồn thơng tin.
3
CHƯƠNG 1. CƠ SỞ LÝ THUYẾT
Nội dung của chương này sẽ trình bày về các chiến lược và kỹ thuật tấn
cơng trong MITRE ATT&CK® framework, đồng thời so sánh và đánh giá nó với
một số Cyber Security Framework khác như Cyber Kill Chain, NIST. Tiếp theo,
giới thiệu về logs trên cả hai hệ điều hành Windows/Linux và cách thu thập
chúng về hệ thống SIEM. Trong chương này cũng giới thiệu sơ lược về một số
dạng endpoint nguồn mở như Sysmon, OSQuery, Auditd có thể cài đặt trên máy
chủ để sinh thêm một số logs cần thiết phục vụ giám sát, điều tra và xử lý sự cố.
Sau cùng, sẽ trình bày về chuẩn sigma-rules và hệ thống tập luật trên Qradar.
1.1 Tổng quan về Cyber Security Framework
Hiện nay có khá nhiều security framework cho phép phân tích và đánh giá
khả năng bảo vệ an toàn hạ tầng CNTT của các tổ chức, doanh nghiệp trước các
hành vi tấn công. Trong đó, phổ biến nhất có thể kể đến là: Cyber Kill Chain,
NIST Cyber Security và MITRE ATT&CK.
1.1.1 Cyber Kill Chain Framework
Được phát triển bởi Lockheed Martin, Cyber Kill Chain Framework [3] là
một phần của mơ hình Intelligence Driven Defense, cho phép xác định và ngăn
chặn các hành vi tấn công trên khơng gian mạng. Trong mơ hình sẽ tập trung xác
định những gì mà kẻ tấn cơng (adversary/attacker) cần phải hồn thành để đạt
được mục đích của hắn. Theo đó, mỗi cuộc tấn công sẽ gồm 7 giai đoạn sau:
Giai đoạn
Mô tả chi tiết
Reconnaissance Kẻ tấn công thực hiện do thám thơng tin về mục tiêu. Ví dụ
có thể sử dụng Google, Shodan, … hoặc nhiều công cụ khác
để thu thập thông tin.
Weaponization Kẻ tấn công tạo các cuộc tấn cơng dựa trên thơng tin đã tìm
được ở giai đoạn trước. Ví dụ sử dụng metasploit, exploit-db
để khai thác lỗ hổng.
Delivery
Kẻ tấn công thực hiện phát tán mã độc đến máy nạn nhân
Exploitation
Kẻ tấn công thực hiện khai thác các điểm yếu, lỗ hổng trên hệ
thống mục tiêu. Ví dụ thử tấn công SQL Injection, Buffer
Overflow, RCE, …
Installation
Kẻ tấn công thực hiện leo thang đặc quyền để thực thi các
PowerShell, DLL độc hại, cài đặt các công cụ cho phép truy
cập từ xa như RAT (Remote Access Tools).
Command & Kẻ tấn công thiết lập các kết nối cho phép truy cập mục tiêu
Control (C2
từ xa
Actions
on Kẻ tấn công thực hiện mục tiêu đã đề ra như đánh cắp, phá
Objectives
hủy dữ liệu, tấn công từ chối dịch vụ, …
4
Hiện nay, Cyber Kill Chain vẫn là một trong các framework được sử dụng
phổ biến trong nhiều cơ quan, tổ chức, chẳng hạn như trong Bộ Quốc Phòng Mỹ
và các nước đồng minh. Về cơ bản, có thể thấy nó đã mô tả khá đầy đủ các giai
đoạn của một cuộc tấn cơng. Tuy nhiên, nó vẫn cịn thiếu các bước cần xử lý sau
khi kẻ tấn công đã xâm nhập được vào hệ thống. Hơn nữa, các kỹ thuật phịng
thủ trong mơ hình này tập trung chủ yếu dựa trên các thiết bị phần cứng như
tường lửa, hệ thống phát hiện và ngăn chặn xâm nhập nên có thường có chi phí
vơ cùng đắt đỏ.
Hình 1.1. Sơ đồ các bước tấn công theo Cyber Kill Chain Framework [3]
1.1.2
NIST Cybersecurity Framework
Viện Tiêu chuẩn và Công nghệ Quốc gia Mỹ (NIST) là cơ quan trực thuộc
Bộ phận Quản trị Công nghệ của Bộ Thương mại Mỹ, được thành lập nhằm thúc
đẩy sự đổi mới và cạnh tranh công nghiệp của Mỹ thông qua việc cải tiến hệ
thống đô lường, các tiêu chuẩn và cơng nghệ, từ đó nâng cao nền kinh tế và cải
thiện phúc lợi xã hội.
Hình 1.2. Sơ đồ các thành phần của NIST CyberSecurity Framework [17]
NIST CyberSecurity Framework [17] là một hệ thống các chính sách và quy
trình được xây dựng bởi các tổ chức an ninh mạng hàng đầu nhằm củng cố các
chiến lược an ninh mạng trong mơi trường doanh nghiệp. Nó bao gồm lý thuyết
5
và các quy trình đã được kiểm chứng trong thực tế. Phiên bản 1.1 hiện tại được
nâng cấp từ phiên bản 1.0 phát hành trước đó vào tháng 02/2014. Mục tiêu của
NIST CyberSecurity sẽ cung cấp một số chức năng sau:
- Identify: Đề cập đến việc nâng cao nhận thức của tổ chức trong việc quản
lý rủi ro an ninh mạng đối với hệ thống, con người, tài sản và dữ liệu. Ví dụ
nghiên cứu về Risk Assessment, Risk Management Strategy, v.v.
- Protect: Đề cập đến việc xây dựng và thực hiện các biện pháp bảo vệ
nhằm đảm bảo an tồn cho các dịch vụ quan trọng. Ví dụ như Data Security,
Information Protection Processes and Procedures, v.v
- Detect: Đề cập đến việc xây dựng và triển khai giải pháp phát hiện các
cuộc tấn cơng mạng. Ví dụ như phát hiện các sự kiện bất thường, phát hiện các
tiến trình lạ, v.v.
- Respond: Đề cập đến việc xây dựng và triển khai các hành động khi phát
hiện sự cố an ninh mạng. Ví dụ như xây dựng quy trình phối hợp và xử lý sự cố
(Response Plainning), v.v.
- Recover: Đề cập đến việc xây dựng và triển khai kế hoạch liên quan đến
khôi phục và phục hồi hệ thống sau các sự cố an ninh mạng. Ví dụ xây dựng kế
hoạch khắc phục sự cố (Recovery Planning), v.v.
Về cơ bản, có thể thấy NIST CyberSecurity Framework xác định khá đẩy đủ các
giai đoạn trong một cuộc tấn cơng. Nó là cơ sở để xây dựng các chính sách an
tồn thơng tin cho tổ chức, doanh nghiệp. Tuy nhiên, mơ hình này không đề cập
đến các kỹ thuật tấn công cụ thể nên rất khó áp dụng để ngăn chặn tấn cơng trong
thực tế. Nó thường chỉ phù hợp cho việc xây dựng các chính sách an tồn, an
ninh thơng tin cho tổ chức.
1.1.3
MITRE ATT&CK Framework
MITRE là một tổ chức phi lợi nhuận thành lập năm 1958 với sứ mệnh nhằm
giải quyết các vấn đề vì một thế giới an tồn hơn “solve problems for a safer
world” [2]. Năm 2013, tổ chức này đã cho ra mắt ATT&CK Framework, một
nền tảng tổng hợp và cập nhật thông tin về các chiến thuật, kỹ thuật của các cuộc
tấn cơng mạng trên tồn thế giới. Các thông tin này sẽ được phân loại và trình
bày dưới dạng ma trận, trong đó có 3 nhóm chính sau:
- Enterprise: Chứa thơng tin về kỹ thuật tấn công liên quan đến các nền
tảng của Windows, Linux, MacOSX, PRE, Azure AD, Office 365, Google
Workspace, SaaS, IaaS, Network và Container.
- Mobile: Chứa thông tin về các kỹ thuật tấn công liên quan đến quyền truy
cập của thiết bị và các kỹ thuật lợi dụng hiệu ứng mạng để tấn công mà không
6
cần truy cập thiết bị. Các ma trận trong nhóm này tập trung phát triển cho 2 nền
tảng là Android và IOS.
- ICS (Industrial Control Systems): Chứa thông tin liên quan đến các kỹ
thuật tấn công vào hạ tầng thiết bị cơng nghiệp.
Vào tháng 09/2020, một cuộc thăm dị được thực hiện bởi UC Berkeley
[19] cho thấy có tới hơn 81% các tổ chức, doanh nghiệp khi được khảo sát đều đã
áp dụng ít nhất một trong các ma trận ATT&CK vào hệ thống của mình. Điều
này cho thấy ATT&CK ngày càng trở nên phổ biến và dần thay thế Cyber Kill
Chain của Lookheed Martin để trở thành tiêu chuẩn đánh giá khả năng phòng thủ
của các hệ thống bảo mật trong việc ngăn chặn các cuộc tấn cơng mạng.
Hình 1.3. Sơ đồ một số chiển thuật và kỹ thuật tấn công dưới dạng
ma trận trong MITRE ATT&CK [1]
Thuật ngữ ATT&CK là viết tắt của các chiến thuật (adversarial tatic), kỹ
thuật tấn công (technique) và các hiểu biết thông thường (common knowledge).
Mỗi một chiến thuật có thể hiểu như một giai đoạn trong cả cuộc tấn công. Phạm
vi của luận văn này sẽ chỉ nghiên cứu các kỹ thuật trong ma trận phân loại tấn
cơng có đối tượng là doanh nghiệp. Bảng bên dưới sẽ thống kê và mô tả các
chiến thuật trong ma trận trên.
7
Bảng 1.1. Bảng mô tả các chiến thuật tấn công trong ma trận ATT&CK
Tatic
Tên tatic
Số
Ý nghĩa
ID
technique
TA0043 Reconnaissance 10
Kẻ tấn công cố gắng thu thập thông
tin phục vụ cho các kế hoạch sau này.
TA0042 Resource
7
Kẻ tấn công cố gắng chuẩn bị nguồn
Development
lực cho q trình tấn cơng. Ví dụ mua
tên miền, mua các gói dịch vụ, v.v.
TA0001 Initial Access
9
Kẻ tấn cơng bắt đầu cố gắng xâm
nhập vào hệ thống mạng mục tiêu.
TA0002 Execution
12
Kẻ tấn công đang cố gắng thực thi các
tiến trình, các đoạn mã độc hại.
TA0003 Persistence
19
Kẻ tấn cơng cố gắng duy trì quyền
truy dựa trên thơng tin có được về tên
đăng nhập/mật khẩu, hoặc chỉnh sửa
các khóa registry, v.v.
TA0004 Privilege
13
Kẻ tấn công cố gắng leo thang đặc
Escalation
quyền để gia tăng mức nguy hiểm của
hành vi tấn cơng. Ví dụ như cố gắng
lấy được quyền SYSTEM/root, tài
khoản Domain Administrator.
TA0005 Defense
40
Kẻ tấn công cố gắng che giấu hành vi
Evasion
tấn công bằng cách vơ hiệu hóa các
phần mềm bảo mật trên máy tính, làm
xáo trộn hoặc mã hóa dữ liệu, v.v.
TA0006 Credential
15
Kẻ tấn công cố gắng đánh cắp thông
Access
tin xác thực như tên đăng nhập và mật
khẩu truy cập hệ thống.
TA0007 Discovery
29
Kẻ tấn công do thám thông tin về các
thành phần khác trong hệ thống để
mở rộng phạm vi tấn công.
TA0008 Lateral
9
Kẻ tấn công cố gắng tấn công sang
Movement
các hệ thống lân cận.
TA0009 Collection
17
Kẻ tấn công cố gắng thu thập các dữ
liệu mục tiêu, ví dụ như nén, gom lại.
TA0011 Command and 16
Kẻ tấn công cố gắng kết nối với các
Control
hệ thống đã bị xâm nhập trái phép.
TA0010 Exfiltration
9
Kẻ tấn công cố gắng đánh cắp dữ liệu
đã thu thập, tổng hợp ở trên.
TA0040 Impact
13
Kẻ tấn công cố gắng thao túng hệ
thống hoặc phá hủy dữ liệu.
8
Về cơ bản, có thể thấy các chiến thuật tấn công trong ATT&CK khá giống
các giai đoạn trong Cyber Kill Chain. Tuy nhiên, điểm khác biệt chính là nó sẽ
mơ tả chi tiết hơn các kỹ thuật tấn công được sử dụng trong mỗi bước, cùng với
các thông tin tham chiếu như tên các phần mềm độc hại, các chiến dịch tấn cơng
liên quan trong thực tế, ví dụ APT29, APT32, v.v. Ngồi ra, nó cũng cung cấp
các đề xuất để phát hiện và giảm thiểu mối đe dọa. Ví dụ, trong ATT&CK mô tả
các hành vi mà kẻ tấn cơng có thể thực hiện sau khi chúng đã tấn công được sang
các hệ thống lân cận (Lateral Movement) – giai đoạn thường bị bỏ qua trong mơ
hình của Cyber Kill Chain. Điều này cho phép các nhà phân tích tìm ra những kẻ
tấn cơng đã vượt qua lớp phịng thủ bên ngoài và đang gây ra các mối đe dọa bên
trong. Chẳng hạn như hắn sẽ sử dụng các thông tin đăng nhập hợp lệ đã thu thập
được để phá hoại hệ thống.
Hiện tại, theo ma trận phân loại các kỹ thuật tấn công vào doanh nghiệp của
ATT&CK đang ghi nhận là 188 kỹ thuật tấn công (technique) và 379 kỹ thuật tấn
công ở mức chi tiết hơn (sub-technique). Chúng sẽ liên tục được cập nhật để có
thể sớm phát hiện các mối đe dọa tiềm tàng trong thực tế.
Bảng 1.2. Bảng đánh giá ưu và nhược điểm của MITRE ATT&CK Framework
Cyber Kill Chain
Cung cấp đầy đủ các giai
đoạn của một cuộc tấn
cơng
NIST Cybersecurity
+) Cung cấp cái nhìn
tổng quan về các giai
đoạn trong một cuộc
tấn công
+) Cho phép xây
dựng các chính sách
an tồn thơng tin cho
tổ chức
Nhược +) Giải pháp phòng thủ
điểm
chủ yếu dựa trên thiết bị
phần cứng như FW,
IDPS, v.v.
+) Chưa có các bước xử
lý sau khi kẻ tấn cơng
xâm nhập vào hệ thống
+) Chưa đánh giá được
chính xác một số cuộc
tấn cơng có độ tinh vi
cao
+) Khơng mô tả các
kỹ thuật cụ thể cho
từng giai đoạn của
cuộc tấn cơng
+) Chỉ phù hợp với
việc xây dựng chính
sách
Ưu
điểm
MITRE ATT&CK
+) Cung cấp đầy đủ,
cập nhật thường xuyên
các kỹ thuật tấn cơng
cho nhiều nền tảng
khác nhau
+) Có tài liệu tham
chiếu đầy đủ, dùng
được cho cả đội giám
sát (Blue Team), đội
tấn công (Red Team)
và đội Purple Team
+) Số lượng các tatic
và technique lớn dẫn
đến khó quản lý và
mất nhiều thời gian để
áp dụng trong thực tế
9
Với độ bao phủ rộng khắp hầu hết các kỹ thuật tấn cơng và liên tục được
đóng góp, cập nhật từ cộng đồng, MITRE ATT&CK đã và đang mang lại nhiều
thơng tin có giá trị cho các tổ chức và các nhà nghiên cứu bảo mật.
- Với doanh nghiệp đang cần xây dựng các hệ thống ngăn chặn tấn công thì
việc ánh xạ với MITRE ATT&CK là rất cần thiết. Khi hiểu rõ các giai đoạn, các
kỹ thuật tấn công cũng như nắm được các điểm yếu và nguồn dữ liệu dễ bị tấn
cơng sẽ giúp tổ chức có phương án đầu tư bảo vệ toàn diện, đạt hiệu quả cao mà
lại tránh được lãng phí cả về nhân lực và vật lực.
- Với các nhà nghiên cứu bảo mật, MITRE ATT&CK đóng vai trị cung cấp
nhiều tham chiếu hữu ích, hỗ trợ trong việc giả lập tấn công cũng như phục vụ tốt
q trình phân tích, điều tra và xử lý sự cố.
- Với các tổ chức cung cấp các sản phẩm, dịch vụ an tồn thơng tin thì việc
tham chiếu với MITRE ATT&CK sẽ giúp họ đánh giá được những mặt đã đạt và
chưa đạt trong các sản phẩm, dịch vụ của mình trước việc chống lại các cuộc tấn
cơng trong thực tế. Từ đó, có phương án phát triển phù hợp.
Trong phạm vi nghiên cứu của luận văn này, em sẽ tập trung xây dựng tập
luật được ánh xạ với các kỹ thuật tấn công trong MITRE ATT&CK, cho phép
triển khai trên nhiều nền tảng SIEM khác nhau nhằm sớm phát hiện các hành vi
nghi ngờ là tấn công, các mối đe dọa tiềm tàng trong thực tế.
1.2 Giới thiệu về logs trên hệ điều hành Windows và Linux
Nội dung chính của phần này sẽ giới thiệu về các loại logs mặc định trên hệ
điều hành Windows, Linux, cũng như một số cấu hình cần thiết lập, một số dịch
vụ có thể cài đặt bổ sung nhằm sinh thêm một số logs cần thiết, phục vụ quá trình
giám sát hệ thống và điều tra, xử lý sự cố.
1.2.1 Nhật ký Windows Event Logs
1.2.1.1. Cấu trúc Windows Event Logs
Hệ thống nhật ký sự kiện trong hệ điều hành Windows khá đa dạng, nhưng
nhìn chung gồm hai loại chính là: nhật ký hệ thống và nhật ký dịch vụ. Người
dùng hoặc người quản trị các máy chủ Windows có thể truy cập tồn bộ hệ thống
nhật ký này thơng qua cơng cụ “Event Viewer” được tích hợp sẵn trong hệ điều
hành, hoặc sử dụng các câu lệnh có chức năng tương tự. Danh mục một số loại
nhật ký trên Windows bao gồm có nhật ký ứng dụng (Application), nhật ký bảo
mật (Security) và nhật ký hệ thống (System). Ngoài ra, cịn có hai loại nhật ký
được bổ sung trên một số phiên bản hệ điều hành Windows gần đây là nhật ký
thiết lập (Setup) và nhật ký chuyển tiếp sự kiện (Forwarded Events). Toàn bộ hệ
10
thống nhật ký này sẽ lưu trữ các sự kiện phát sinh trong quá trình hệ thống cung
cấp dịch vụ cho người dùng, chi tiết được mô tả trong bảng bên dưới.
Bảng 1.3. Bảng mô tả một số loại logs trên hệ điều hành Windows
Loại logs
Application
Security
Setup
System
Forwarded
Events
Mô tả chi tiết
Chứa các sự kiện phát sinh bởi các ứng dụng hoặc chương trình
đang hoạt động trên hệ thống. Ví dụ ghi lại lỗi xử lý các tệp tin
trong quá trình hoạt động của hệ quản trị cơ sở dữ liệu, v.v.
Chứa các sự kiện liên quan đến các hoạt động đảm bảo an tồn
cho hệ thống. Ví dụ ghi các sự kiện đăng nhập vào hệ thống của
người dùng, các hành vi liên quan đến việc sử dụng tài nguyên
của hệ thống như tạo, mở, xóa tệp tin, v.v. Người quản trị có thể
kích hoạt tính năng kiểm tốn (Audit) trên hệ thống để ghi bổ
sung thêm nhiều sự kiện vào loại logs này.
Ghi lại các sự kiện liên quan đến việc thiết lập ứng dụng, các lỗi
phát sinh do thiếu thư viện, v.v. Nó giúp người quản trị kiểm
sốt q trình cài đặt và đưa ra hướng xử lý khi có lỗi phát sinh
trong quá trình cài đặt ứng dụng.
Ghi lại các sự kiện liên quan đến một số thành phần quan trọng
của hệ điều hành. Ví dụ như lỗi các trình điều khiển, lỗi phát
sinh khi khởi động hệ thống.
Ghi lại các sự kiện nhận được từ các máy tính khác trong mạng.
Trong hệ thống nhật ký sự kiện của hệ điều hành Windows, ngoài thành
phần truyền thống Windows Logs, cịn có một thành phần khác gọi là nhật ký
ứng dụng và dịch vụ (Applications and Service Logs). Chúng cho phép lưu trữ
các sự kiện phát sinh từ một ứng dụng, hoặc từ một số thành phần quan trọng
khác của hệ thống, ví du như lưu các sự kiện liên quan đến logs thực thi
PowerShell, hoặc logs liên quan đến các tác vụ được lập lịch trên hệ thống.
Theo mặc định, toàn bộ các tệp nhật ký sự kiện trong Windows sẽ được lưu trữ
tại đường dẫn thư mục C:\Windows\System32\winevt\Logs\. Mỗi tệp logs này
đều được thiết lập một giá trị kích thước tối đa. Khi đạt giá trị tới hạn, các tùy
chọn sau sẽ ảnh hưởng tới việc lưu trữ logs trên hệ thống:
- Overwrite events as needed (oldest events first): Cho phép tiếp tục ghi
các sự kiện mới và xóa bỏ các sự kiện cũ khỏi hệ thống.
- Archive the log when full, do not overwrite events: Cho phép tự động
tạo bản sao khi tệp logs đầy và tiếp tục ghi các sự kiện mới vào tệp log.
11
- Do not overwrite events (Clear logs manually): Dừng việc ghi logs của
hệ thống cho đến khi các sự kiện được xóa thủ cơng.
Bên trong mỗi tệp nhật ký sẽ gồm nhiều sự kiện, mỗi sự kiện được lưu trữ
dưới dạng cấu trúc XML (Extensible Markup Language). Ta có thể trích xuất
thơng tin liên quan đến các sự kiện này thông qua giao diện của Event Viewer,
hoặc tạo các truy vấn XPath Query với tiện ích dịng lệnh wevtutil. Bên trong
mỗi một sự kiện sẽ chứa nhiều trường thông tin khác nhau, trong đó có một số
trường như EventRecordID cho phép định danh vị trí của sự kiện trong tệp nhật
ký, trường EventID để định danh các giá trị cần lưu trữ trong sự kiện, trường
TimeCreated cho biết thời gian sự kiện được tạo ra, v.v. Các giá trị của trường
EventID có thể thay đổi, tùy thuộc vào phiên bản của hệ điều hành.
1.2.1.2. Cấu hình Audit trên Windows
Theo mặc định, các máy tính khi được cài đặt hệ diều hành Windows đều
được tự động thiết lập cấu hình cho phép ghi lại một số thông tin cơ bản vào
Windows Event Logs. Để sinh thêm một số logs cần thiết phục vụ q trình giám
sát an tồn, an ninh thơng tin cho hệ thống, Windows đã tích hợp sẵn dịch vụ
kiểm toán (Audit) ngay trên hệ điều hành. Để tương tác với dịch vụ này, ta có thể
sử dụng giao diện đồ họa, hoặc sử dụng giao diện dòng lệnh với tiện ích auditpol
hoặc các câu lệnh PowerShell có chức năng tương tự. Trong đó, việc sử dụng
dịng lệnh sẽ giúp tự động hóa nhiều tác vụ, tuy nhiên địi hỏi người dùng phải có
hiểu biết nhất định về hệ thống Windows để tránh phát sinh lỗi trong quá trình
thực hiện.
Hiện tại, các hệ điều hành Windows đều cung cấp 2 loại chính sách kiểm
tốn là Basic Security Audit Policy và Advanced Security Audit Policy. Về cơ
bản chúng đều có tính chất tương tự nhau, cho phép ghi bổ sung thêm các logs
cần thiết, tuy nhiên các chính sách thuộc nhóm Advanced sẽ cho phép ghi lại
nhiều thơng tin và thông tin được phân loại chi tiết hơn.
Bảng 1.4. Bảng so sánh Basic Audit Policy và Advanced Audit Policy
Basic Security Audit Policy Advanced Security Audit Policy
Đường dẫn Security
Settings\Local Security Settings\Advanced Audit
cấu hình
Policies\Audit Policy
Policy
Configuration\System
Audit Policies
Chính sách +) Cung cấp 9 tiêu chí kiểm +) Cung cấp 10 tiêu chí kiểm tốn
kiểm toán
toán cơ bản
và nhiều tùy chọn chi tiết hơn
Phiên bản Hỗ trợ tất cả phiên bản Chỉ hỗ trợ từ phiên bản Windows
hệ
điều Windows, từ Windows 2000 7, Windows Server 2008 trở lên
hành hỗ trợ trở lên
12
Đối với các máy tính Windows chịu sự quản lý của hệ thống máy chủ
Domain Controller (DC), ta có thể thiết lập các chính sách nhóm GPO (Group
Policy Objject) để “đẩy” tồn bộ cấu hình chính sách kiểm tốn từ máy chủ DC
về các thành viên trong miền mà nó quản lý. Đối với các máy chủ cục bộ, hoạt
động theo dạng WORKGROUP, ta có thể sử dụng Local Group Policy Editor để
thiết lập cấu hình chính sách kiểm tốn. Thơng tin chi tiết về các chính sách và
cách thiết lập cấu hình Audit trên hệ diều hành Windows có thể tham khảo trên
trang chủ của Microsoft [20].
1.2.2 Dịch vụ Sysmon
1.2.2.1. Giới thiệu về Sysmon
Sysmon (System Monitor) [12] là một dịch vụ hệ thống và driver thiết bị
trên hệ điều hành Windows. Sau khi cài đặt, sẽ cho phép giám sát và ghi lại toàn
bộ hoạt động của hệ thống vào nhật ký sự kiện Windows Event Logs theo đường
dẫn
Applications
and
Services
Logs/Microsoft/Windows/Sysmon/Operational. Trong Sysmon sẽ cung cấp
thông tin chi tiết về quá trình tạo tiến trình, kết nối mạng và các thay đổi đối với
thời gian tạo tệp. Thông qua việc thu thập và phân tích các sự kiện này trên hệ
thống SIEM, ta có thể xác định các hoạt động độc hại hoặc các hành vi bất
thường trên các hệ thống. Sau khi cài đặt, dịch vụ Sysmon có thể cung cấp một
số chức năng sau:
- Ghi nhật ký tạo tiến trình với đầy đủ thơng tin về tham số dịng lệnh của
tiến trình hiện tại và tiến trình tra (Parent Process).
- Ghi lại giá trị mã băm của tệp thực thi tiến trình (Proccess Image) sử dụng
mã SHA1 (mặc định), MD5, SHA256 hoặc IMPHASH.
- Hỗ trợ sử dụng nhiều hàm băm cùng một lúc. Ví dụ: MD5, SHA1, v.v.
- Ghi lại Process GUID trong logs tạo mới tiến trình, cho phép tổng hợp các
thông tin liên quan đến một phiên đăng nhập hoặc khi Windows sử dụng lại các
Process ID.
- Ghi lại nhật ký nạp driver hoặc DLL với chữ ký và mã băm của chúng.
- Tùy chọn ghi lại nhật ký các kết nối mạng, bao gồm tiến trình kết nối, địa
chỉ IP, số hiệu cổng nguồn, tên máy chủ và tên cổng kết nối.
- Cho phép phát hiện thay đổi thời gian tạo tệp để biết thời điểm tệp thực sự
được tạo ra trên hệ thống. Việc sửa lại thời gian tạo tệp là một kỹ thuật phổ biến
thường được sử dụng bởi mã độc.
- Tự động tải lại cấu hình nếu có thay đổi trong khóa registry.
13
- Thiết lập các bộ lọc trong tệp cấu hình dịch vụ Sysmon cho phép lấy
(include), hoặc loại bỏ (exclude) các sự kiện nhất định.
- Cho phép sinh các logs trước q trình khởi động hệ thống để có thể phát
hiện hành vi của các phần mềm độc hại hoạt động ở tầng kernel-mode.
Bảng bên dưới sẽ đánh giá một số ưu điểm và nhược điểm của dịch vụ Sysmon
khi cài đặt lên các tính chạy hệ điều hành Windows.
Bảng 1.5. Bảng đánh giá ưu điểm và nhược điểm của dịch vụ Sysmon
Ưu điểm
Nhược điểm
+) Khả năng gây nhiễu, sinh
+) Cho phép ghi lại logs chứa mã băm của nhiều logs nên cần lọc, theo dõi
và tối ưu trong quá trình triển
tiến trình được thực thi
khai giám sát
+) Cung cấp miễn phí bởi Microsoft
+) Có khả năng hỗ trợ phát hiện mã độc mà +) Kẻ tấn cơng có thể dễ dàng
vơ hiệu hóa, vượt qua hoặc phá
các logs mặc định không làm được
hoại dịch vụ Sysmon nên cần
+) Ghi lại logs liên quan đến các tiến trình,
giám sát sự thay đổi cấu hình
nạp driver, DLL, thay đổi khóa registry, v.v.
dịch vụ
+) Ghi lại logs liên quan đến các kết nối mạng
+) Dễ dàng tích hợp trên nền tảng Windows
1.2.2.2. Cấu hình dịch vụ Sysmon
Chi tiết cách cài đặt và cấu hình dịch vụ Sysmon cho các máy Windows
[12] cùng với tệp cấu hình mẫu [24] có thể tham khảo trên trang chủ của nhà phát
triển. Để đảm bảo việc cài đặt thành công, cần chú ý các thông số trong tệp cấu
hình phải phù hợp với phiên bản Sysmon sử dụng. Khi cấu hình Sysmon trên các
máy đã cài phần mềm diệt vi-rút, EDR thì cần loại bỏ tệp thực thi và driver của
Sysmon khỏi danh sách rà quét của các phần mềm trên để không ảnh hưởng tới
hiệu suất của hệ thống. Trong thực tế, nên triển khai cấu hình Sysmon trên một
số máy chủ trong mạng trước. rồi đánh giá và tối ưu tệp cấu hình tránh sinh ra
các sự kiện không cần thiết gây nhiễu hệ thống. Để quá trình giám sát hệ thống
bằng Sysmon được hiệu quả, cần một số lưu ý sau:
- Giám sát các khóa registry của dịch vụ tại đường
Computer\HKLM\SYSTEM\CurrentControlSet\Services\Sysmon64
Computer\HKLM\SYSTEM\CurrentControlSet\Services\SysmonDrv
dẫn:
và
- Giám sát tên và vị trí tệp cấu hình sysmon_config.xml
- Phát hiện tệp cấu hình sysmon_config.xml bị thay đổi, dịch vụ sysmon bị
dừng hoặc vơ hiệu hóa
14
- Phát hiện dịch vụ Sysmon không ghi logs và các tiến trình chèn vào tiến
trình sysmon.exe
Để xây dựng tệp cấu hình, trước tiên cần lấy thơng tin phiên bản và schema
của dịch vụ Sysmon hỗ trợ. Tiếp theo, tạo tag <Sysmon> cho tệp cấu hình theo
định dạng XML. Ví dụ:
<Sysmon schemaversion="4.22">
<!-- Cac cau hinh khac -->
</Sysmon>
Trong <Sysmon> tag, bổ sung một số mục (entry) sau để thêm các thông số
cấu hình. Ví dụ, thêm thẻ <HashAlgorithms> để chỉ định thuật toán mã băm
được
sử
dụng,
chẳng
hạn
<HashAlgorithms>md5,
sha256,
IMPHASH</HashAlgorithms>
Thực hiện tương tự với các entry khác để thu được tệp cấu hình hồn chỉnh.
Tiếp theo, cần thiết lập bộ lọc cho các sự kiện trong tệp cấu hình Sysmon.
- Tùy chọn include: Cho phép Sysmon sinh các log liên quan tới các cấu
hình trong thẻ này.
- Tùy chọn exclude: Cho phép Sysmon loại bỏ các log liên quan tới các cấu
hình trong thẻ này.
Ví dụ cấu hình sau cho phép ghi logs khi tiến trình cha của các process kết
thúc với regsvcs.exe hoặc regasm.exe. Kỹ thuật tấn công theo MITRE
Framework tương tứng được mô tả theo sau mỗi điều kiện.
<Sysmon schemaversion="4.0">
<!-- Capture all hashes -->
<HashAlgorithms>*</HashAlgorithms>
<CheckRevocation/>
<EventFiltering>
<ProcessCreate onmatch="include"> <!-- EventID = 1: Process Creation -->
<Image condition="end with">regsvcs.exe</Image> <!-- MITRE T1121 -->
<Image condition="end with">regasm.exe</Image> <!-- MITRE T1121 -->
</ProcessCreate>
Ví dụ cấu hình sau cho phép Sysmon khơng ghi logs khi một trong các
tiến trình sau được thực thi. Đây là các tiến trình hợp lệ của Windows, có thể
phát sinh rất nhiều logs gây nhiễu trong quá trình giám sát.
15
<Sysmon schemaversion="4.0">
<!-- Capture all hashes -->
<HashAlgorithms>*</HashAlgorithms>
<CheckRevocation/>
<EventFiltering>
<ProcessCreate onmatch="exclude"> <!-- EventID = 1: Process Creation -->
<!-- Section: Microsoft Office Click2Run: Background Process -->
condition="is">C:\Program
Shared\ClickToRun\OfficeC2RClient.exe</Image>
Files\Common
Files\Microsoft
condition="end
with">C:\Program
Files\Microsoft Shared\ClickToRun\OfficeClickToRun.exe</ParentImage>
Files\Common
<ParentImage condition="is">C:\Program Files\Common Files\Microsoft
Shared\ClickToRun\OfficeC2RClient.exe</ParentImage>
</ProcessCreate>
Trong quá trình giám sát an tồn, an ninh thơng tin cho các máy tính
Windows sử dụng dịch vụ Sysmon, ta cần chú ý một số sự kiện trong logs sau:
Bảng 1.6. Bảng thống kê một số sự kiện trong logs của dịch vụ Sysmon
Event Event Name
ID
Mô tả chi tiết
Ghi lại logs liên quan đến việc tạo mới tiền trình
1
Process creation
2
A process changed Ghi logs liên quan đến việc thay đổi thời gian tạo
a file creation time mới tệp tin trên Windows
3
Network
connection
4
Sysmon
service Ghi lại logs liên quan đến việc thay đổi trạng thái
state changed
của dịch vụ Sysmon (bắt đầu hoặc vơ hiệu hóa)
6
Driver loaded
Ghi lại logs liên quan đến các driver được nạp
vào hệ thống, gồm thông tin về mã băm, chữ ký
của driver, v.v.
7
Image loaded
Ghi lại logs liên quan đến việc nạp một image
vào trong một tiến trình cụ thể. Tùy chọn này
mặc định bị vơ hiệu hóa trong cấu hình Sysmon
8
Create
Thread
10
ProcessAccess
Ghi lại logs liên quan đến các kết nối mạng trên
máy tính. Mặc định được vơ hiệu hóa
Remote Ghi lại logs phát hiện một tiến trình tạo một
luồng (thread) trong một tiến trình khác. Đây là
kỹ thuật thường được các phần mềm độc hại sử
dụng để chèn mã độc và che giấu hành vi trong
một chiến trình khác
Ghi lại logs khi phát hiện một tiến trình mở truy
16