Mỗi phương pháp đều mang lại những hiệu quả nhất định, nhưng bên cạnh đó chúng còn tồn tại những hạn chế riêng: - Hệ chuyên gia rule-based: Phương pháp này sử dụng các luật tấn công đã
Trang 1MỞ ĐẦU 2
Tính cấp thiết của đề tài 2
Tổng quan về vấn đề nghiên cứu 2
Mục đích nghiên cứu 3
Đối tượng và phạm vi nghiên cứu 4
Phương pháp nghiên cứu 5
Chương 1: Cơ sở lý thuyết 5
Chương 2: Tìm hiểu và nghiên cứu các phương pháp phát hiện tấn công trong hệ thống IDS 5
Chương 3: Phương pháp phát hiện xâm nhập dựa trên mạng Nơ-ron 5
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 6
1.1 Tổng quan về tấn công mạng 6
1.1.1 Khái niệm 6
1.1.2 Các kiểu tấn công mạng 6
1.2 Bài toán phát hiện xâm nhập mạng 7
1.2.1 Phát hiện xâm nhập mạng 7
1.2.2 Phân loại phương pháp phát hiện xâm nhập mạng 8
1.3 Hệ thống phát hiện xâm nhập IDS 10
1.3.1 Thành phần của hệ thống IDS 10
1.3.2 Phân loại các hệ thống IDS 12
1.4 Kết luận chương 16
CHƯƠNG 2: TÌM HIỂU VÀ NGHIÊN CỨU CÁC PHƯƠNG PHÁP PHÁT HIỆN TẤN CÔNG TRONG HỆ THỐNG IDS 17
2.1 Thế nào là bất thường trong mạng 17
2.2 Các nguồn dữ liệu dùng cho phát hiện bất thường 19
2.2.1 Network Probes 19
2.2.2 Lọc gói tin cho việc phân tích luồng 19
2.2.3 Dữ liệu từ các giao thức định tuyến 20
2.2.4 Dữ liệu từ các giao thức quản trị mạng 20
2.3 Các phương pháp phát hiện bất thường 21
2.3.1 Phương pháp hệ chuyên gia (rule-based) 22
2.3.2 Phương pháp mạng nơ-ron (Artificial Neural Network) 23
2.3.3 Phân tích thống kê 28
Trang 22.4 Kết luận chương 33
CHƯƠNG 3: PHƯƠNG PHÁP PHÁT HIỆN XÂM NHẬP DỰA TRÊN MẠNG NƠ-RON 35
3.1 Mô hình mạng nơ-ron trong bài toán phát hiện xâm nhập 35
3.1.1 Mạng nhiều lớp truyền thẳng - MLP 38
3.1.2 Thuật toán học theo phương pháp lan truyền ngược sai số trong mạng nơ-ron MLP 40
3.1.3 Một số vấn đề cần chú ý khi sử dụng mạng MLP 43
3.2 Bộ dữ liệu KDD cup 99 49
3.3 Tiền xử lý dữ liệu 52
3.3.1 Chuyển các giá trị phi số sang số 53
3.3.2 Chuẩn hóa lại các giá trị đầu vào của tập dữ liệu 10% KDD 99 55
3.3.3 Loại bỏ các bản ghi trùng lặp trong tập dữ liệu 10% KDD 99 57
3.3.4 Loại bỏ các đặc trưng dư thừa trong tập KDD 99 58
3.4 Đánh giá kết quả phát hiện xâm nhập bước đầu với 5 lớp đầu ra 60
3.5 Phương pháp cải tiến chất lượng hệ thống IDS sử dụng mạng nơ-ron 64
3.6 Kết quả thực nghiệm sau khi cải tiến 67
3.7 Kết luận chương 72
KẾT LUẬN 73
Kết quả đạt được 73
Hướng nghiên cứu tương lai 74
DANH MỤC CÁC TÀI LIỆU THAM KHẢO 75
Trang 3Hình 1 1: Mô hình cảnh báo với NIDS [1] 12
Hình 1 2: Hệ thống Host-based Intrusion Detection [1] 15
Hình 1 3: Hệ thống Hybrid Intrusion Detection 16
Hình 2 1: Mô hình hệ thống phát hiện bất thường dựa trên rule-based [1] 23
Hình 2 2: Mô hình mạng nơ-ron trong phát hiện bất thường 25
Hình 2 3: Cấu trúc một hệ thống phát hiện bất thường sử dụng SOM [1] 27
Hình 2 4: Thiết kế của mạng SOM [1] 28
Hình 2 5: Mô hình FSM cho kết nối TCP [1] 33
Hình 3 1: Các bước kiểm tra dữ liệu với mô hình mạng nơ-ron đã huấn luyện 36
Hình 3 2: Sơ đồ hoạt động mạng nơ-ron trong quá trình huấn luyện 37
Hình 3 3: Phát hiện gói tin bất thường sử dụng mạng nơ-ron 38
Hình 3 4: Mạng MLP tổng quát [3] 39
Hình 3 5: Đường nét đứt thể hiện cơ chế lan truyền ngược để điều chỉnh lại trọng số 41
Hình 3 6: Hàm sigmoid g(x) = 1/(1+e-x) [4] 43
Hình 3 7: Nội suy hàm y = sin(x/3) + v, 0≤ x ≤ 20 sử dụng MLP [12] 45
Hình 3 8: Huấn luyện luân phiên trên hai tập mẫu [3] 46
Hình 3 9: Tỉ lệ phát hiện thành công với hàm trainbfg 62
Hình 3 10: Tỉ lệ phát hiện thành công với hàm traincgf 63
Hình 3 11: Tỉ lệ phát hiện thành công với hàm traingdm 63
Hình 3 12: Tỉ lệ phát hiện thành công với hàm traingdx 63
Hình 3 13: Kết hợp mạng nơ-ron và Snort để cải tiến chất lượng phát hiện xâm nhập 66
Hình 3 14: Giao diện chính chương trình phát hiện xâm nhập sử dụng mạng nơ-ron 68
Hình 3 15: Thông số các lớp đầu vào và đầu ra của mạng nơ-ron 68
Hình 3 16: Quá trình học của mạng nơ-ron 69
Hình 3 17: Đồ thị huấn luyện của mạng 70
Hình 3 18: Kết quả test trên một dòng dữ liệu (1,0,0 là trạng thái Normal) 70
Hình 3 19: Kết quả test trên 22544 dòng dữ liệu độc lập với bộ train 70
Hình 3 20: Các luật dùng để phát hiện tấn công U2R và R2L 72
Trang 4Bảng 3 1: Mô tả các đặc trưng của bộ dữ liệu KDD cup 99 49
Bảng 3 2: Đặc điểm cơ bản của các tập con dữ liệu thuộc bộ KDD cup 99 [5] 52
Bảng 3 3: Chuyển các chữ phi số sang chữ số 53
Bảng 3 4: Nhãn lớp xuất hiện trong "10% KDD 99" dataset 54
Bảng 3 5: Giá trị nhỏ nhất và lớn nhất của các cột trong tập 10% KDD 99 56
Bảng 3 6: Số lượng mẫu dữ liệu của R2L, U2R sau khi đã loại bỏ trùng lặp 64
Bảng 3 7: Nhãn đầu ra của 3 lớp Normal, DoS, Probe 66
Bảng 3 8: Kết quả phát hiện xâm nhập với nhiều mô hình mạng nơ-ron khác nhau 71
Trang 5LỜI CẢM ƠN
Trước tiên tôi xin được gửi lời cảm ơn chân thành tới các thầy cô giáo trong khoa Công nghệ thông tin, đã truyền đạt cho chúng tôi nguồn kiến thức vô cùng quý báu, cũng như cách học tập và nghiên cứu khoa học hiệu quả
Đặc biệt, tôi xin gửi lời cảm ơn chân thành nhất tới TS Vũ Tất Thắng – viện công nghệ thông tin – viện Hàn lâm Khoa học và Công nghệ Việt Nam Thầy đã hướng dẫn và định hướng giúp tôi hoàn thành tốt luận văn này
Trong quá trình thực hiện luận văn, tôi đã nhận được sự giúp đỡ của các bạn trong lớp Khoa học máy tính Mặc dù rất cố gắng nhưng không thể tránh khỏi những thiếu sót trong lúc thực hiện, tôi rất mong đón nhận những đóng góp ý kiến từ bạn bè, thầy cô
Một lần nữa tôi chân thành cảm ơn!
Trang 6MỞ ĐẦU Tính cấp thiết của đề tài
Mặc dù ra đời chưa lâu nhưng mạng Internet đã phát triển mạnh mẽ và ngày nay
nó có ảnh hưởng sâu rộng trong hầu hết tất cả các lĩnh vực của đời sống con người Bên cạnh những lợi ích to lớn thì nó cũng mang lại nguy cơ bị tấn công không nhỏ cho các tổ chức và người dùng kết nối vào Internet Các cuộc tấn công mạng trên toàn thế giới không ngừng tăng về số lượng cũng như mức độ nguy hiểm của chúng [12] Những cuộc tấn công mạng có thể gây ra những hậu quả nghiêm trọng về kinh tế, xã hội thậm chí ảnh hưởng tới an ninh chính trị của một quốc gia Tại Việt Nam, trong những năm gần đây chúng ta không ít lần chứng kiến các hệ thống website nổi tiếng bị
tin tặc tấn công như:dantri.com.vn, vietnamnet.vn, vff.org.vn [12], [13], [14], [15] Việc phát hiện và xử lý thủ phạm gây ra các cuộc tấn công là cực kì khó khăn Giải pháp kỹ thuật phổ biến cho vấn đề này là tìm cách phát hiện sớm các cuộc tấn công mạng để từ
đó có giải pháp thích hợp xử lý đối phó với chúng
Tổng quan về vấn đề nghiên cứu
Một số hệ thống phát hiện xâm nhập ra đời (IDS – Intrusion Detection System)
nhằm phát hiện và ngăn chặn sớm các cuộc tấn công mạng Hai hướng tiếp cận phổ biến để xây dựng hệ thống IDS là: xây dựng Hệ chuyên gia (rule-based) [1] và hướng
ứng dụng Học máy (SVM, mạng nơ-ron ) Mỗi phương pháp đều mang lại những hiệu
quả nhất định, nhưng bên cạnh đó chúng còn tồn tại những hạn chế riêng:
- Hệ chuyên gia (rule-based): Phương pháp này sử dụng các luật tấn công đã
biết trước, dựa vào các luật được định nghĩa trong hệ thống mà khi có cuộc tấn công mới thì hệ thống sẽ so sánh các đặc trưng, dấu hiệu của gói tin với tập luật đã có Hệ thống phát hiện dựa trên hệ chuyên gia có thể kể đến như Snort Ưu điểm là khi đã được định nghĩa luật cho cuộc tấn công thì khả năng phát hiện nhầm rất thấp, hệ thống này có thể thêm các luật mới rất linh động, cơ chế hoạt động không quá phức tạp Nhược điểm là khi không có
Trang 7luật cho kiểu tấn công mới thì hệ thống không phát hiện được Số lượng luật nhiều hệ thống sẽ hoạt động chậm hơn IDS dạng này phụ thuộc rất nhiều vào khả năng cập nhật luật mới cũng như trình độ am hiểu về bảo mật của người quản trị
- Ứng dụng học máy: Phương pháp này ra đời với mục đích khắc phục việc
phải cập nhật các luật mới có thể tạo ra xung đột trong tập luật đã có, vốn chỉ phù hợp với các mô hình qui mô vừa và nhỏ Thay vào đó hệ thống IDS sẽ được học mô hình phát hiện bất thường dựa trên một số lượng nhất định các mẫu dữ liệu được thu thập Hiệu quả của phương pháp này thường cho ra hệ thống có khả năng tốt hơn đồng thời lại linh động trong thay đổi huấn luyện Với cách tiếp cận này, người ta có thể dễ dàng hơn trong việc xây dựng các
hệ thống IDS phức tạp, việc phát hiện xâm nhập không đơn thuần chỉ là phát hiện nhằm cảnh báo có tấn công hay không tấn công mà còn có thể đưa ra loại hình, tính năng chi tiết của cuộc tấn công tương ứng Mạng nơ-ron là một phương pháp học máy được chọn trong luận văn để ứng dụng cho bài toán phát hiện xâm nhập theo phương pháp học máy
Trên thực tế, hướng tiếp cận ứng dụng học máy cũng không đảm bảo cho kết quả tốt trong mọi tình huống Ví dụ, các hình thức tấn công như DoS,DDoS, Probe (thăm dò), U2R (leo thang đặc quyền) thường có tần suất chênh lệch nhau rất nhiều Các cuộc tấn công DoS là rất phổ biến nhưng các cuộc tấn công leo thang đặc quyền lại rất ít để lấy mẫu cho huấn luyện Điều này dẫn đến tình trạng dữ liệu thu thập được khi áp dụng cho học máy cũng có tỉ lệ chênh lệch rất lớn giữa các kiểu tấn công, dẫn đến việc dự báo bị thiên vị cho các trường hợp dữ liệu nhiều và ít hiệu quả với các trường hợp dữ liệu ít, đôi khi làm giảm cả chất lượng dự báo chung của cả hệ thống
Mục đích nghiên cứu
Mục đích của đề tài là tìm hiểu mạng nơ-ron để áp dụng cho bài toán phát hiện xâm nhập Bên cạnh đó đề tài còn quan tâm đến việc cải tiến chất lượng hệ thống IDS,
Trang 8nhằm mục đích phát hiện chính xác hơn và không thiên vị giữa các kiểu cảnh báo tấn công trong điều kiện dữ liệu huấn luyện chênh lệch nhau Trong quá trình thực hiện luận văn có thể thực hiện một số giải pháp cải tiến sau:
- Cải tiến bộ dữ liệu huấn luyện bằng cách loại bỏ các bản ghi trùng lặp, việc loại bỏ này cũng giúp phần giảm bớt sự thiên vị trong cảnh báo Luận văn cũng muốn giảm bớt một số thuộc tính dư thừa trong mỗi bản ghi bằng cách
kế thừa một nghiên cứu của Mukkamala và Sung [10], việc loại bỏ thuộc tính
dư thừa giúp quá trình huấn luyện trở nên nhanh hơn, chính xác hơn
- Kết hợp hệ thống chuyên gia (rule-based) cùng với mạng nơ-ron Hệ thống
rule-based sẽ được dùng để phát hiện các kiểu tấn công ít phổ biến, như thế các luật thêm vào hệ thống cũng không nhiều, độ chính xác và thời gian phát hiện nhanh Hệ thống IDS sử dụng mạng nơ-ron sẽ dùng để phát hiện các kiểu tấn công có tần suất lớn, nhằm hạn chế việc phải thêm quá nhiều luật bằng tay
Đối tượng và phạm vi nghiên cứu
Nghiên cứu kỹ thuật học máy mạng nơ-ron, sau đó ứng dụng để làm công cụ phân loại các kết nối mạng trên bộ dữ liệu KDD cup 99
Trong chương trình đánh giá phát hiện tấn công mạng của Cơ quan Quản lý
Nghiên cứu Dự Án Bộ quốc phòng Mỹ (DARPA), một môi trường đã được thiết lập để
thu được các dữ liệu thô về TCP/IP dump cho một mạng được mô phỏng giống như
mạng LAN của Không lực Hoa Kỳ Với mỗi kết nối TCP/IP, 41 đặc trưng số và phi số được trích xuất Dữ liệu được sử dụng trong cuộc thi KDD cup 1999 là một phiên bản
của bộ dữ liệu này Các cuộc tấn công thuộc về bốn loại chính: DoS, R2L, U2R,
Probing Dữ liệu KDD cup 1999 có thể tải từ trang web của đại học California (UCI)
[5]http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html
Nghiên cứu các hệ thống IDS sử dụng mô hình hệ chuyên gia (rule-based) như Snort để nắm được ưu nhược điểm để cái tiến hệ thống IDS sử dụng học máy
Trang 9Phương pháp nghiên cứu
Nghiên cứu và cài đặt kỹ thuật học máy mạng nơ-ron Thu thập và tiền xử lý bộ
dữ liệu mẫu hiện có về tấn công mạng Áp dụng giải pháp cải tiến trên dữ liệu đã xử lý, đánh giá kết quả sau khi thực hiện với các kết quả nghiên cứu đã công bố trước đó
Đó là lý do tôi chọn đề tài “Nghiên cứu ứng dụng mạng nơron trong bài toán phát hiện truy cập trái phép”
Nội dung luận văn gồm 3 chương:
Chương 1: Cơ sở lý thuyết
Chương này đưa ra các khái niệm về tấn công mạng và bài toán phát hiện xâm
nhập Chương 1 cũng giới thiệu về hệ thống phát hiện xâm nhập (IDS), thành phần của
hệ thống IDS và phân loại các hệ thống IDS hiện nay
Chương 2: Tìm hiểu và nghiên cứu các phương pháp phát hiện tấn công
trong hệ thống IDS
Để có thể nghiên cứu và phát triển được một hệ thống IDS chúng ta cần nắm được các khái niệm liên quan như: dấu hiệu bất thường, các nguồn dữ liệu dùng cho phát hiện bất thường, các phương pháp phát hiện bất thường Từ đó chọn lọc các
phương pháp phù hợp cho xây dựng mô hình IDS
Chương 3: Phương pháp phát hiện xâm nhập dựa trên mạng Nơ-ron
Có nhiều phương pháp học máy đã được sử dụng cũng như cần cải tiến cho bài toán phát hiện xâm nhập Hiệu quả của mỗi phương pháp thường được đánh giá qua độ chính xác cảnh báo xâm nhập Chương này sẽ tập trung trình bày phương pháp học máy mạng nơ-ron cũng như đề xuất phương pháp cải tiến kết quả phát hiện xâm nhập Phần cuối chương sẽ demo thực nghiệm và phân tích
Trang 10CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 1.1 Tổng quan về tấn công mạng
1.1.1 Khái niệm
Trong thực tế có rất nhiều cách diễn giải khác nhau về tấn công mạng, theo Sandeep Gutta thì tấn công mạng (cyber attack hay intrusion) có thể được hiểu là một loạt các hoạt động máy tính nguy hiểm đe dọa và làm tổn hại tới sự bảo mật và tính toàn vẹn của một máy tính hay hệ thống mạng Tấn công mạng phá vỡ hoạt động bình thường của hệ thống máy tính và có thể truy nhập trái phép hoặc phá hủy thông tin trong các hệ thống máy tính [1]
Theo một cách định nghĩa khác tấn công mạng có thể được hiểu là bất kì hành động nào cố gắng làm tổn hại sự toàn vẹn, bí mật, tính sẵn sàng của một tài nguyên hoặc đi ngược lại mục tiêu bảo mật của một tài nguyên nào đó
DoS- Denial of Service attack : Là những tấn công làm cho tài nguyên máy tính
(ví dụ Web server) không phục vụ được theo yêu cầu của người dùng thực sự [2] Dạng phổ biến nhất của tấn DoS là làm cho tài nguyên máy tính quá bận vì bị sử dụng toàn
bộ với rất nhiều yêu cầu vô ích đến mức người dùng thực sự không thể sử dụng nó Có rất nhiều biến thể của tấn công DoS bao gồm TCP-SYN Flood, ICMP/UDP Flood, Smurf, Ping of Death, Teardrop, Mailbomb, Apache2
R2L - Remote to Local attack : Trong loại tấn công này, tin tặc cố gắng đạt được quyền truy cập vào khu vực hệ thống máy tính bằng việc gửi các gói tin tới hệ thống thông qua mạng Một vài cách phổ biến mà loại này thực hiện là đoán mật khẩu
Trang 11thông qua phương pháp từ điển brute-force, FTP Write,
U2R - User to Root attack : Trong kiểu tấn công này, tin tặc với quyền của một người dùng bình thường cố gắng để đạt được quyền truy nhập cao nhất (đặc quyền của người quản trị) vào hệ thống một cách bất hợp pháp Cách thức phổ biến của kiểu tấn công này là gây tràn bộ đệm
Probe - Surveillance : Trong loại tấn công này, tin tặc quét mạng hoặc máy tính
để tìm ra điểm yếu dễ tấn công mà thông qua đó tin tặc có thể khai thác hệ thống Điều này có phần giống như theo dõi, giám sát hệ thống Một cách phổ biến của loại tấn công này là thực hiện thông qua việc quét các cổng của hệ thống máy tính Bằng việc này, tin tặc có thể lấy được thông tin về cổng đang mở, dịch vụ đang chạy, và rất nhiều thông tin chi tiết nhạy cảm khác như địa chỉ IP, địa chỉ MAC, các luật tường lửa đang
sử dụng, [2]
1.2 Bài toán phát hiện xâm nhập mạng
Khi một máy tính hay một hệ thống máy tính hoạt động trên môi trường mạng,
sẽ có rất nhiều kết nối giữa nó và các máy tính, các thiết bị khác Có thể trong những kết nối đó có những kết nối đang tìm cách tấn công hệ thống để đạt được mục đích nào
đó Bản thân mỗi máy tính đều có những biện pháp để tự bảo vệ nhưng nó có những điểm yếu và thực sự không đủ sức chống lại các cuộc tấn công mới với mức độ ngày càng tinh vi hơn Bên cạnh đó các máy tính hay hệ thống cũng phải chịu các nguy cơ đến từ việc vi phạm chính sách an toàn thông tin một cách vô tình hay cố ý Bài toán được đặt ra là cần có cơ chếphát hiện sớm các cuộc tấn công để từ đó có những biện pháp ngăn chặn hoặc giảm thiểu tối đa những thiệt hại, tác động do các cuộc tấn công gây ra
1.2.1 Phát hiện xâm nhập mạng
Phát hiện xâm nhập mạng là quá trình theo dõi các sự kiện xảy ra trong một hệ thống máy tính hoặc mạng máy tính và phân tích chúng để tìm ra các dấu hiệu sự cố có thể xảy ra, đó là các hành vi hoặc các mối đe dọa sắp xảy ra vi phạm các chính sách
Trang 12bảo mật máy tính, các chính sách sử dụng được chấp nhận hoặc dựa trên bảo mật tiêu chuẩn
1.2.2 Phân loại phương pháp phát hiện xâm nhập mạng
Các IDS có thể giám sát các sự kiện ở 3 cấp độ khác nhau: mạng (network), máy trạm (host), ứng dụng (application) Chúng có thể phân tích các sựkiện bằng việcsửdụng một trong các phương pháp: dựa trên dấu hiệu(signature-based), dựa trên
dị thường (anomaly-based) và phân tích trạng thái giao thức (statefull protocol analysic)[2] Bên cạnh việc theo dõi và phân tích các sự kiện để nhận dạng các hoạt động không mong muốn, các loại công nghệ IDS thường thực hiện các chức năng sau :
- Ghi lại thông tin liên quan tới các sự kiện được quan sát
- Thông báo cho quản trị hệ thống về các sự kiện quan trọng quan sátđược
- Đưa ra các báo cáo về các sự kiện đã quan sát hoặc cung cấp chi tiết về các sự kiện đặc biệt cần được quan tâm
Có hai cách để phân loại IDS đó là dựa trên phương pháp giám sát và dựa trên phương pháp phân tích của IDS
Dựa trên phương pháp giám sát
Hệ thống phát hiện xâm nhập dựa trên mạng (Network-based Intrusion Detection System - NIDS) : Đây là loại phổ biến nhất của sản phẩm thương mại Cơ chế phát hiện tấn công của nó là giám sát và theo dõi các gói tin mạng
Điểm mạnh của IDS kiểu này là chỉ với một số ít các IDS được đặt ở vị trí tốt có thể giám sát được một mạng lớn Việc triển khai IDS dựa trên mạng ít tác động tới hiệu suất của mạng hiện có Chúng có thể tạo ra tính an toàn cao chống lại các cuộc tấn công
Điểm yếu của IDS dựa trên mạng là nó khó xử lý toàn bộ các gói tin trong một mạng lớn hoặc bận
Hệ thống phát hiện xâm nhập dựa trên máy trạm (Host-based IntrutionDetection System - HIDS) phân tích hoạt động trên một máy tính riêng biệt Vì vậy chúng phải
Trang 13thu thập thông tin từ máy trạm mà chúng đang giám sát Điều này cho phép một IDS phân tích các hoạt động trên trạm rất tốt và quyết định chính xác tiến trình và user nào đang thực hiện các hoạt động nguy hại trên hệ điều hành
Trong các tổ chức đã triển khai NIDS thì việc triển khai HIDS có thể là một đề xuất để tăng thêm mức bảo vệ [2]
Dựa trên phương pháp phân tích
Hệ thống phát hiện xâm nhập dựa trên dấu hiệu (Signature-based IDS) Dấu hiệu (signature) có thể là các thông tin về các kết nối nguy hiểm đã biết trước Phát hiện dựa trên dấu hiệu (signature-based detection) là quá trình so sánh signature với sự kiện quan sát được để nhận dạng sự cố có thể xảy ra
Phát hiện dựa trên dấu hiệu là phương pháp phát hiện đơn giản nhất bởi vì nó chỉ so sánh hoạt động hiện thời, với danh sách các dấu hiệu bằng hoạt động so sánh chuỗi Ưu thế của phương pháp này là rất hiệu quả trong việc phát hiện sự tấn công mà không tạo ra số lượng lớn các cảnh báo sai Nhược điểm của nó là chỉ phát hiện được các cuộc tấn công mà nó đã biết trong quá khứ hay nói khác đi là đã có trong cơ sở dữ liệu signature, do vậy hệ thống phải liên tục cập nhật các dấu hiệu của các cuộc tấn công mới
Hệ thống phát hiện xâm nhập dựa trên dị thường (Anomaly-based IDS) : Phát hiện dựa trên dấu hiệu dị thường là quá trình so sánh các định nghĩa của những gì được coi hoạt động bình thường so với các sự kiện quan sát để xác định độ lệch đáng kể (significal deviation) IDS sử dụng phát hiện dựa trên dị thường có những cấu hình (profile) đại diện cho hành vi bình thường của người sử dụng, máy chủ, kết nối mạng hay các ứng dụng Các cấu hình được phát triển bằng việc quan sát các đặc trưng của các hoạt động thông thường trong một khoảng thời gian[2]
Lợi ích chủ yếu của phương thức phát hiện dựa trên dị thường là nó rất hiệu quả trong việc phát hiện các mối nguy hiểm không được biết trước đó
Trang 141.3 Hệ thống phát hiện xâm nhập IDS
Hệ thống phát hiện xâm nhập (Intrusion Detection System – IDS) là hệ thống phần
cứng hoặc phần mềm có chức năng giám sát lưu thông mạng, tựđộng theo dõi các sự kiện xảy ra trên hệ thống máy tính, phân tích để phát hiện ra các vấn đề liên quan đến
an ninh, bảo mật và đưa ra cảnh báo cho nhà quản trị
IDS cũng có thể phân biệt giữa những tấn công vào hệ thống từ bên trong (từ những người trong công ty) hay tấn công từ bên ngoài (từ các hacker) IDS phát hiện dựa trên các dấu hiệu đặc biệt về các nguy cơ đã biết (giống như cách các phần mềm diệt virus dựa vào các dấu hiệu đặc biệt để phát hiện và diệt virus) hay dựa trên so sánh lưu thông mạng hiện tại với baseline (thông số đo đạc chuẩn của hệ thống) để tìm ra các dấu hiệu khác thường
Các thiết bị bảo mật dưới đây không phải là IDS:
- Hệ thống đăng nhập mạng được sử dụng để phát hiện lỗ hổng đối với vấn đề tấn công từ chối dịch vụ (DoS) trên một mạng nào đó Ở đó sẽ có hệ thống kiểm tra lưu lượng mạng
- Các công cụ đánh giá lỗ hổng kiểm tra lỗi và lỗ hổng trong hệ điều hành, dịch
vụ mạng (các bộ quét bảo mật)
- Các sản phẩm chống virus đã thiết kế để phát hiện phần mềm mã nguy hiểm như virus, Trojan horse, worm… Mặc dù những tính năng mặc định có thể rất giống hệ thống phát hiện xâm nhập và thường cung cấp một công cụ phát hiện
lỗ hổng bảo mật hiệu quả
- Tường lửa (firewall)
- Các hệ thống bảo mật/mật mã, ví dụ như VPN, SSL, S/MIME, Kerberos, Radius…
1.3.1 Thành phần của hệ thống IDS
Trung tâm điều khiển (The Command Console)
Trang 15Trung tâm điều khiển là nơi mà IDS được giám sát và quản lí Nó duy trì kiểm soát thông qua các thành phần của IDS, và Trung tâm điều khiển có thể được truy cập
từ bất cứ nơi nào Tóm lại Trung tâm điều khiển duy trì một số kênh mở giữa Bộ cảm biến (Network Sensor) qua một đường mã hóa, và nó là một máy hoặc phần mềm chuyên dụng
Bộ cảm biến (Network Sensor)
Bộ cảm biến là chương trình chạy trên các thiết bị mạng hoặc máy chuyên dụng trên các đường mạng thiết yếu Bộ cảm biến có một vai trò quan trọng vì có hàng nghìn mục tiêu cần được giám sát trên mạng
Khi hệ thống mạng dùng các hub, ta có thể đặt các bộ cảm biến trên bất kì port nào của hub vì mọi luồng traffic được gửi ra tất cả các port trên hub, và có thể phát hiện ra các luồng traffic bất thường Nhưng khi hệ thống cần sử dụng các switch, các switch chỉ gửi gói tin đến chính xác địa chỉ cần gửi trên từng port Để giải quyết vấn đề này, một kỹ thuật thông dụng là sử dụng những con switch có port mở rộng (expansion port) – khá nhiều thiết bị mạng ngày nay có cái này, và ta kết nối IDS vào port này Port này được gọi là Switched Port Analyzer (SPAN) port SPAN port cần được cấu hình bởi các chuyên gia bảo mật để nhân bản mọi luồng dữ liệu của switch
Bộ phân tích gói tin(Network Trap)
Bộ phân tích gói tin là một thiết bị phần cứng hoặc phần mềm được kết nối trên mạng, không có địa chỉ IP, kiểm soát các luồng dữ liệu trên mạng và gửi cảnh báo khi phát hiện ra hành động xâm nhập
Thành phần cảnh báo (Alert Notification)
Thành phần cảnh báo có chức năng gửi những cảnh báo tới người quản trị Trong các hệ thống IDS hiện đại, lời cảnh báo có thể ở dưới nhiều dạng như: cửa sổ pop-up, tiếng chuông, email, SNMP
Trang 161.3.2 Phân loại các hệ thống IDS
Hệ thống phát hiện xâm nhập được chia làm nhiều loại khác nhau, chúng tacó
thể dựa theo loại và vị trí đặt của các Sensorhoặc phương pháp sử dụng choEngine để sinh ra các cảnh báo Hầu hết các IDS đơn giản đều kết hợp ba thành phần Sensor, Console, Engine vào trong một thiết bị phần cứng hoặc một ứng dụng.
1.2.1.1 Network-based Intrusion Detection System (NIDS)
Network-based InstrusionDetection System (hệ thống phát hiện xâm nhập cho mạng) là một giải pháp độc lập để cảnh báo các xâm nhập trái phép thông qua việcphân tích các gói tin trên mạng và giám sát hoạt động của nhiều máy trạm nội bộ, NIDSkiểm
soát các luồng thông tin trên mạng bằng cách kết nối vào các Hub, Switchđược cấu hình Port mirroringhoặc Network tapđể có thể bắt các gói tin, phân tích nội dung nhận
được và từ đó sinh ra các cảnh báo
Hình 1 1: Mô hình cảnh báo với NIDS [1]
Trang 17Port mirroring là cơ chế của Switchmạng để gửi một bản sao của tất cả các gói tin trên mạng khi nó đi qua cổng của Switchtới một thiết bị giám sát mạng trên cổng khác của Switchđó Nó thường được sử dụng để các thiết bị mạng có thể giám sát luồng tin trên mạng, ví dụ hệ thống EDS, Port mirroring trên Switchcủa Cisco System
thường được gọi là Switched Port Analyzer (SPAN) hoặc của 3Com là Roving Analysis Port (RAP)
Network tap là một thiết bị phần cứng cung cấp phương tiện để truy nhập vào luồng dữ liệu đi ngang qua một máy tính trong mạng Các máy tính mạng bao gồm cả
Internet là một tập hợp các thiết bị như máy tính, Router, Switchvà nối với các hệ thống
khác Các kết nối có thể được tạo ra bằng nhiều công nghệ khác nhau như là Etherenet, 802.11, FDDI và ATM Trong nhiều trường hợp nó được xem như là một thành phần thứ 3 để giám sát luồng dữ liệu trao đổi giữa hai điểm trên mạng, điểm A và điểm B Nếu mạng giữa điểm A và điểm B chứa một kết nối vật lý, một network tap là giải pháp tốt cho việc giám sát Network tap có ít nhất là 3 cổng kết nối, một cổng A, một cổng B, và một cổng giám sát Để đặt Network tap giữa điểm A và điểm B, cáp mạng giữa hai điểm A, B được thay thế bằng một cặp dây, một dây đấu vào cổng A và dây kia đấu vào cổng B Network tap cho qua tất cả các dữ liệu giữa A và B vì thế giao tiếp giữa hai điểm A và B vẫn diễn ra bình thường, tuy nhiên dữ liệu trao đổi đã bị Network tap sao chép và đưa vào thiết bị giám sát thông qua cổng giám sát[1]
Trong hệ thống Network-based Intrusion Detection System (NIDS), các
Sensorđược đặt ở các điểm cần kiểm tra trong mạng, thường là trước miền DMZ hoặc
ở vùng biên của mạng, các Sensorbắt tất cả các gói tin lưu thông trên mạng và phân
tích nội dung bên trong của từng gói tin để phát hiện các dấu hiệu tấn công trong mạng
Theo chức năng sử dụng, hệ thống NIDS còn được phân thành hai hệ thống nhỏ
đó là Protocol-based Intrusion Detection System (PIDS - Hệ thống phát hiện truy cập dựa trên giao thức) và Application Protocol-based Intrusion Detection System (APEDS
- hệ thống phát hiện truy nhập dựa trên ứng dụng) PEDS và APIDS được sử dụng để
Trang 18giám sát các giao vận và giao thức không hợp lệ hoặc không mong muốn trên luồng dữ liệu hoặc hạn chế các ngôn ngữ giao tiếp Hệ thống Protocol-based Intrusion Detection System (PIDS) chứa một hệ thống (System) hoặc một thành phần (Agent) thường được đặt ngay trước một máy chủ, giám sát và phân tích các giao thức trao đổi giữa các thiết
bị được nối mạng (một máy trạm hoặc một hệ thống)[1]
Một hệ thống Application Protocol-based Intrusion Detection System (APIDS) bao gồm một hệ thống (system) hoặc một thành phần (Agent) thường nằm giữa một nhóm các máy chủ, giám sát và phân tích các trao đổi ở lớp ứng dụng của một giao thức định sẵn Ví dụ: trên một máy chủ web với một cơ sở dữ liệu quan trọng thì IDS giám sát cáctruy nhập bất thường để đưa ra cảnh báo kịp thời nhằm ngăn chặn kẻ xấu đánh cắp hoặc làm tổn hại dữ liệu
1.2.1.2 Hệ thống phát hiện xâm nhập dựa trên mấy trạm (HIDS)
Trong hệ thống HIDS (hệ thống phát hiện truy nhập dựa trên máy trạm), các
Sensorthông thường là một phần mềm trên máy trạm (software agent), nó giám sát tất
cả các hoạt động của máy trạm mà nó nằm trên đó
Hệ thống Host-based Intrusion Detection System bao gồm thành phần (Agent) cài đặt trên các máy trạm, nó xác định các truy nhập trái phép vào hệ thống bằng cách phân tích các trao đổi của hệ thống, các bản ghi của các ứng dụng, sự sửa đổi các tệp tin trên hệ thống (các file dạng binary, mật khẩu của file, dung lượng và các acl của các
cơ sở dữ liệu) các hoạt động và trạng thái khác của hệ thống để từ đó phát hiện ra các dấu hiệu truy nhập trái phép vào hệ thống Khi phát hiện ra các truy nhập trái phép,
Agent lập tức sinh ra một sự kiện và gửi báo cáo về Engine, Engine lưu các báo cáocủa
Agent vào cơ sở dữ liệu và tiến hành phân tích thông tin để đưa ra các cảnh báo cho người quản trị hoặc hệ thống[1]
Trang 19Hình 1
1.2.1.3 Hệ thống lai phát hi
Hybrid Intrusion Detection System
basedIDSvà hệ thống Host
hợp của hai hệ thống lại v
agent data) kết hợp với thông tin thu th
cách chi tiết về hiện trạng h
Hình 1 2: Hệ thống Host-based Intrusion Detection [1]
ng lai phát hiện xâm nhập
Hybrid Intrusion Detection System là một hệ thống lai giữa h
Host-based IDS Nó kết hợp một hoặc nhiều các thành ph
i với nhau Các thông tin thu thập được trên máy tr
i thông tin thu thập được ở trên mạng để có
Trang 20Hình 1 3: Hệ thống Hybrid Intrusion Detection 1.4 Kết luận chương
Chương này trình bày các khái niệm, kiến thức cơ bản nhất liên quan đến bảo mật
và hệ thống phát hiện xâm nhập Đây là những kiến thức cơ bản nhưng rất cần thiết để
có thể đi vào tìm hiểu sâu hơncác công việc phát triển hệ thống IDS Các kiến thức đã trình bày như: các kiểu tấn công mạng, các phương pháp phát hiện xâm nhập mạng, phân loại các hệ thống xâm nhập mạng Tiếp theo đó trong chương 1 cũng giới thiệu các thành phần của hệ thống IDS, phân loại các hệ thống IDS đã được phát triển và sử dụng hiện nay Trong chương tiếp theo tác giả đi trình bày nội dung liên quan đến nguồn dữ liệu dành cho phát hiện xâm nhập cũng như phân tích ưu, nhược điểm của các phương pháp xây dựng hệ thống IDS
Trang 21CHƯƠNG 2: TÌM HIỂUVÀ NGHIÊN CỨU CÁC PHƯƠNG PHÁP PHÁT HIỆN TẤN CÔNG TRONG HỆ THỐNG IDS 2.1 Thế nào là bất thường trong mạng
Sự bất thường trong mạng thường dùng để chỉ những tình huống khi hoạt động của mạng đi chệch so với các trạng thái được quy định là bình thường Bất thường trong mạng có thể phát sinh từ nhiều nguyên nhân như các thiết bị mạng bị hỏng hóc,
hệ thống mạng quá tải, hệ thống gặp phải các cuộc tấn công từ chối dịch vụ, hoặc các cuộc xâm nhập phá vỡ khả năng vận chuyển của các dịch vụ mạng Những sự kiện bất thường sẽ phá vỡ trạng thái bình thường của một vài dữ liệu mạng mà chúng ta có thể đo được Người ta sẽ dựa vào trạng thái của các dữ liệu này để xác định trạng thái của mạng là bình thường hay không bình thường Các dữ liệu dùng để xác định trạng thái của mạng phụ thuộc vào một vài nhân tố đặc biệt như khả năng hoạt động của một
hệ thống dựa trên dung lượng lưu thông, loại dữ liệu hệ thống sẵn có, những ứng dụng đang chạy trên hệ thống, các gói tin gửi đến với những yêu cầu hệ thống thực hiện những câu lệnh nhạy cảm
Như vậy những bất thường của hệ thống được xác định thông qua những thay đổi nhanh liên tục trong dữ liệu hệ thống trước hoặc trong khi một sự kiện bất thường đang xảy ra Những thay đổi nhanh dùng để diễn tả sự thay đổi đột ngột trong dữ liệu xảy ra theo một trật tự thời gian (tần suất) Khoảng thời gian diễn ra các thay đổi đột ngột này biến thiên theo bản chất của sự kiện bất thường đó
Bất thường trong mạng có thể được chia làm hai lớp chính:
- Lớp bất thường thứ nhất: liên quan đến những sự cố và những lỗi về hiệu
năng của mạng như sự cố liên quan đến File Server, sự cố phân trang bộ nhớ
qua mạng (paging across the network), broadcast storms, babbling node, hay tắc nghẽn đường truyền (transient congestion)[1] Ví dụ cho sự cố File Serverđó
là sự cố của một Web Server, xảy ra khi có một số lượng lớn yêu cầu tới máy
Trang 22chủvượt quá khả năng đáp ứng Sự cố phân trang qua mạng (paging network) xảy ra khi một chương trình ứng dụng phình to hơn dung lượng bộ nhớ giới hạn
của máy trạm làm việc và bắt đầu phân trang bộ nhớ tới một File Server, việc
này không ảnh hưởng đến cá nhân người dùng nhưng nó ảnh hưởng đến những người dùng khác do sẽ gây ra sự thiếu hụt băng thông mạng Vấn đề babbling node là tình huống khi một nốt mạng gửi ra ngoài những gói tin nhỏ trong một vòng lặp vô hạn để kiểm tra một vài thông tin như các báo cáo về trạng thái Trong một vài trường hợp những lỗi phần mềm cũng có thể gây ra các bất thường trong mạng như những lỗi khi xây dựng giao thức mạng khiến cho một máy liên tục gửi các gói tin gây tắc nghẽn mạng
- Lớp bất thường thứ 2: là những vấn đề liên quan đến an ninh mạng[1] Ví dụ
về những bất thường dạng này là tấn công từ chối dịch vụ (DoS).Tấn công từ chối dịch vụlà một trong những thủ đoạn nhằm ngăn cản những người dùng hợp pháp khả năng truy cập và sử dụng vào một dịch vụ nào đó DoS có thể làm ngưng hoạt động của một máy tính, một mạng nội bộ thậm chí cả một hệ thống mạng rất lớn Về bản chất thực sự của DoS, kẻ tấn công sẽ chiếm dụng một lượng lớn tài nguyên mạng như băng thông, bộ nhớ và làm mất khả năng xử
lý các yêu cầu dịch vụ từ các khách hàng khác Tấn công DoS nói chung không nguy hiểm như các kiểu tấn công khác, vì kẻ tấn công ít có khả năng thâm nhập hay chiếm được thông tin dữ liệu của hệ thống Tuy nhiên, nếu máy chủ tồn tại
mà không thể cung cấp thông tin, dịch vụ cho người sử dụng thì sự tồn tại này
là không có ý nghĩa, đặc biệt là các hệ thống phục vụ các giao dịch điện tử thì thiệt hại là vô cùng lớn Đối với hệ thống máy chủ được bảo mật tốt, khó thâm nhập, việc tấn công từ chối dịch vụ DoS được các hacker sử dụng như là “quân
cờ cuối” để triệt hạ hệ thống đó
Trang 232.2 Các nguồn dữ liệu dùng cho phát hiện bất thường
Thu thập các loại dữ liệu liên quan đến hiệu năng của mạng là công việc cơ bản cho việc phát hiện bất thuờng Các loại bất thường có thể phát hiện được phụ thuộc vào bản chất của dữ liệu mạng Trong mục này chúng ta sẽ xem xét một số nguồn có thể thu thập dữ liệu và phân tích sự phù hợp của chúng trong việc phát hiện bất thường Bản chất của phương pháp phát hiện bất thường là xây dựng tập các hồ sơ trạng thái bình thường của mạng để so sánh do đó dữ liệu thu thập càng chính xác khả năng phát hiện càng cao, thuật toán càng hiệu quả
2.2.1 Network Probes
Network Probes là các công cụ đặc biệt như lệnh ping, traceroute được sử dụng
để thu thập các thông số mạng cần thiết như thời gian trễ và tỉ lệ mất gói tin[9] Các công cụ Probing cung cấp các số liệu mạng một cách tức thời Nhưng phương thức này không yêu cầu sự phối hợp của các nhà cung cấp dịch vụ mạng Tuy vậy, các nhà cung cấp dịch vụ có thể chọn không cho phép các công cụ này hoạt động thông qua Firewall của họ Hơn nữa các gói tin IP được sử dụng bởi các công cụ này không nhất thiết phải
đi theo các con đường cố định hoặc được các thiết bị mạng xử lý giống như các gói tin
IP thông thường Phương thức này cũng giả thiết tồn tại một con đường đối xứng giữa nguồn và đích đến Trên mạng Internet, giả thiết này là không được đảm bảo Do đó các thông số thu thập được từ các công cụ này có thể chỉ cho chúng ta cái nhìn ở mức thô về hệ thống mạng Vì thế dữ liệu lấy được từ các probing chưa đủ cho mục đích phát hiện bất thường, cần kết hợp với loại dữ liệu khác để kết quả chính xác hơn
2.2.2 Lọc gói tin cho việc phân tích luồng
Trong phương thức lọc gói tin, các luồng gói tin sẽ được thống kê, lấy mẫu bằng cách ghi lại các thông tin IP header của các gói tin ở các thời điểm khác nhau và ở các
vị trí khác nhau Các thông tin thu được từ IP header có thể cung cấp chi tiết về hoạt động của mạng, chúng có thể được sử dụng trong việc phát hiện các bất thường về luồng Một luồng thông tin được xác định bởi địa chỉ nguồn, địa chỉ đích và số hiệu
Trang 24cổng[9] Tóm lại phương pháp này cho phép có được thống kê chính xác về giao dịch trong mạng nhưng khó áp dụng trong thực tế vì nó đòi hỏi những công nghệ lấy mẫu tinh vi cũng như các thiết bị phần cứng đặc biệt để lấy các thông tin từ các gói IP
2.2.3 Dữ liệu từ các giao thức định tuyến
Thông tin về các sự kiện mạng có thể được thu thập thông qua các giao thức định tuyến [9] Ví dụ như sử dụng giao thức OSPF(open shortest path first), nó có thể thu thập tất cả thông tin cập nhật về bảng định tuyến được trao đổi bởi các router Dữ liệu thu được có thể xây dựng topology (cách bố trí phần tử của mạng cũng như cách nối giữa chúng với nhau) của mạng và cung cấp trạng thái cập nhật của đường truyền như về băng thông, độ trễ, mức độ tắc nghẽn mạng
2.2.4 Dữ liệu từ các giao thức quản trị mạng
Các giao thức quản trị mạng cung cấp tất cả thông tin thống kê về giao thông trên mạng Những giao thức này hỗ trợ rất nhiều thông số có thể giám sát chính xác hoạt động thiết bị mạng Những thông tin thu thập được có thể không cung cấp trực tiếp các thông số đo lường về giao thông mạng nhưng có thể dùng để nhận dạng các hành vi trên mạng do đó có thể được sử dụng trong phát hiện bất thường mạng Sử dụng loại thông tin này đòi hỏi sự kết hợp với phần mềm quản trị mạng của nhà cung cấp dịch vụ Tuy nhiên những giao thức này cung cấp một lượng thông tin phong phú
và chất lượng Tiếp theo chúng ta xem xét chi tiết một giao thức là SNMP (Simple Network Management Protocol)[1]
SNMP hoạt động dựa trên mô hình client-server Giao thức này cung cấp một cơ chế giúp các manager giao tiếp với agent Một SNMP manager có thể giám sát hàng trăm SNMP agent khác nằm trên các thiết bị mạng SNMP được cài đặt ở tầng ứng dụng và chạy trên giao thức UDP SNMP manager có khả năng thu thập các dữ liệu quản lý được cung cấp bởi SNMP agent nhưng lại không có khả năng xử lý những dữ liệu này SNMP server sẽ lưu giữ 1 cơ sở dữ liệu bao gồm những thông số quản lý được gọi là những thông số thông tin quản lý cơ bản MIB (management information
Trang 25base) Các thông số này chứa các thông tin liên quan đến hoạt động của các chức năng khác nhau trên những thiết bị mạng[1]
Bất kỳ thiết bị mạng nào cũng có một tập các thông số MIB đặc trưng cho các chức năng của nó Các thông số MIB được định nghĩa dựa trên loại thiết bị cũng như tầng giao thức mà nó hoạt động Ví dụ như bridges (cầu) hoạt động ở tầng liên kết dữ liệu chứa các thông số cung cấp thông tin về trao đổi thông tin ở mức liên kết dữ liệu Routers là thiết bị ở tầng mạng chứa các thông số cung cấp thông tin về tầng mạng Lợi ích của việc sử dụng giao thức SNMP vì nó là một giao thức được phát triển rộng rãi
và mang tính chuẩn hóa trên tất cả các thiết bị mạng Nhờ đó các thông tin lấy được từ giao thức SNMP là các dữ liệu lý tưởng sử dụng cho việc phát hiện bất thường
Các thông số MIB được chia thành các nhóm: hệ thống, giao diện (if), dịch địa chỉ (address translation - af), giao thức internet (ip), giao thức điều khiển tin nhắn internet (icmp), giao thức điều khiển giao vận (tcp), giao thức udp (udp), giao thức cổng ngoài (egp) Mỗi nhóm các thông số miêu tả chức năng của một giao thức chuyên biệt của thiết bị mạng Tùy thuộc vào loại nút mạng nào được theo dõi, một nhóm các thông số cụ thể có thể được xem xét Nếu nút đang được xem xét là router, nhóm thông
số ip sẽ được nghiên cứu Các thông số ip mô tả các đặc điểm trao đổi dữ liệu ở tầng mạng[1]
Không có một thông số MIB nào có thể nắm bắt được mọi bất thường trong hệ thống hoặc những dấu hiệu bất thường hệ thống Vì vậy, việc lựa chọn các thông số MIB phụ thuộc vào hoàn cảnh tìm ra những bất thường đó Ví dụ trong trường hợp router, nhóm ip của MIB được chọn, ngược lại nếu là bridge nhóm if được sử dụng
2.3 Các phương pháp phát hiện bất thường
Trong phần này chúng ta sẽ đi xem xét các phương pháp hay được sử dụng trong phát hiện xâm nhập Các phương pháp này bao gồm hệ chuyên gia (rule-based), mạng nơron,mô hình máy trạng thái hữu hạn, so sánh mẫu, phân tích thống kê Chúng
ta sẽ nghiên cứu cơ chế hoạt động điểm mạnh, điểm yếu của từng phương pháp
Trang 262.3.1 Phương pháp hệ chuyên gia (rule-based)
Phương pháp này ra đời từ rất sớm và được ứng dụng vào lĩnh vực dò lỗi hay phát hiện bất thường trong mạng Trong hệ chuyên gia, một cơ sở dữ liệu chứa tập luật (rules) miêu tả các hành vi bất thường được dùng để so sánh với các luồng dữ liệu đi đến hệ thống mạng Nếu một luồng dữ liệu đi đến hệ thống với mục đích tấn công mà không được định nghĩa trong tập luật thì hệ thống IDS không thể phát hiện được.Trên thực tế phương pháp này được áp dụng cho hệ thống phát hiện xâm nhập Snort rất nổi tiếng Snort là hệ thống IDS mã nguồn mở, được cung cấp miễn phí hầu hết các tập luật, nhưng nếu chúng ta muốn sử dụng các tập luật mới hơn, đầy đủ hơn thì có thể mua thêm gói rules mất phí
Hệ thống phát hiện bất thường dựa trên rule-based có đặc điểm dễ cấu hình, dễ thêm luật mới và dễ sử dụng Mỗi khi hệ thống mạng đứng trước những nguy cơ tấn công mới, người quản trị chỉ việc cập nhật thêm các luật chưa có vào cơ sở dữ liệu Phương pháp này có tỉ lệ phát hiện nhầm rất thấp vì nó dùng cách phân tích gói tin và
so sánh với mẫu đã có
Tuy nhiên hệ thống phát hiện xâm nhập dựa trên rule-basedsẽ trở nên chậm chạp dần khi tập luật phình to lên Khi khối lượng luật quá lớn hệ thống sẽ không đáp ứng được yêu cầu của các ứng dụng thời gian thực Những bất cập xảy ra có thể là: gói tin bị nghẽn cổ chai, số lượng kết nối TCP mở nhiều trên mức cho phép, băng thông đạt mức tối đa Phương pháp này còn có một nhược điểm là phụ thuộc khá nhiều vào người quản trị mạng và không đáp ứng kịp khi hệ thống mạng được mở rộng do mỗi khi hệ thống có sự thay đổi thì cần có sự bổ sung về tập luật Người ta có thể sử dụng
mô hình hệ chuyên gia FCMs (fuzzy cognitive maps) để khắc phục nhược điểm này FCMscó thể được sử dụng để tạo ra một mô hình thông minh có sự thừa kế và tác động qua lại với nhau giữa các triệu chứng mạng[1]
Cơ chế hoạt động của phương pháp rule-based có thể diễn giải như sau:
- Giả thiết các sự kiện phát triển theo một trình tự nhất định
Trang 27- Mô tả hành vi hoạt động bình thường của hệ thống dưới dạng các luật đã được rút gọn nhất có thể Ví dụ như A1 -> A2 -> B1, sự kiện A1 xảy ra xong đến sự kiện A2 thì có thể xảy ra sự kiện B1 tiếp theo
- Ta có một tập luật, so sánh các chuỗi sự kiện đưa vào với tập luật, nếu các sự kiện đưa vào phù hợp với vế trái của một luật mà không trùng với về phải của luật đó thì có thể xem xét xác định bất thường ở đây Như ở ví dụ trên trong thực tế sự kiện Al dẫn đến sự kiện A2, nhưng sự kiện A2 xảy ra cuối cùng lại dẫn đến sự kiện C1 mà không phải là B1 thì có thể kết luận là có sự kiện bất thường diễn ra ở đây
Hình 2 1: Mô hình hệ thống phát hiện bất thường dựa trên rule-based [1]
2.3.2 Phương pháp mạng nơ-ron (Artificial Neural Network)
Như chúng ta đã nghiên cứu ở trên, một trong những phương pháp phổ biến dùng để phát hiện bất thường là hệ chuyên gia, tuy nhiên phương pháp này có nhược điểm là phụ thuộc khá nhiều vào tập luật được định nghĩa trước bởi người quản trị và phải được cập nhật thường xuyên Nhược điểm này có thể được khắc phục bằng cách
áp dụng công nghệ mạng nơ-ron Phương pháp này ra đời với mục đích khắc phục việc phải cập nhật các luật mới có thể tạo ra xung đột trong tập luật đã có, vốn chỉ phù hợp với các mô hình quy mô vừa và nhỏ Thay vào đó hệ thống IDS sẽ được học mô hình
Trang 28phát hiện bất thường dựa trên một số lượng nhất định các mẫu dữ liệu được thu thập Hiệu quả của phương pháp này thường cho ra hệ thống có khả năng tốt hơn đồng thời lại linh động trong thay đổi huấn luyện Với cách tiếp cận này, người ta có thể dễ dàng hơn trong việc xây dựng các hệ thống IDS phức tạp, việc phát hiện xâm nhập không đơn thuần chỉ là phát hiện nhằm cảnh báo có tấn công hay không tấn công mà còn có thể đưa ra loại hình, tính chất chi tiết của cuộc tấn công tương ứng
Hệ thống phân tích bất thường sử dụng mạng nơ-ron tập trung vào việc phát hiện các thay đổi trong hành vi, theo đó mạng nơ-ron sẽ học và dự đoán hành vi của người sử dụng, của các chương trình ứng dụng và các luồng tin từ bên ngoài đi vào mạng Ưu điểm của mạng nơ-ron là thích ứng được với các kiểu dữ liệu không đầy đủ,
dữ liệu với độ chắc chắn không cao và không cần cập nhật tri thức thường xuyên do nó
có quá trình tự học
Mạng nơ-ron nhân tạo hay thường gọi ngắn gọn là mạng nơ-ron là một mô hình tính toán được xây dựng dựa trên cấu tạo của mạng nơ-ron sinh học Nó gồm có một nhóm các nơ-ron nhân tạo (nút) nối với nhau, và xử lý thông tin bằng cách truyền theo các kết nối và tính giá trị mới tại các nút Trong nhiều trường hợp, mạng nơ-ron nhân tạo là một hệ thống thích ứng (adaptive system) tự thay đổi cấu trúc của mình dựa trên các thông tin bên ngoài hay bên trong đi qua mạng trong quá trình học[1]
Trang 29Hình 2 2:Mô hình mạng nơ-ron trong phát hiện bất thường
Một mạng nơ-ron bao gồm các nút input (đầu vào), các nút trong các lớp ẩn (hidden layer) và nút output,cấu trúc mạng nơ-ron được chia thành 2 loại:
Loại thứ nhất sử dụng các thuật toán huấn luyện được giám sát (Supervised training algorithms), ở giai đoạn tự học, hệ thống có khả năng tính toán một đầu ra mong muốn cho mỗi đầu vào đã được định sẵn Cấu trúc phổ biến của mạng nơ-ronhọc
có giám sát là kiến trúc nhận thức đa tầng MLP(Multi-layerPerceptron) MLP là mạng chuyển tiếp đa tầng (feed-forward) bao gồm lớp đầu vào, một hoặc một vài lớp ẩn và lớp đầu ra[1] Lớp đầu ra cung cấp phản hồi của hệ thống đến các mẫu hoạt động trong lớp đầu vào Nghiên cứu MLP nhằm giải quyết dạng bài toán phân lớp trạng thái hệ thống, nghĩa là tìm cáchphân loạitrạng thái hệ thống mạng là bình thường hay bị tấn côngDoS, hay Probe (bị thăm dò) và có thể mở rộng thêm nhiều lớp trạng thái hơn như U2R (chiếm quyền root thông qua quyền user), R2L (remote to local) Mục đích của MLP là dựa trên các mẫu đầu vào được gán nhãn để học tập, sau khi học xong nó
có khả năng phân loại các mẫu đầu vào chưa có nhãn vào một trong các lớp như: bình thường, DoS hoặc Probe Sự phân lớp được thể hiện theo cách sau: số 1 ở cột nào thì biểu thị sự xuất hiện/tồn tại dấu hiệu tương ứng của cột đó, còn số 0 biểu thị sự không
Trang 30tồn tại Vì vậy chúng ta có 3 trường hợp có thể nhận biết được kết quả ở đầu ra, đó là: [1 0 0] - tình trạng bình thường, [0 1 0] cho tấn công dạng DoSvà [0 0 1] nếu gặp tấn công dạng Probe[1]
Loại thứ hai sử dụng các thuật toán đào tạo không giám sát (Unsupervised training algorithms): ở giai đoạn tự học, hệ thống sẽ nghiên cứu mà không xác định đầu
ra mong muốn Các bản đồ tổ chức độc lập (SOM - Self-Organizing Maps) là một dạng tiêu biểu của loại này Trong hệ thống phát hiện bất thường sử dụng SOM, người ta tập trung vào việc phân lớp các hành vi từ đó phát hiện ra các hành vi nghi vấn[1] Tiến trình xử lý của hệ thống diễn ra như sau: các dữ liệu về mạng được thể hiện dưới dạng
vectơ tham số đặc trưng, sau đó được lưu trong một Input vectơ để tiến hành phân lớp,
việc phân lớp sẽ lặp đi lặp lại cho đến khi hội tụ, khi đã xây dựng được các SOM, hệ thống sẽ tiến hành xác định khoảng cách giữa hành vi đang xét với hành vi bình thường, nếu nó vượt quá ngưỡng cho phép thì có bất thường xảy ra ở đây Ví dụ: xét nguồn dữ liệu mạng được lấy từ các tệp logs ghi lại hành vi của người dùng:
- Thời gian hoạt động của người dùng (User activity times): Thời gian một người dùng hoạt động bình thường
- Các host người dùng đăng nhập (User login hosts): Các host mà một người dùng đăng nhập bình thường
- Các host người dùng bên ngoài (User foreign hosts): Các host mà người dùng truy nhập bình thường thông qua lệnh hệ thống như các host FTP
- Các tập lệnh (Command set): các lệnh mà người dùng bình thường sử dụng
- Sử dụng CPU (CPU usage): Mức độ sử dụng CPU thông thường của một người dùng
- Sử dụng bộ nhớ (Memory Usage): Mức độ sử dụng bộ nhớ thông thường của một người dùng.
Trang 31Hình 2 3: Cấu trúc một hệ thống phát hiện bất thường sử dụng SOM [1]
Hình 2.3 mô tả một kiến trúc hoàn chỉnh cho một hệ thống phát hiện bất thường
sử dụng SOM Bộ phận phối hợp xử lý (coordiantingprocess) chịu trách nhiệm cho các kênh thông tin của mạng nơ-ron Mỗi một tính chất hành vi (thời gian hoạt động của người dùng, các host đăng nhập ) được mô hình hóa bởi một mạng SOM cũng như được kiểm tra bởi các quy tắc lọc cố định để phát hiện các lỗ hổng bảo mật đơn giản
Dữ liệu thu được từ hệ thống logs được lọc tiếp thông qua bộ phận tiền xử lý đầu vào (data preprocessing) chỉ chọn những dữ liệu cần thiết Như chúng ta đã biết đầu vào của mạng nơ-ron là dữ liệu dạng vector bao gồm 6 thuộc tính đặc trưng cho thời gian hoạt động, các host người dùng đăng nhập, các host người dùng bên ngoài, các tập lệnh, việc sử dụng CPU, việc sử dụng bộ nhớ Theo đó một số lượng lớn các biến của
dữ liệu này cần được chuẩn hóa để mỗi vectơ đầu vào có giá trị trong khoảng [-1,1] Khoảng xác định này được lấy từ các hệ thống phát hiện bất thường bằng mạng nơ-ron khác trước đây Người ta sử dụng công thức 2.1 để chuẩn hóa dữ liệu[1]:
-
Trang 32nv[i] = [ ]
∑ [ ] (2.1)
Trong đó nv[i] là dữ liệu đã được chuẩn hóa của đặc điểm i, v[i] là giá trị của đặc điểm
i, K là số đặc điểm có trong vectơ dữ liệu đầu vào Nếu giá trị lấy từ người dùng vượt quá giá trị ngưỡng đặc biệt thu được thông qua mạng SOM chứng tỏ hành vi đó là không bình thường Nếu dữ liệu đầu ra nằm trên giá trị ngưỡng đặc biệt hành vi đó cũng là bất thường
Hình 2 4: Thiết kế của mạng SOM[1]
2.3.3 Phân tích thống kê
Sử dụng thống kê để xác định các sự kiện bất thường được áp dụng rộng rãi trong các hệ thống phát hiện truy nhập từ nhiều thập kỷ nay Hệ thống hoạt động trên nguyên tắc thu thập dữ liệu của các thông số trên mạng và áp dụng một số kỹ thuật thống kê trên dữ liệu thu thập được để tạo ra các tập hồ sơ cho các thông số trong thời điểm hoạt động bình thường Ví dụ hệ thống có thể nghiên cứu sự phân phối của các thông số được giám sát, sau đó nó sẽ xem xét sự khác nhau giữa thông số ở thời điểm
Trang 33hiện tại với tệp hồ sơ đã lập, thông thường nếu dữ liệu của thông số hiện tại cao hơn thì nhiều khả năng hệ thống bị tấn công Hệ thống có thể sử dụng nhiều quy luật đơn giản
để phát hiện ra sự khác nhau Sử dụng ngưỡng (threshold) là cách đơn giản nhất, khi thông số được theo dõi vượt quá ngưỡng đặt ra thì có cảnh báo Các hệ thống sử dụng phân tích thống kê điển hình là Haystack (Smaha, 1988), IDES (Lunt et al, 1988), EMERALD(Porras and Neumann, 1997)
Haystack(Smaha,1988) được phát triển cho việc phát hiện xâm nhập dựa trên tệp thông tin người dùng logs[1] Hệ thống được phát triển cho cả hai phương thức dựa trên so sánh mẫu và dựa trên bất thường Đối với phương pháp dựa trên bất thường, từ các thống kê điều kiện trước đây hệ thống phân tích trên cả 2 loại: từng người dùng riêng lẻ và mô hình nhóm người dùng Rất nhiều đặc điểm trong phiên làm việc của người dùng được theo dõi, bao gồm: thời gian làm việc, số lượng tệp tạo ra, số lượng trang được in ra chúng sẽ được mô hình hóa như là các biến độc lập và ngẫu nhiên Đối với từng đặc điểm, hệ thống sẽ xác định một khoảng giá trị được coi là bình thường, trong một phiên làm việc nếu yếu tố quan sát có giá trị nằm ngoài khoảng bình thường thì hệ thống sẽ tính điểm dựa trên phân bố xác suất, một cảnh báo sẽ được sinh
ra nếu điểm quá cao Ngoài ra đối với người dùng Haystack còn xác định quyền cho từng người, nếu hành vi của ai đó vượt qua quyền được cho phép thì sẽ bị coi là bất thường Nhược điểm lớn nhất của hệ thống Haystack là thiết kế chỉ chạy offline, không giám sát được thời gian thực
EDES (Intrusion Detection Expert System - Lunt, 1988) là một trong những lớp
hệ thống phát hiện xâm nhập đầu tiên Dự án IDES được phát triển trong một số năm,sau khi hoàn thành thì nó được cải tiến thành NEDES (Next Generation Intrusion Detection Expert System)[1] Các hệ thống IDES dựa trên nguyên tắc hành vi người dùng trong các trường hợp thích hợp sẽ được tổng kết, tính toán thống kê, sau đó các hành động hiện tại sẽ được so sánh cùng các tệp hồ sơ tự nghiên cứu, và sự chênh lệch
có thể được đánh dấu như là hành vi bất thường IDES theo dõi ba loại đối tượng:
Trang 34người dùng, các host truy cập từ xa, các hệ thống đích Trong đó có khoảng 36 thông
số được xem xét: 25 cho người dùng, 6 cho các host truy cập từ xa, và 5 cho các hệ thống đích IDES đo đạc các thông số này trong mỗi phiên người dùng và dựa vào các tham số đó sinh ra các tệp hồ sơ, chúng cũng được cập nhật để phản ánh hành vi của người dùng từng ngày IDES sau đó cũng sử dụng một hệ chuyên gia để kiểm tra từng bản ghi mới ngoài những bản ghi đã biết Ngoài ra hệ thống còn gán cho các bản ghi một trọng số đi kèm, cứ 30 ngày trọng số này giảm đi một nửa nhằm phân biệt các sự kiện xảy ra từ lâu với các sự kiện mới Nhược điểm của phương pháp này là chỉ tính thống kê trên từng yếu tố quan sát nên không phát hiện được các cuộc tấn công ảnh hưởng trên diện rộng, tác động đến nhiều thành phần khác nhau của hệ thống
EMERALD (Event Monitoring Enabling Responses to Anomalous Live Disturbances - Porras and Naumann, 1997) là một hệ thống phát hiện xâm nhập có khả năng mở rộng và tích hợp cùng các hệ thống khác, nó tập trung vào việc phát hiện những xâm nhập từ bên ngoài, và được thiết kế để hoạt động tốt trên 3 mức: mức phân tích dịch vụ, mức domain, mức cho các tổ chức[1] Kiến trúc của EMERALD được xây dựng trên các hệ thống theo dõi EMERALD địa phương, chúng được phân bố và hoạt động tương đối độc lập trên các mức khác nhau Mỗi hệ thống theo dõi kết nối với các
hệ thống theo dõi khác thông qua mạng, chúng kết hợp việc phân tích dựa trên dấu hiệu
và thống kê hồ sơ để tạo ra khả năng bảo vệ thời gian thực cho các dịch vụ người dùng mạng rộng lớn trên Internet Một hệ thống theo dõi EMERALD bao gồm 4 thành phần chính: đối tượng tài nguyên (resource object), phương tiện hồ sơ (profiler engine), phương tiện dấu hiệu (signature engine) và thiết bị giải quyết chung (universal resolver) Đối tượng tài nguyên nắm bắt tất cả các thông số cấu hình, duy trì danh sách các hệ thống khác có kết nối đến nó Phương tiện hồ sơ thực hiện một số thao tác phát hiện bất thường trên các dữ liệu đã được kiểm tra, nó có thể phát triển trên các thành phần IDES và NIDES, các hồ sơ dữ liệu được cung cấp dưới dạng các lớp từ thành phần đối tượng tài nguyên Phương tiện dấu hiệu cung cấp khả năng phát hiện
Trang 35dựa trên dấu hiệu, nó hoạt động cùng với một tập các quy tắc nhỏ Thiết bị giải quyết chung đóng vai trò bộ xử lý trung tâm, nó tổng hợp các dữ liệu từ các thành phần địa phương, quyết định có hay không một sự xâm nhập xảy ra hoặc quyết định một phản ứng nào được sinh ra Nó đồng thời cũng quản lý sự kết nối giữa các hệ thống theo dõi Thiết bị giải quyết chung sử dụng một hệ chuyên gia để đưa ra kết luận từ các thông báo của phương tiện hồ sơ, phương tiện dấu hiệu và hệ thống theo dõi khác
2.3.4 Mạng Bayes (Bayesian network based)
Mạng Bayes là mô hình đồ thị thể hiện mối quan hệ nguyên nhân - kết quả, dựa chủ yếu trên lý thuyết xác suất có điều kiện kết hợp với lý thuyết đồ thị để giải quyết hai vấn đề quan trọng là tính không chắc chắn và tính phức tạp, do đó được ứng dụng rộng rãi
Mạng Bayes hoạt động trên nguyên tắc mô tả mối quan hệ phụ thuộc giữa các biến, nó có thể hoạt động được trong trường hợp dữ liệu không đầy đủ và phân bố không đều như dữ liệu mạng Ưu điểm của mạng Bayes là tính ổn định với dữ liệu đồng thời nó có khả năng đoán trước được kết quả của một hành vi do sử dụng mối quan hệ nhân quả Các hệ thống phát hiện bất thường dựa trên mạng Bayes là mô hình của Valdes, có khả năng phát hiện các chuỗi tấn công phân tán trong khi từng tấn công tách biệt không sinh ra cảnh báo Mô hình này sử dụng hệ thống Bayes để xây dựng mối quan hệ nguyên nhân kết quả giữa tấn công và các yếu tố quan sát Sau đó dựa trên phân bố xác suất của các yếu tố quan sát được để tính xác suất có tấn công.Một mô hình khác là của Kruegel sử dụng cách tiếp cận là sử dụng nhiều bộ cảm ứng khác nhau, đầu ra của các bộ cảm ứng này đuợc tập hợp để sinh ra cảnh báo Các bộ cảm ứng sẽ sử dụng phươmg pháp Bayes
Việc sử dụng mạng Bayes cho phát hiện bất thường có ưu điểm là giảm được tỷ
lệ cảnh báo sai Tuy nhiên nó có hạn chế là hiệu suất hoạt động giảm khi các yếu tố quan sát tăng lên
Trang 362.3.5 Máy trạng thái hữu hạn
Mô hình máy trạng thái hữu hạn (FSM - finite States machine) phát hiện bất thường bằng cách mô hình hóa các trạng thái hoạt động bình thường của mạng, sau đó cho dữ liệu đi qua là chuỗi các hành vi cần kiểm tra bất thường, bất thường có thể xác định nếu chuỗi đi qua không đạt được trạng thái kết thúc[1] Mô hình FSM xây dựng dựa trên cơ sở đặt các chuỗi báo động (sequence of alarm) ở các điểm khác nhau trên mạng để ghi lại trạng thái của máy Theo cách thông thường một máy trạng thái hữu hạn được định nghĩa bởi một tập Q = (Q,∑, q0, , F) với:
- Q : tập các trạng thái có thể
- q0: trạng thái ban đầu
- ∑: tập ngôn ngữ hữu hạn
- : là hàm chuyển Q x ∑ -> Q
- F là tập con của Q: tập các trạng thái kết thúc
Người ta thường dùng máy trạng thái hữu hạn để xác định bất thường trong các giao thức, các giao thức này sẽ được theo dõi một cách độc lập và coi như không bị ảnh hưởng bởi các sự kiện khác Ví dụ với giao thức TCP chúng ta có mô hình kiểm tra như trong hình 2.5
Trang 37Hình 2 5: Mô hình FSM cho kết nối TCP[1]
Phương pháp phát hiện bất thường sử dụng máy trạng thái hữu hạn có ưu điểm
là chúng ta có thể xác định chính xác nguyên nhân gây ra bất thường, phân biệt được
đó có phải là một cuộc tấn công hay không vì xây dựng được mô hình hoạt động của các sự kiện Nhưng trên thực tế phương pháp này rất khó triển khai do rất tốn tài nguyên, phải có một tập dữ liệu lớn đầy đủ về hoạt động của mạng, có máy hiệu năng lớn để tính toán Các sự kiện khác nhau phải xây dựng các mô hình riêng, độc lập để theo dõi
2.4 Kết luận chương
Chương này nghiên cứu một cách tổng quan về hệ thống phát hiện xâm nhậpdựa trên phát hiện bất thường, nó có sự khác biệt với hệ thống IDSdựa trên dấu hiệu.IDSdựa trên phát hiện bất thường sẽ xây dựng một hệ thống thông tin mô tả trạng thái bình thường, từ đó làm cơ sở để xác định sự bất thường mà có nhiều khả năng dẫn đến tấn công Chương này cũng giới thiệu các khái niệm và kỹ thuật phát hiện bất thường với những ưu nhược điểm cụ thể Có nhiều phương pháp phát hiện bất thường
như: mạng nơ-ron, hệ chuyên gia (rule-based), phân tích thống kê, máy trạng thái hữu
Trang 38hạn, mạng Bayes Bên cạnh những lợi thế của từng phương pháp thì chúng cũng có
những điểm yếu nhất định như cần nhiều thời gian khi hệ thống thay đổi - phát triển thêm hoặc cần một quá trình đánh giá, đào tạo lại một cách có hệ thống Vấn đề được quan tâm lớn nhất của các phương pháp này là tính ổn định trong trường hợp dữ liệu lớn, số lượng yếu tố quan sát tăng, dữ liệu không đầy đủ, không chính xác
Phương pháp được luận văn quan tâm nhất và muốn áp dụng cho hệ thống phát hiện xâm nhập là sử dụng mạng nơ-ron Bộ dữ liệu được sử dụng cho quá trình học của
mạng nơ-ron là KDD Cup 99 Hiệu quả của mạng nơ-ron thường cho ra hệ thống có
khả năng tốt hơn đồng thời lại linh động trong thay đổi huấn luyện Với cách tiếp cận này chúng ta có thể dễ dàng hơn trong việc xây dựng hệ thống IDS phức tạp, không cần cập nhật thường xuyên các luật mới như phương pháp rule-based Tuy nhiên trong thực tế dữ liệu thu được từ các cuộc tấn công có mức chênh lệch nhau rất nhiều Một số loại tấn công như DoS hoặc Probe là rất phổ biến nên dữ liệu thu được rất lớn Còn dữ liệu các cuộc tấn công như U2R, R2L thì rất ít Chênh lệch dữ liệu nhiều làm kết quả huấn luyện mạng nơ-ron bị thiên vị Trong chương tiếp theo luận văn sẽ đi trình bày chi tiết về áp dụng mạng nơ-ron vào xây dựng hệ thống phát hiện xâm nhập, cũng như biện pháp cải tiến chất lượng cho phương pháp này
Trang 39CHƯƠNG 3: PHƯƠNG PHÁP PHÁT HIỆN XÂM NHẬP DỰA
TRÊN MẠNG NƠ-RON
Đã có nhiều phương pháp học máy được sử dụng cho bài toán phát hiện xâm nhập với những ưu điểm khác nhau, bên cạnh đó các phương pháp cũng tồn tại những nhược điểm cần cải tiến Hiệu quả của mỗi phương pháp thường được đánh giá qua độ chính xác phát hiện xâm nhập Chương này sẽ tập trung trình bày phương pháp học
máy mạng nơ-rontruyền thẳng đa lớp (MLP)cũng như đưa ra đề xuất cải tiến kết quả
phát hiện bất thường Phần cuối chương trình bày demo chương trình phát hiện xâm nhập sử dụng mạng nơ-ronnói trên và đánh giá kết quả đạt được
3.1 Mô hình mạng nơ-ron trong bài toán phát hiện xâm nhập
Các cuộc tấn công mạng thường rất tinh vi và có khuôn dạng biến đổi, đa dạng
về hình thức nhưng nếu chúng ta dùng một phương pháp phân tích, thống kê nội dung của các kiểu tấn công thích hợp thì có thể tìm ra những đặc tính riêng, khá ổn định Do
đó một mạng nơ-ron được huấn luyện trên một tập mẫu đã được chuẩn hóa theo những đặc tính riêng đó sẽ trở thành công cụ hiệu quả trong việc phát hiện xâm nhập
Như chúng ta đã biết, ứng dụng một mô hình mạng nơ-roncụ thể thường được chia làm hai giai đoạn là: Huấn luyện và kiểm tra mẫu mới Tỷ lệ phát hiện xâm nhập thành công của mạng nơ-ronphụ thuộc rất nhiều vào tập mẫu Nếu tập mẫu này được phân tích và thống kê với đầy đủ các đặc trưng của xâm nhập thì khả năng phát hiện sẽ tốt hơn Một tập mẫu tốt phải là một tập mẫu đủ lớn, chứa tất cả các loại tấn công điển hình, với các đặc trưng của xâm nhập được thống kê và phân tích rõ ràng Đối với bài toán phát hiện xâm nhập sử dụng mạng nơ-ron chúng ta chỉ tốn thời gian chuẩn hóa dữ liệu và huấn luyện ban đầu nhưng thời gian đáp ứng cho một gói tin mới đưa vào kiểm tra là khá nhanh
Với những phân tích nêu trên, việc áp dụng mạng nơ-ron để giải quyết bài toán phát hiện xâm nhập là hoàn toàn khả thi Nhiệm vụ chính của bài toán là thiết kế một
Trang 40mạng nơ-ron để huấn luyện trên một tập mẫu thu thập từ thực tế Mỗi mẫu dữ liệu huấn luyện là thông tin về đặc điểm có được qua phân tích, thống kê từ một luồng dữ liệu đi vào hệ thống thực, hoặc là tấn công hoặc không, chúng ta cũng có thể phân tích sâu hơn như tấn công đó thuộc loại tấn công gì Kết quả sau khi huấn luyện là một mạng nơ-ron với các trọng số và bias được hiệu chỉnh tương ứng với chỉ tiêu thực tế đề ra và mạng nơ-ron sẽ được dùng để kiểm tra một gói tin bất kỳ xem có phải là tấn công hay không hoặc nếu là tấn công thì nó thuộc loại tấn công nào Như vậy để giải quyết bài toán phát hiện xâm nhập với mô hình mạng nơ-ron chúng ta cần thực hiện qua 4 giai đoạn như sau:
- Giai đoạn 1: Thu thập dữ liệu và tiền xử lý dữ liệu phục vụ quá trình học của mạng nơ-ron
- Giai đoạn 2: Thiết kế mạng nơ-ron dựa trên cơ sở phân tích dữ liệu xác định các đặc điểm của xâm nhập (đầu vào của mạng nơ-ron)
- Giai đoạn 3: Huấn luyện cho mô hình mạng nơ-ron đã thiết kế
Hình 3.1: Các bước huấn luyện mạng nơ-ron
- Giai đoạn 4: Kiểm tra huấn luyện trên mẫu mới (mẫu test)
Hình 3 1: Các bước kiểm tra dữ liệu với mô hình mạng nơ-ron đã huấn luyện