Nghiên cứu hệ thống phát hiện xâm nhập IDS cho máy chủ dịch vụNghiên cứu hệ thống phát hiện xâm nhập IDS cho máy chủ dịch vụNghiên cứu hệ thống phát hiện xâm nhập IDS cho máy chủ dịch vụNghiên cứu hệ thống phát hiện xâm nhập IDS cho máy chủ dịch vụNghiên cứu hệ thống phát hiện xâm nhập IDS cho máy chủ dịch vụNghiên cứu hệ thống phát hiện xâm nhập IDS cho máy chủ dịch vụNghiên cứu hệ thống phát hiện xâm nhập IDS cho máy chủ dịch vụNghiên cứu hệ thống phát hiện xâm nhập IDS cho máy chủ dịch vụNghiên cứu hệ thống phát hiện xâm nhập IDS cho máy chủ dịch vụNghiên cứu hệ thống phát hiện xâm nhập IDS cho máy chủ dịch vụNghiên cứu hệ thống phát hiện xâm nhập IDS cho máy chủ dịch vụ
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
LUẬN VĂN THẠC SĨ KỸ THUẬT
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS NGUYỄN CHIẾN TRINH
HÀ NỘI – 2018
Trang 2Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Người hướng dẫn khoa học: Tiến Sĩ Nguyễn Chiến Chinh
(Ghi rõ học hàm, học vị)
Phản biện 1: PGS TS Lê Thanh Hương
Phản biện 2: TS Vũ Văn Thỏa
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông
Vào lúc: giờ ngày tháng năm 2018
Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
Trang 3MỞ ĐẦU
Kể từ khi ra đời, Internet không ngừng phát triển và mở rộng đã mang lại rất nhiều tiện ích hữu dụng như: hệ thống thư điện tử, trò chuyện trực tuyến, tìm kiếm dữ liệu, trao đổi thông tin Khả năng kết nối trên toàn thế giới đang mang lại thuận tiện cho tất cả mọi người, nhưng nó cũng tiềm ẩn những nguy cơ khó lường đe dọa tới mọi mặt của đời sống xã hội Việc mất trộm thông tin trên mạng gây ảnh hưởng đến tính riêng tư cho các cá nhân, những vụ lừa đảo, tấn công gây từ chối dịch vụ gây ảnh hưởng lớn đến hoạt động kinh doanh cho các công ty và gây phiền toái cho người sử dụng Internet làm cho vấn đề bảo mật trên mạng luôn là một vấn đề nóng và được quan tâm đến trong mọi thời điểm Bên cạnh đó, các hình thức phá hoại mạng cũng trở nên tinh vi và phức tạp hơn
Do đó đối với mỗi hệ thống, nhiệm vụ bảo mật được đặt ra cho người quản trị mạng là hết sức quan trọng và cần thiết Xuất phát từ những thực tế đó, việc tìm hiểu về các cách tấn công phổ biến nhất hiện nay và các phòng chống các loại tấn công này là rất thiết thực
Vấn đề bảo mật được đặt ra và những đóng góp lớn trong việc hạn chế và ngăn chặn bảo mật, như Firewall ngăn chặn những kết nối không đáng tin cậy, mã hóa làm tăng độ an toàn cho việc truyền dữ liệu, các chương trình diệt virus với các các cơ sở dữ liệu được cập nhật Những yêu cầu trên dẫn đến yêu cầu phải
có một phương pháp bảo mật mới hỗ trợ cho những phương pháp bảo mật truyền thống Hệ thống phát hiệm xâm nhập IDS (Intruction Detection System)
là một hệ thống giám sát lưu thông mạng có khả năng phát hiện các hoạt động khả nghi hay các hành động xâm nhập trái phép trên hệ thống mạng trong tiến trình tấn công, cung cấp thông tin nhận biết và đưa ra cảnh báo cho hệ thống, người quản trị
Trang 4Từ những lý do trên, học viên lựa chọn đề tài “Nghiên cứu hệ thống phát hiện
xâm nhập IDS cho máy chủ dịch vụ ” cho luận văn Thạc sĩ của mình
Mục đích nghiên cứu chính của luận văn
- Nghiên cứu hệ thống phát hiện xâm nhập IDS cho máy chủ dịch vụ
- Nghiên cứu các kỹ thuật phân tích lưu lượng dựa trên thống kê, học máy nhằm phát hiện sớm các dấu hiệu tấn công bởi các phần mềm độc hại
- Nghiên cứu hệ thống phát hiện xâm nhập trái phép dựa trên phân tích lưu lượng mạng bất thường
- Đề xuất xây dựng hệ thống phát hiện xâm nhập trái phép IDS cho máy chủ dịch vụ dựa trên thuật toán PCA Xây dựng hệ thống IDS cho các thiết bị mạng, thiết lập các hệ thống thu thập thông tin cho các vùng lưu lượng mạng, kết hợp với hệ thống IDS cho các máy chủ tạo thành một hệ thống cho toàn mạng
II NỘI DUNG
Nội dung của luận văn được chia thành 3 chương với những nội dung cụ thể như sau:
Chương 1: TỔNG QUAN VỀ IDS
- Khái quát về IDS
- Phân loại IDS
- Phân tích lưu lượng mạng điển hình
- Phân tích lưu lượng mạng dựa trên học máy và khai phá dữ liệu
- Phân tích lưu lượng bất thường
- Kết luận chương
Chương 3: ỨNG DỤNG PCA XÂY DỰNG IDS CHO MÁY CHỦ DỊCH VỤ
- Kiến trúc hệ thống giám sát
Trang 5- Phạm vi thu thập dữ liệu
- Đề xuất phương pháp xây dựng IDS trên máy chủ dịch vụ và đánh giá kết quả
- Kết luận chương
Trang 6CHƯƠNG 1: TỔNG QUAN VỀ IDS 1.1 Khái quát về 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 hệ thống) hay tấn công từ bên ngoài (từ những 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 (tương tự như các phần mềm dựa 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 lượ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
Một hệ thống phát hiện xâm nhập trái phép cần thỏa mãn những yêu cầu sau:
1.1.1 Lịch sử phát triển của IDS
Trên thế giới: Ra đời đầu tiên cách đây khoảng 30 năm, khái niệm phát hiện xâm nhập xuất hiện qua một bài báo của James Anderson Khi đó người ta cần IDS với mục đích là dò tìm và nghiên cứu các hành vi bất thường và thái độ của người sử dụng trong mạng, phát hiện ra các việc lạm dụng đặc quyền để giám sát tài sản hệ thống mạng
Trang 71.1.2 Lợi ích chung của IDS
Ưu điểm của hệ thống là có thể phát hiện được những kiểu tấn công chưa biết trước Tuy nhiên, hệ thống này lại sinh ra nhiều cảnh báo sai do định nghĩa quá chung về cuộc tấn công Thống kê cho thấy trong hệ thống này, hầu hết các cảnh báo là cảnh báo sai, trong đó có nhiều cảnh báo là từ những hành động bình thường, chỉ có một vài hành động là có ý đồ xấu, hầu hết các hệ thống đều
có ít khả năng giới hạn các cảnh báo nhầm
1.1.3 Những thành phần không phải 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ừ 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 cũng 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.2 Phân loại IDS
1.2.1 Hệ thống phát hiện xâm nhập dựa trên host (Host IDS) 1.2.2 Hệ thống phát hiện xâm nhập dựa trên mạng (NIDS) 1.2.3 Phát hiện xâm nhập IDS lai (Distributed (Hybrid) IDS)
1.3 Kiến trúc IDS
Kiến trúc của hệ thống IDS bao gồm các thành phần chính:
- Thành phần thu thập thông tin (Information Collection)
Trang 8- Thành phần phát hiện (Detection)
- Thành phần phản ứng (Response)
1.4 Cơ chế phát hiện xâm nhập IDS
Mục đích của hệ thống IDS là nhằm cảnh báo cho người quản trị khi phát hiện xâm nhập Những hệ thống báo trộm kích hoạt một tín hiệu dựa trên sự chuyển động của đầu dò Các hệ thống IDS cũng có hai dạng cơ chế kích hoạt (triggering mechanism):
- Phát hiện sử dụng sai (dựa trên những dấu hiệu)
- Phát hiện sự bất thường (dựa trên mô tả sơ lược)
- Phân loại IDS theo dựa trên host và dựa trên mạng
- Kiến trúc và thành phần của hệ thống phát hiện IDS
- Cơ chế hoạt động – phát hiện xâm nhập của hệ thống IDS
Trang 9Chương 2: MỘT SỐ KỸ THUẬT PHÂN TÍCH LƯU LƯỢNG
Phương pháp, mô hình tri thức (Knowledge model) xây dựng các luật hoặc mẫu dấu hiệu để phát hiện bất thường Về căn bản, hệ thống cần thu thập thông tin tri thức về những loại bất thường khác nhau
Phương pháp khai phá dữ liệu và học máy (Data mining/Machine Learning) thường áp dụng phân cụm (Clustering) hoặc phân lớp (Classification) để phát hiện bất thường
2.2 Lưu lượng mạng bất thường
2.2.1 Khái niệm về lưu lượng mạng bất thường
Bất thường được định nghĩa là “sự sai lệch hoặc vượt ra khỏi phạm vi của một thủ tục, quy tắc hoặc khuôn dạng bình thường” Lưu lượng mạng bất thường (sau đây có thể gọi tắt là lưu lượng bất thường) là lưu lượng của những luồng thông tin không tuân theo ứng xử, hành vi thông thường Sự biến đổi bất thường này có thể do nhiều nguyên nhân khác nhau
Việc xét bất thường cho từng ứng dụng khác nhau nằm ngoài phạm vi nghiên
cứu của luận văn Luận văn này chỉ tập trung vào phát hiện bất thường chủ yếu
liên quan đến lưu lượng mạng được mô tả bởi các dữ liệu thuộc tính tại máy chủ dịch vụ
Trang 102.2.2 Nguyên nhân gây ra lưu lượng mạng bất thường
Bất thường xảy ra có thể do nhiều nguyên nhân Bảng sau liệt kê những nguyên nhân điển hình nhất gây ra sự kiện bất thường trong lưu lượng mạng
• Nguyên nhân tắc nghẽn mạng: Đây là bản chất tự nhiên của mạng chuyển mạch gói Môi trường mạng hội tụ như hiện nay với sự xuất hiện ngày càng nhiều các loại hình dịch vụ, ứng dụng, tắc nghẽn là hiện tượng rất phổ biến
• Do sự tăng đột biến của số lượng truy nhập người dùng vào mạng (vào các trang tin tức, máy chủ, cơ sở dữ liệu )
• Các sự cố hệ thống: Lỗi hỏng hóc thiết bị, đường truyền dẫn đến tăng/giảm lưu lượng mạng (giảm ở tuyến có thiết bị lỗi, tăng sang tuyến khác, có thể do tái định tuyến)
• Các hành vi quét thăm dò mạng hoặc tấn công mạng (làm tràn ngập băng thông, tràn lưu lượng gây ra đột biến tăng lưu lượng mạng, gây ra hiện tượng tắc nghẽn cục bộ, tấn công từ chối dịch vụ, sâu, virus…)
2.2.3 Phân tích và phát hiện lưu lượng mạng bất thường
Phân tích và phát hiện lưu lượng mạng bất thường nghĩa là cần phân tích,
xác định một tập hợp hoặc một phạm vi giới hạn những dữ liệu được coi là bình thường của các luồng tin và thực hiện theo dõi, so sánh dữ liệu tiếp nhận được với những dữ liệu được coi là bình thường này Nếu dữ liệu không nằm trong tập dữ liệu bình thường sẽ được coi là bất thường
Quá trình phân tích, phát hiện và xử lý bất thường gồm các giai đoạn như sau:
• Thu thập lưu lượng mạng
• Tiền xử lý dữ liệu, trích chọn (tách) các thuộc tính dữ liệu cần thiết
• Phân tích, phát hiện bất thường: dựa trên các mẫu dữ liệu thu thập từ lưu lượng mạng, phân tích và tìm ra những dữ liệu có dấu hiệu bất thường để có cảnh báo sớm
Trang 11• Xác định nguyên nhân, nhận dạng và phân loại bất thường, phân tích để tìm ra nguồn gốc của bất thường
• Tìm cách ngăn chặn, cập nhật tập luật các chương trình phòng chống, cải tiến các phương pháp phát hiện, hệ thống bảo vệ hiện có
Phân tích và phát hiện lưu lượng bất thường là giai đoạn quan trọng nhất của toàn bộ quá trình phân tích, phát hiện và xử lý bất thường
2.3 Một số phương pháp phân tích và phát hiện lưu lượng bất thường điển hình
2.3.1 Phương pháp dựa trên mô hình Markov
Mô hình Markov (Markov Model) phát hiện bất thường bằng cách giám sát hệ thống tại các chu kỳ cố định và lưu giữ trạng thái của hệ thống, đó là xác xuất của mỗi trạng thái tại từng chu kỳ Trạng thái của hệ thống thay đổi khi xuất hiện sự kiện và sự kiện bất thường được phát hiện nếu xác suất xuất hiện của trạng thái đó là thấp
2.3.2 Phương pháp dựa trên mạng Bayesian
Đây là phương pháp giám sát dựa trên biểu diễn sự mã hóa xác xuất mối quan
hệ giữa các biến Phương pháp này có thể giả định các biến độc lập hoặc phụ thuộc nhau và có khả năng phát hiện bất thường với nhiều lớp Mạng Bayesian (Bayesian Network) sử dụng để mô hình hóa hệ thống dựa trên các thuộc tính (biến) và xác xuất giữa những thuộc tính này với lớp bất thường Với một quan sát cần kiểm tra, phương pháp này tính xác xuất trong các lớp dữ liệu đã phân loại khác nhau, bao gồm cả bình thường và bất thường Giá trị tính được lớn nhất dùng để xác định lớp cho quan sát đó
2.3.3 Phương pháp dựa trên 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 sử dụng rộng rãi trong các hệ thống phát hiện truy nhập từ nhiều năm 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ố
Trang 12kỹ thuật thống kê trên dữ liệu được thu thập để 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,
2.3.4 Phương pháp dựa trên phân cụm
Phân cụm là việc gán các đối tượng vào các nhóm gọi là cụm (cluster) sao cho các đối tượng trong cụm có độ tương đồng giống nhau so với những cụm khác Nếu một đối tượng nằm ngoài những cụm đã biết, đó có thể là dấu hiệu bất thường Phương pháp này thường mặc định là các cụm có nhiều phân tử hoặc
có mật độ cao là bình thường, ngược lại là bất thường
2.3.5 Phương pháp máy vector hỗ trợ (SVM)
Trong SVM (Support Vector Machine), vector đầu vào được ánh xạ sang không gian thuộc tính cấp cao hơn Sức mạnh của SVM nằm ở khả năng phân chia vùng biên thành những siêu mặt phẳng được quyết định bởi vector hỗ trợ Điều này sẽ tạo ra các giá trị ngoại lai tốt hơn
2.3.6 Phương pháp dựa trên hệ chuyên gia (Ruler base)
Phương pháp này được áp dụng từ rất sớm trong 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 toàn diện chứa tập luật miêu tả hành vi của hệ thống được sử dụng để xác định nếu một lỗi
nào đó xảy ra
2.3.7 Phương pháp dựa trên luật học máy
Phương pháp học các luật có thể mô hình hóa trạng thái bình thường của hệ thống Các phương pháp cây quyết định (Decision tree) như C4.5/C5.0.ID3, Random Forest v.v học các luật dựa trên dữ liệu huấn luyện Những quan sát không thỏa mãn những luật đã học được coi là bất thường
2.3.8 Phương pháp dựa trên khai phá dữ liệu
Định nghĩa về KPDL được phát biểu như sau: “KPDL là việc sử dụng dữ liệu lịch sử để khám phá những quy tắc và cải thiện những quyết định trong tương lai.” Với một cách tiếp cận mang tính ứng dụng hơn, Tiến sỹ Fayyad đã
Trang 13đưa ra một định nghĩa khác: “KPDL thường được xem là việc khám phá tri thức trong các cơ sở dữ liệu, là một quá trình trích dẫn những thông tin ẩn, trước đây chưa biết và có khả năng hưu ích dưới dạng các quy luật, ràng buộc, qui tắc trong cơ sở dữ liệu” Nói chung, KPDL là một quá trình học tri thức mới từ những dữ liệu thu thập được trước đó
2.3.9 Phương pháp dựa trên PCA
PCA (Principal Component Analysis) là thuật toán điển hình sử dụng trong phân tích đa biến Thuật toán này không chỉ dùng để phân tích sử dụng tương quan giữa các biến mà còn rút gọn số chiều dữ liệu cần xử lý Trong một số năm trở lại đây, một số nghiên cứu đã áp dụng thuật toán PCA vào phát hiện lưu lượng bất thường
Một trong những phương pháp phân tích và phát hiện lưu lượng bất thường đa biến điển hình là phương pháp dựa trên thuật toán PCA (gọi tắt là phương pháp PCA)
Phân tích thành phần chính (Principal Component Analysis - PCA) là thuật toán
để phân tích cấu trúc tương quan giữa các biến đầu vào PCA chuyển đổi trục tọa độ ban đầu sang trục tọa độ mới trong đó các biến ban đầu được chuyển thành các biến mới không có sự tương quan gọi là thành phần chính (Principal Component) Các thành phần được sắp xếp theo thứ tự giảm dần của độ biến thiên (phương sai) Mục tiêu của PCA là tìm ra những thành phần chính mô tả nhiều nhất quy luật biến thiên của các biến ban đầu Những thành phần chính này có thể dụng để miêu tả cấu trúc tương quan của dữ liệu Những thành phần chính còn lại được coi là nhiễu hoặc phần dư và có thể loại bỏ nếu không cần thiết Do đó PCA còn là một thuật toán thường sử dụng để giảm số chiều dữ liệu nhưng vẫn giữ được phần lớn đặc tính của dữ liệu
PCA thường được sử dụng để phân tích dữ liệu và dự đoán mô hình PCA
có thể được thực hiện dựa trên sự phân tích trị riêng của ma trận hiệp phương
Trang 14sai (hoặc ma trận tương quan) hoặc phép phân tích SVD (Singular Value Decomposition) sau khi đã chuẩn hóa được dữ liệu
Trong phần này, luận văn trình bày nghiên cứu về phương pháp PCA dựa trên một số công trình điển hình đã có, từ đó đưa ra những đề xuất để cải thiện hiệu năng của phương pháp PCA
2.4 Kết chương
Chương 2 trình bày về các nghiên cứu, các phương pháp phân tích lưu lượng bất thường liên quan đến đề tài luận văn
Các nội dung căn bản như sau:
- Tổng quan và phân loại các phương pháp phân tích và phát hiện lưu lượng bất thường
- Một số phương pháp phân tích và phát hiện lưu lượng bất thường điển hình
- Nhận xét đánh giá về vấn đề phân tích và phát hiện lưu lượng bất thường Việc lựa chọn phương pháp phát hiện bất thường nào đạt được hiệu quả và đã được kiểm chứng là cần thiết Học viên sử dụng phương pháp PCA đã chứng tỏ những ưu điểm nổi bật và có khả năng ứng dụng trong thực tiễn