Nghiên cứu các giải pháp giám sát hoạt động các thiết bị và dịch vụ trong hệ thống mạng Đề xuất mô hình tích hợp các công cụ nguồn mở hỗ trợ giám sát hoạt động của các thiết bị, dịc
Trang 1CÔNG TRÌNH NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG
XÂY DỰNG HỆ THỐNG GIÁM SÁT HOẠT ÐỘNG
CỦA MẠNG MÁY TÍNH DỰA VÀO
PHẦN MỀM NGUỒN MỞ
MÃ SỐ: T2013-45
S 0 9
S KC 0 0 5 4 4 0
Trang 2BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH
BÁO CÁO TỔNG KẾT
ĐỀ TÀI KH&CN CẤP TRƯỜNG
XÂY DỰNG HỆ THỐNG GIÁM SÁT HOẠT ĐỘNG CỦA MẠNG MÁY TÍNH DỰA VÀO PHẦN MỀM
NGUỒN MỞ
Mã số: T2013-45
Chủ nhiệm đề tài: ThS Huỳnh Nguyên Chính
TP HCM, 11/2013
Trang 3TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
THÀNH PHỐ HỒ CHÍ MINH
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO TỔNG KẾT
ĐỀ TÀI KH&CN CẤP TRƯỜNG
XÂY DỰNG HỆ THỐNG GIÁM SÁT HOẠT ĐỘNG CỦA MẠNG MÁY TÍNH DỰA VÀO PHẦN MỀM
TP HCM, 11/2013
Trang 4MỤC LỤC
MỞ ĐẦU 1
Chương 1 TỔNG QUAN 4
1.1 Tổng quan về bảo mật hệ thống mạng máy tính 4
1.2 Phân loại các lỗ hổng bảo mật 5
1.3 Các công cụ phát hiện lỗ hổng mạng 6
1.4 Các kiểu tấn công mạng 6
1.5 Các giải pháp phát hiện và phòng chống tấn công mạng 8
Chương 2 HỆ THỐNG PHÁT HIỆN & PHÒNG CHỐNG XÂM NHẬP 11
2.1 Vai trò của IDS/IPS trong hệ thống mạng 11
2.1.1 Lịch sử phát triển 11
2.1.2 Vai trò của hệ thống phát hiện và phòng chống xâm nhập mạng 11
2.2 Đặc điểm của hệ thống IDS/IPS 12
2.2.1 Kiến trúc của hệ thống phát hiện xâm nhập (IDS) 12
2.2.2 Các cách triển khai hệ thống IDS/IPS 15
2.2.3 Khả năng phát hiện và phòng chống xâm nhập mạng của hệ thống IDS/IPS 17 2.3 Hệ thống giám sát lưu lượng, thiết bị và dịch vụ 18
2.4 Hệ thống báo động 19
2.5 SNMP và hệ thống giám sát mạng 20
Chương 3 CÁC CÔNG CỤ NGUỒN MỞ HỖ TRỢ PHÁT HIỆN & PHÒNG CHỐNG XÂM NHẬP MẠNG 22
3.1 Giới thiệu 22
3.2 Đặc điểm của Snort 23
3.3 Phân tích các vấn đề của Snort và khả năng triển khai 26
3.3.1 Lợi ích của Snort 26
3.3.2 Đánh giá tập luật của Snort 27
Trang 53.5 Hệ thống giám sát trạng thái hoạt động các thiết bị và dịch vụ - Nagios 28
3.6 Hệ thống giám sát lưu lượng - Cacti 32
3.7 Hệ thống báo động qua SMS - Gnokii 36
Chương 4 PHÁT TRIỂN ỨNG DỤNG HỆ THỐNG GIÁM SÁT MẠNG DỰA VÀO MÃ NGUỒN MỞ 38
4.1 Mô hình cài đặt thực nghiệm 38
4.2 Cài đặt thực nghiệm 39
4.2.1 Cài đặt Gnokii 39
4.2.2 Cài đặt Snort 40
4.2.3 Cài đặt Fwsnort 41
4.2.4 Cài đặt Nagios 44
4.2.5 Cài đặt Cacti 45
4.3 Kết quả thực nghiệm 50
4.4 Kết luận 57
Chương 5 KẾT LUẬN 59
5.1 Một số kết quả đạt được 59
5.2 Hướng phát triển 60
TÀI LIỆU THAM KHẢO 61
Phụ lục A:Hướng dẫn cấu hình GSM/GPRS Gateway trên Linux 62
Phụ lục B:Hướng dẫn cài đặt Snort 64
Phụ lục C:Hướng dẫn cài đặt và cấu hình Nagios 69
Phụ lục D:Hướng dẫn cài đặt và cấu hình CACTI 72
Trang 6DANH MỤC CÁC TỪ VIẾT TẮT
BASE Basic Analysis and Security Engine
DdoS Distribute Denial of Service
DoS Denial of Service
FTP File Transfer Protocol
ICMP Internet Control Message Protocol
IDS Intrusion Detection System
IPS Intrusion Prevention System
SNMP Simple Network Managerment Protocol
TCP Transfer Control Protocol
HIDS Host-based Intrusion Detection System
NIDS Network-based IDS
ATTT An Toàn Thông Tin
MIB Management Information Base
Trang 7DANH MỤC CÁC HÌNH VẼ
Hình 2.1 Hệ thống phát hiện xâm nhập 12
Hình 2.2 Kiến trúc của hệ thống IDS 13
Hình 2.3 Sự kết hợp của các bộ lọc gói tin 14
Hình 2.4 IDS hoạt động ở chế độ promiscuous 16
Hình 2.5 IDS hoạt động ở chế độ inline 17
Hình 2.6 Các thiết bị dùng trong báo động SMS 20
Hình 3.1 Các thành phần của Snort 24
Hình 3.2 Nagios giám sát thiết bị và dịch vụ 28
Hình 3.3 Nagios theo dõi các dịch vụ trên Windows qua NSClient 29
Hình 3.4 Nagios giám sát các dịch vụ trên máy Unix/Linux qua NRPE 29
Hình 3.5 Nagios giám sát máy in 29
Hình 3.6 Nagios giám sát Router, Switch 30
Hình 3.7 Nagios giám sát các thiết bị mạng 30
Hình 3.8 Nagios vẽ sơ đồ trạng thái các host trên mạng 31
Hình 3.9 Nagios gửi cảnh báo qua e-mail và SMS 31
Hình 3.10 Sơ đồ hoạt động của Cacti 32
Hình 3.11 Sơ đồ trao đổi thông tin SNMP giữa Cacti và một thiết bị 33
Hình 3.12 Cacti thu thập các thông tin qua SNMP 33
Hình 3.13 Cacti biểu diễn các lưu lượng bằng dạng đồ thị thời gian thực 34
Hình 4.1 Mô hình cài đặt thực nghiệm 38
Trang 8Hình 4.2 Thiết lập các thông số cho một thiết bị trên Cacti 49
Hình 4.3 Lưu lượng được thu thập qua SNMP 49
Hình 4.4 Màn hình theo dõi trên Cacti được tích hợp các tính năng giám sát 50
Hình 4.5 Theo dõi hoạt động của Cisco Switch qua đồ thị 51
Hình 4.6 Theo dõi các trạng thái các thiết bị & phát báo động bằng âm thanh 51
Hình 4.7 Hiển thị các đồ thị cho mỗi thiết bị 52
Hình 4.8 Theo dõi tổng quan các cảnh báo từ Snort qua giao diện Web 52
Hình 4.9 Theo dõi chi tiết các cảnh báo từ Snort qua giao diện Web 53
Hình 4.10 Hiển thị đồ thị lưu lượng cho kết nối mạng 53
Hình 4.11 Theo dõi một số dịch vụ chạy trên 1 host từ Nagios 54
Hình 4.12 Theo dõi các lưu lượng mạng giữa các thiết bị trực quan 54
Hình 4.13 Hiển thị đồ thị lưu lượng cho kết nối mạng 55
Hình 4.14 Cảnh báo khi dùng DoSHTTP để tấn công vào Web server 56
Hình 4.15 Cảnh báo gửi qua Email khi dùng chương trình SolarWinds scan 56
Hình 4.16 Hệ thống phát cảnh báo cho dịch vụ HTTP trên máy chủ Web 57
Trang 9MỞ ĐẦU
I Cơ sở khoa học và thực tiễn
Mạng máy tính đang ngày càng có vai trò quan trọng cho mỗi cá nhân, tổ chức, doanh nghiệp Việc trao đổi thông tin và thực hiện các giao dịch chủ yếu thông qua hệ thống mạng máy tính
Vì thế, bảo mật hệ thống mạng đang là một nhu cầu cấp thiết cho các tổ chức, doanh nghiệp nhằm bảo vệ hệ thống cơ sở dữ liệu của mình, chống lại những tấn công từ bên
ngoài và thực hiện các trao đổi thông tin, giao dịch qua mạng được an toàn
II Mục tiêu đề tài
Khảo sát các lỗ hổng bảo mật và các nguy cơ hệ thống mạng bị tấn công xâm nhập
Xem xét các giải pháp giám sát hệ thống mạng: phát hiện xâm nhập, phòng chống xâm nhập, theo dõi tình trạng hoạt động của các Server, Switch, Router, và một số dịch vụ mạng
Phát triển hệ thống cảnh báo đa dạng qua Web, Email, SMS và Audio
III Đối tượng nghiên cứu
Các phần mềm nguồn mở phát hiện xâm nhập
Các phần mềm nguồn mở phòng chống xâm nhập
Các phần mềm nguồn mở giám sát lưu lượng mạng
Các phần mềm nguồn mở giám sát các thiết bị và dịch vụ mạng
IV Nội dung nghiên cứu
Nghiên cứu các khả năng tấn công mạng
Nghiên cứu các giải pháp phát hiện xâm nhập mạng
Nghiên cứu các khả năng phòng chống tấn công mạng
Trang 10 Nghiên cứu các giải pháp giám sát hoạt động các thiết bị và dịch vụ trong hệ
thống mạng
Đề xuất mô hình tích hợp các công cụ nguồn mở hỗ trợ giám sát hoạt động của
các thiết bị, dịch vụ mạng, phát hiện và phòng chống xâm nhập mạng
Thực nghiệm một giải pháp giám sát hoạt động của các thiết bị mạng, các dịch
vụ mạng, phát hiện và phòng chống các xâm nhập mạng trên cơ sở nguồn mở
kết hợp với hệ thống báo động đa dạng qua Email, Web, Audio và SMS
Trong đề tài nghiên cứu này, tác giả tập trung nghiên cứu giải pháp giám sát hệ thống mạng dựa vào phần mềm nguồn mở nhằm theo dõi các dấu hiệu bất thường xảy ra
trong hệ thống mạng Cụ thể, tác giả đề xuất giải pháp kết hợp giữa Snort, Fwsnort,
Cacti, Nagios và GSM/GPRS modem Tạo ra một hệ thống giám mạng có khả năng: phát hiện những xâm nhập mạng; phòng chống tấn công mạng; giám sát lưu lượng giữa các thiết bị, tình trạng hoạt động của CPU, RAM,… trên các thiết bị; giám sát trạng thái hoạt động của các thiết bị quan trọng trong hệ thống (server, router, switch,…) và các dịch vụ mạng chạy trên nó Đồng thời phát triển hệ thống báo động
đa dạng, tiện dụng và linh động hỗ trợ người quản trị mạng giám sát hệ thống một cách hiệu quả hơn thông qua các hình thức: giao diện Web, E-mail, Audio và SMS
Nội dung báo cáo được tổ chức thành 5 chương:
Chương 1: Tổng quan Giới thiệu bao quát về vấn đề bảo mật mạng và các vấn
đề liên quan đến tấn công xâm nhập hệ thống mạng
Chương 2 Hệ thống phát hiện và phòng chống xâm nhập mạng Chương
này trình bày tổng quan về vài trò, đặc điểm và khả năng của hệ thống phát hiện
và phòng chống xâm nhập, giám sát lưu lượng, giám sát trạng thái hoạt động của thiết bị và dịch vụ trong hệ thống mạng
Trang 11 Chương 3 Các công cụ hỗ trợ trong việc phát hiện và phòng chống xâm nhập dựa vào mã nguồn mở Chương này trình bày về đặc điểm Snort,
Fwsnort, Nagios, Cacti và Gnokii Khả năng kết hợp của chúng trong việc tạo ra một hệ thống giám sát mạng và cảnh báo một cách trực quan, tiện dụng và linh động
Chương 4 Phát triển ứng dụng Hệ thống Giám sát mạng dựa vào mã nguồn mở Chương này trình bày mô hình đề xuất, cài đặt thực nghiệm dựa trên
giải pháp đã đưa ra ở chương 3 Đánh giá kết quả thực nghiệm
Chương 5 Kết luận Tổng kết các vấn đề liên quan đế hệ thống giám sát mạng
trong việc phát hiện và phòng chống xâm nhập mạng, giám sát trạng thái các thiết bị và dịch vụ trong hệ thống Đánh giá các kết quả đạt được của đề tài, những vấn đề còn tồn tại Từ đó đưa ra những hướng khắc phục và phát triển trong tương lai
Trang 12Chương 1 TỔNG QUAN
1.1 Tổng quan về bảo mật hệ thống mạng máy tính
Mạng máy tính đang ngày một phát triểm mạnh và là một thành phần không thể thiếu trong thời đại ngày nay, ảnh hưởng đến mọi lĩnh vực của đời sống Đi đôi với sự phát triển ngày càng nhanh chóng của các hệ thống mạng là vấn đề bảo mật thông tin, bảo mật mạng
“Bảo vệ thông tin ngày nay chính là bảo vệ tài sản cá nhân, tài sản doanh nghiệp, tài sản quốc gia và cao hơn cả là bảo vệ tài sản của nhân loại.” [1]
Ở Việt Nam, theo số liệu thống kê từ 01/2009 về an toàn thông tin trong các doanh nghiệp như sau [1]:
- 34% doanh nghiệp thừa nhận đã phát hiện sự cố tấn công an ninh mạng (28% năm 2008)
- 38% doanh nghiệp không hề biết rõ hệ thống mạng của mình có bị tấn công hay không (26% năm 2008)
- 45% doanh nghiệp không có hệ thống an ninh mạng có khả năng ghi nhận được các cuộc tấn công (55% năm 2008)
Các nghiên cứu về giải pháp bảo mật, an toàn thông tin trên thế giới đang phát triển ngày một mạnh mẽ Hàng loạt các công ty giải pháp về hệ thống an toàn, bảo mật thông tin cung cấp nhiều sản phẩm trên thị trường Ví dụ như các sản phẩm của Cisco (PIX, ASA,…), Juniper, O2Security, Microsoft, …được sử dụng trong các công ty, tổ chức, doanh nghiệp
Bên cạnh các sản phẩm tường lửa thì hệ thống phát hiện và phòng chống xâm nhập mạng (IDS/IPS) cũng ngày một phát triển mạnh nhằm tạo ra khả năng tự phòng vệ cho
Trang 13hệ thống mạng Giúp hệ thống mạng có khả năng phân tích và cảnh báo những bất thường trong hệ thống cho người quản trị mạng
Các sản phẩm thương mại cũng đã có mặt trên thị trường, tuy nhiên mức đầu tư cho hệ thống này rất lớn, không phù hợp cho các doanh nghiệp vừa và nhỏ Giải pháp nguồn
mở cho phép giảm chi phí đầu tư và tỏ ra thích hợp cho việc xây dựng một giải pháp bảo mật mạng trong doanh nghiệp
1.2 Phân loại các lỗ hổng bảo mật
Hiểu được những điểm yếu trong bảo mật là một vấn đề hết sức quan trọng để tiến hành những chính sách bảo mật có hiệu quả
Những điểm yếu trong bảo mật mạng gồm có thể được phân loại: về mặt kỹ thuật, về mặt cấu hình và các chính sách bảo mật
Điểm yếu về mặt kỹ thuật
Điểm yếu trong kỹ thuật gồm có điểm yếu trong các giao thức, trong Hệ điều hành và các thiết bị phần cứng như server, switch, router,
Điểm yếu trong cấu hình hệ thống
Đây là lỗi do nhà quản trị tạo ra Lỗi này do các thiếu sót trong việc cấu hình hệ thống như: không bảo mật tài khoản khách hàng, hệ thống tài khoản với password dễ dàng đoán biết, sử dụng các cấu hình mặc định trên thiết bị…
Điểm yếu trong chính sách bảo mật
Chính sách bảo mật diễn tả cách thức, qui định và vị trí được thực hiện Đây là điều kiện quan trọng giúp việc bảo mật có hiệu quả tốt nhất… Mỗi công ty nên xây dựng một chính sách bảo mật đặc thù cho đơn vị mình
Điểm yếu trong chính sách bao gồm: những điểm yếu trong bản thân chính sách bảo
mật của một tổ chức, của một hệ thống mạng
Trang 141.3 Các công cụ phát hiện lỗ hổng mạng
Những kẻ phá hoại (hacker) sẽ lợi dụng những lỗ hổng bảo mật để xâm nhập vào hệ thống Như vậy, việc dò tìm những điểm yếu trong hệ thống để có những biện pháp khắc phục nhằm hạn chế các nguy hại cho hệ thống là cần thiết
Các thông tin từ nhà sản xuất phần cứng, phần mềm, các bản vá lỗi nên được cập nhật thường xuyên cũng là một giải pháp để bảo vệ cho hệ thống của mình Hơn nữa, hiện nay có rất nhiều công cụ giúp người quản trị mạng dò tìm những lỗ hổng bảo mật trong
hệ thống mạng của mình Điển hình một số công cụ được sử dụng phổ biến là: Nmap, Metaexploit, Retina Discovery Scan, …
- Tấn công chủ động (active attack): kẻ tấn công thay đổi hoạt động của hệ thống
và hoạt động của mạng khi tấn công làm ảnh hưởng đến tính toàn vẹn, sẵn sàng
và xác thực của dữ liệu
- Tấn công bị động (passive attack): kẻ tấn công cố gắng thu thập thông tin từ
hoạt động của hệ thống và hoạt động của mạng làm phá vỡ tính bí mật của dữ liệu
Nếu dựa vào nguồn gốc của cuộc tấn công thì có thể phân loại tấn công làm 2 loại: tấn công từ bên trong và tấn công từ bên ngoài:
- Tấn công từ bên trong: là những tấn công xuất phát từ bên trong hệ thống mạng
Người sử dụng muốn truy cập, lấy thông tin nhiều hơn quyền cho phép
Trang 15- Tấn công từ bên ngoài: là những tấn công xuất phát từ bên ngoài Internet hay
các kết nối tuy cập từ xa
Khi một mạng máy tính bị tấn công, nó sẽ bị chiếm một lượng lớn tài nguyên trên máy chủ như dung lượng ổ cứng, bộ nhớ, CPU, băng thông … Lượng tài nguyên bị chiếm giữ này tùy thuộc vào khả năng huy động tấn công của người tấn công Khi đó, máy chủ sẽ không thể đáp ứng hết những yêu cầu từ những máy trạm của những người sử dụng hợp pháp và máy chủ có thể nhanh chóng bị ngừng hoạt động, hư hỏng hoặc bị khởi động lại
Mặc dù có nhiều kiểu tấn công mạng nhưng để thực hiện một cuộc tấn công xâm nhập,
kẻ tấn công thường thực hiện qua 5 bước như sau:
- Khảo sát, thu thập thông tin
- Dò tìm
- Xâm nhập
- Duy trì xâm nhập
- Xóa dấu vết
Bước 1: Khảo sát, thu thập thông tin: kẻ tấn công thu thập thông tin về nơi tấn
công như phát hiện các máy chủ, địa chỉ IP, các dịch vụ mạng, …
Bước 2: Dò tìm: kẻ tấn công sử dụng các thông tin thu thập được từ bước 1 để tìm
kiếm thêm thông tin về lỗ hổng, điểm yếu của hệ thống mạng Các công cụ thường được sử dụng cho quá trình này là các công cụ quét cổng, quét IP, dò tìm lỗ hổng,
…
Bước 3: Xâm nhập: các lỗ hổng trong bước 2 được sử dụng, khai thác để xâm
nhập vào hệ thống Ở bước này, kẻ tấn công có thể dùng các kỹ thuật như: tràn bộ đệm, từ chối dịch vụ (DoS), …
Trang 16 Bước 4: Duy trì xâm nhập: một khi kẻ tấn công đã xâm nhập được vào hệ thống,
bước tiếp theo là làm sao để duy trì các xâm nhập này nhằm khai thác và xâm nhập tiếp trong tương lai Một vài kỹ thuật như backboors, trojans… được sử dụng Một khi kẻ tấn công đã làm chủ hệ thống, chúng có thể gây ra những nguy hại cho hệ thống như đánh cắp dữ liệu hoặc phá hoại hệ thống Ngoài ra, họ có thể sử dụng hệ thống để tấn công vào các hệ thống khác như loại tấn công DDoS
Bước 5: Che đậy, xóa dấu vết Một khi kẻ tấn công đã xâm nhập và cố gắng duy
trì xâm nhập Bước tiếp theo là làm sao để xóa hết dấu vết để không còn chứng cứ pháp lí xâm nhập Kẻ tấn công phải xóa các tập tin log, xóa các cảnh báo từ hệ thống phát hiện xâm nhập
Ở bước “Dò tìm” và “Xâm nhập” kẻ tấn công thường làm lưu lượng kết nối mạng
thay đổi khác bình thường rất nhiều Đồng thời tài nguyên của hệ thống máy chủ bị ảnh hưởng đáng kể Những dấu dấu hiệu này rất có ích cho người quản trị mạng có thể phân tích và đánh giá tình hình hoạt động của hệ thống mạng
Hầu hết các cuộc tấn công đều tiến hành tuần tự 5 bước trên Làm sao để nhận biết hệ thống mạng đang bị tấn công, xâm nhập ngay từ hai bước đầu tiên là hết sức quan
trọng Ở tại bước thứ 3 là “Xâm nhập”, bước này không dễ dàng đối với kẻ tấn công
Do vậy, khi không thể xâm nhập được vào hệ thống, để phá hoại có nhiều khả năng kẻ tấn công sẽ sử dụng tấn công từ chối dịch vụ để ngăn cản không cho người dùng hợp lệ truy xuất tài nguyên hệ thống
1.5 Các giải pháp phát hiện và phòng chống tấn công mạng
Phát hiện xâm nhập là một tập hợp các kỹ thuật và phương pháp dùng để dò tìm những hoạt động đáng nghi ngờ trên mạng Một hệ thống phát hiện xâm nhập được định nghĩa
là một tập hợp các công cụ, phương thức, và tài nguyên giúp người quản trị xác định, đánh giá, và báo cáo hoạt động không được phép trên mạng
Trang 17Phát hiện xâm nhập được xem là một tiến trình được quyết định khi một người không
có quyền đang cố gắng để xâm nhập hệ thống mạng trái phép Hệ thống phát hiện xâm nhập sẽ kiểm tra tất cả các gói tin đi qua hệ thống và quyết định gói tin đó có vấn đề khả nghi hay không Hệ thống phát hiện xâm nhập đuợc trang bị hàng triệu tình huống
để nhận dạng tấn công và đuợc cập nhật thường xuyên Chúng thực sự quan trọng và là lựa chọn hàng đầu để phòng thủ trong việc phát hiện và phòng chống xâm nhập mạng Việc nghiên cứu xây dựng hệ thống phát hiện và phòng chống xâm nhập (IDS/IPS) đang được phát triển mạnh và còn phát triển mạnh mẽ trong thời gian tới Các sản phẩm thương mại trên thị trường có chi phí rất lớn, vượt quá khả năng đầu tư của nhiều doanh nghiệp Bên cạnh đó, các nghiên cứu về mã nguồn mở cũng đã được đầu tư nghiên cứu và triển khai Có nhiều đề tài trong nước nghiên cứu liên quan đến IDS/IPS bằng mã nguồn mở chủ yếu tập trung vào Snort Nhưng nhìn chung chưa được áp dụng rộng rãi, còn tồn tại nhiều hạn chế như: do chương trình mã nguồn mở nên hầu hết không có giao diện thân thiện; thành phần báo động không được tích hợp sẵn, hoặc nếu
có cũng chỉ qua giao diện console, hoặc qua giao diện Web chưa tạo được sự linh động
và tiện dụng cho người quản trị mạng; phần mềm mang tính đơn lẻ (chỉ tập trung nghiên cứu về Snort) trong khi nhu cầu tích hợp nhiều tính năng giám sát khác để nâng cao hiệu quả sử dụng chưa được chú trọng và phát triển
Hơn nữa, các dấu hiệu của các kiểu tấn công ngày một tinh vi phức tạp đòi hỏi hệ thống phát hiện và phòng chống xâm nhập (IDS/IPS) phải được thường xuyên cập nhật những dấu hiệu mới Người quản trị mạng còn có thể dựa vào những phân tích khác như những dấu hiệu bất thường về lưu lượng ra vào hệ thống, hoạt động của CPU, RAM để có những phản ứng kịp thời Bên cạnh đó, hệ thống báo động cũng cần triển khai mang tính chất đa dạng nhiều hình thức, linh động, tiện dụng thực sự hỗ trợ thiết thực cho người quản trị mạng
Trang 18 Xây dựng hệ thống phát hiện và phòng chống xâm nhập
Phát triển hệ thống giám sát trực quan theo dõi các diễn biến trên mạng như lưu lượng ra/vào một Server, Switch, … hay hoạt động của CPU, bộ nhớ, … giúp người quản trị mạng có những phân tích để đưa ra ứng phó kịp thời
Hệ thống phát hiện xâm nhập dựa vào những mẫu dấu hiệu tấn công triển khai để giúp phát hiện nhanh các cuộc tấn công mạng Hệ thống phát hiện này kết hợp với tường lửa
sẽ chống lại các cuộc tấn công xâm nhập
Tuy nhiên, các dấu hiệu của các kiểu tấn công ngày một tinh vi phức tạp thì hệ thống phát hiện phải được thường xuyên cập nhật những dấu hiệu mới Để có thể phát hiện nhanh chóng các bất thường trên mạng, người quản trị mạng còn có thể dựa vào những
đồ thị trực quan về lưu lượng ra vào hệ thống để có những phản ứng kịp thời
Hệ thống báo động cũng cần triển khai để thông báo cho người quản trị trong một số trường hợp: Server ngưng hoạt động, một dịch vụ mạng ngưng hoạt động hay có tấn công mạng Hệ thống báo động có thể được triển khai qua nhiều hình thức để phát báo động như: bằng âm thanh (audio), qua E-mail hay qua tin nhắn SMS đến người quản trị mạng
Trang 19Chương 2 HỆ THỐNG PHÁT HIỆN & PHÒNG CHỐNG
Năm 1997 IDS mới được biết đến rộng rãi và thực sự đem lại lợi nhuận với sự đi đầu của công ty ISS
Hiện tại, các thống kê cho thấy IDS/IPS đang là một trong các công nghệ an ninh được
sử dụng nhiều nhất và vẫn còn phát triển mạnh
2.1.2 Vai trò của hệ thống phát hiện và phòng chống xâm nhập mạng
Hệ thống phát hiện xâm nhập dùng để lắng nghe, dò tìm các gói tin qua hệ thống mạng
để phát hiện những dấu hiệu bất thường trong mạng Thông thường những dấu hiệu bất thường là những dấu hiệu của những cuộc tấn công xâm nhập mạng IDS sẽ phát những tín hiệu cảnh báo tới người quản trị mạng
Hệ thống phòng chống xâm nhập (Intrusion Prevention System – IPS) là một phần mềm hoặc một thiết bị chuyên dụng có khả năng phát hiện xâm nhập và có thể ngăn chặn các nguy cơ mạng bị tấn công IDS và IPS có rất nhiều điểm chung, do đó hệ thống IDS và IPS có thể được gọi chung là hệ thống phát hiện và phòng chống xâm nhập (IDS/IPS)
Trang 20Hệ thống IPS là một kỹ thuật an ninh mạng, kết hợp các ưu điểm của kỹ thuật tường lửa (firewall) với hệ thống phát hiện xâm nhập, có khả năng phát hiện sự xâm nhập, các cuộc tấn công và tự động ngăn chặn các cuộc tấn công đó Hệ thống IDS/IPS thường được đặt ở phần biên mạng để bảo vệ tất cả các thiết bị trong mạng
2.2 Đặc điểm của hệ thống IDS/IPS
2.2.1 Kiến trúc của hệ thống phát hiện xâm nhập
Hình 2.1 Hệ thống phát hiện xâm nhập [3]
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)
Thành phần phân tích gói tin (Dectection)
Thành phần phản hồi (response)
Trong ba thành phần này thì thành phần phân tích gói tin là quan trọng nhất và trở thành bộ cảm biến đóng vai trò ra quyết định Bộ cảm biến được tích hợp với thành phần thu thập dữ liệu Cách thu thập này được xác định bởi chính sách tạo sự kiện để định nghĩa chế độ lọc thông tin sự kiện Bộ tạo sự kiện cung cấp một số chính sách thích hợp cho các sự kiện, có thể là một bản ghi các sự kiện của hệ thống Số chính
Trang 21sách này cùng với thông tin chính sách có thể được lưu trong hệ thống được bảo vệ hoặc bên ngoài
Hình 2.2 Kiến trúc của hệ thống IDS [3]
Vai trò của bộ cảm biến là dùng để lọc thông tin và loại bỏ dữ liệu không tương thích thu được từ các sự kiện liên quan với hệ thống bảo vệ, vì vậy có thể phát hiện được các hành động nghi ngờ Bộ phân tích sử dụng cơ sở dữ liệu chính sách phát hiện cho mục này Ngoài ra còn có các thành phần: dấu hiệu tấn công, profile hành vi thông thường, các tham số cần thiết như các ngưỡng (threshold), Thêm vào đó, cơ sở dữ liệu giữ các tham số cấu hình gồm có các chế độ truyền thông với module đáp trả Bộ cảm biến cũng có cơ sở dữ liệu của riêng nó gồm dữ liệu lưu về các dấu hiệu xâm nhập phức tạp tiềm ẩn được tạo ra từ nhiều hành động khác nhau
IDS có thể được lắp đặt tập trung (như được tích hợp vào trong tường lửa) hoặc phân tán Một IDS phân tán gồm nhiều IDS khác nhau trên một mạng lớn, tất cả chúng có thể truyền thông với nhau, gọi là hệ thống IDS đa tác nhân
Giải pháp kiến trúc đa tác nhân được đưa ra năm 1994 Giải pháp này sử dụng các tác nhân để kiểm tra một khía cạnh nào đó về các hành vi hệ thống ở một thời điểm nào
Trang 22đó Ví dụ như một tác nhân có thể cho biết một số thông tin không bình thường của các phiên Telnet bên trong hệ thống nó kiểm tra – giám sát
Tác nhân có khả năng đưa ra một cảnh báo khi phát hiện một sự kiện khả nghi Các tác nhân có thể được thay đổi bên trong các hệ thống khác nhau Một phần trong các tác nhân hệ thống có thể có các bộ phận thu phát để kiểm tra tất cả các hành động được kiểm soát bởi các tác nhân ở một thiết bị cụ thể nào đó Các bộ thu nhận luôn luôn gửi các kết quả hoạt động của chúng đến một bộ kiểm tra duy nhất Các bộ kiểm tra nhận thông tin từ các mạng, chúng có thể tương quan với thông tin phân tán Thêm vào đó một số bộ lọc có thể được đưa ra để chọn lọc và thu thập dữ liệu
Hình 2.3 Sự kết hợp của các bộ lọc gói tin [3]
Phân loại IDS
Có hai phương pháp khác nhau trong việc phân tích các sự kiện để phát hiện các vụ tấn công: phát hiện dựa trên các dấu hiệu và phát hiện sự bất thường
Phát hiện dựa trên dấu hiệu: Phương pháp này nhận dạng các sự kiện hoặc tập
hợp các sự kiện phù hợp với một mẫu các sự kiện đã được định nghĩa là tấn công
Trang 23 Phát hiện sự bất thường: công cụ này thiết lập một hiện trạng các hoạt động
bình thường và sau đó duy trì một hiện trạng hiện hành cho một hệ thống Khi hai yếu tố này xuất hiện sự khác biệt, nghĩa là đã có sự xâm nhập
Các hệ thống IDS khác nhau đều dựa vào phát hiện các xâm nhập trái phép và những hành động bất thường Quá trình phát hiện có thể được mô tả bởi 3 yếu tố cơ bản nền tảng sau:
- Thu thập thông tin: kiểm tra tất cả các gói tin trên mạng
- Phân tích: phân tích tất cả các gói tin đã thu thập để cho biết hành động nào là
tấn công
- Cảnh báo: hành động cảnh báo cho sự tấn công được phân tích ở trên
2.2.2 Các cách triển khai hệ thống IDS/IPS
Có hai kiểu chính khi triển khai IDS/IPS: Promiscuous và In-line
Promiscuous
Hệ thống IDS/IPS đứng song song với tường lửa (firewall) Như vậy luồng dữ liệu vào
hệ thống mạng sẽ cùng đi qua tường lửa và IDS/IPS IDS/IPS có thể kiểm soát luồng
dữ liệu vào, phân tích và phát hiện các dấu hiệu của sự xâm nhập, tấn công Với vị trí này, IDS/IPS có thể quản lý tường lửa, chỉ dẫn nó chặn lại các hành động nghi ngờ
Trang 24Hình 2.4 IDS hoạt động ở chế độ promiscuous
In-line
Vị trí IDS/IPS nằm ngay trên luồng dữ liệu đi qua Điểm khác biệt chính so với chế độ
Promiscuous IDS/IPS là có thêm chức năng chặn các luồng lưu lượng blocking) Điều đó làm cho IDS/IPS có thể ngăn chặn luồng lưu lượng nguy hiểm
(traffic-nhanh hơn so với ở chế độ Promiscuous IDS/IPS Tuy nhiên vị trí này sẽ làm cho tốc
độ luồng thông tin qua ra vào mạng chậm hơn
Với mục tiêu ngăn chặn các cuộc tấn công, hệ thống IDS/IPS phải hoạt động theo thời gian thực Tốc độ hoạt động của hệ thống là một yếu tố rất quan trọng Quá trình phát hiện xâm nhập phải đủ nhanh để có thể ngăn chặn các cuộc tấn công ngay lập tức
Các gói tin đi vào hệ thống mạng được sao chép 1 bản đưa vào IDS/IPS
Nếu một gói tin được so trùng với một
dấu hiệu nguy hại cho hệ thống, nó sẽ
Trang 25IDS/IPS kiểm tra các gói tin trên đường truyền
Nếu một gói tin được so trùng với một dấu hiệu nguy hại cho hệ thống, nó có thể ngăn chặn không cho đi vào mạng bên trong
Một cảnh báo được gởi
tới người quản trị mạng
Hình 2.5 IDS hoạt động ở chế độ Inline
2.2.3 Khả năng phát hiện và phòng chống xâm nhập mạng của hệ thống IDS/IPS
Hệ thống IDS/IPS hoạt động theo kiểu nhận dạng mẫu gói tin (packet) Nó sẽ so trùng từng gói tin với những mẫu tấn công mà nó có, nếu trùng khớp thì kết luận đây là loại gói tin tấn công và hệ thống sẽ phát cảnh báo hoặc gởi tín hiệu tới tường lửa để ngăn cản gói tin đi vào mạng bên trong Hiện nay đa số IDS/IPS hoạt động theo kiểu này Tuy nhiên nếu kiểu tấn công mới thì IDS/IPS không nhận biết được, nên phải cập nhật các luật (dấu hiệu tấn công) thường xuyên giống như cập nhật virus
Nếu hoạt động theo kiểu thông minh thì IDS theo dõi mạng xem có hiện tượng bất thường hay không và phản ứng lại Lợi điểm là có thể nhận biết các kiểu tấn công mới, nhưng nhiều trường hợp bị báo động nhầm có nghĩa là không phải trường hợp tấn công
mà vẫn gây báo động
Trang 26Như vậy, sau khi hệ thống IDS đã phát hiện ra tấn công, xâm nhập thì có thể thực hiện các hành động sau:
Gửi tín hiệu đến tường lửa để ngăn chặn tấn công Trường hợp này gọi là hệ thống phát hiện và phòng chống xâm nhập (IDS/IPS)
Chỉ đưa ra cảnh báo cho người quản trị mạng: hệ thống phát hiện xâm nhập trái phép (IDS)
Để phòng chống tấn công xâm nhập, có thể kết hợp hệ thống phát hiện với hệ thống tường lửa để ngăn cản những gói tin tấn công đi vào mạng bên trong Một trong những
hệ thống tường lửa được sử dụng phổ biến trong các phần mềm nguồn mở là Iptables
Có nhiều công cụ nguồn mở cho phép chuyển đổi các luật trong Snort thành các luật
trong Iptables như Snort-inline, SnortSam, Fwsnort,… Trong đề tài này, tác giả sử
dụng Fwsnort để cài đặt thực nghiệm
2.3 Hệ thống giám sát lưu lượng, thiết bị và dịch vụ
Bên cạnh việc theo dõi các gói tin để phát hiện những dấu hiệu tấn công mạng đã tìm hiểu ở các phần trên thì việc giám sát những hoạt động khác của hệ thống mạng như giám sát các luồng lưu lượng mạng, hoạt động của CPU, bộ nhớ, trạng thái hoạt động các máy chủ, theo dõi trạng thái hoạt động của các dịch vụ mạng trên nó và trạng thái của các thiết bị mạng (Router, Switch, )… là một trong những yêu cầu đặt ra để giám sát hệ thống một cách hiệu quả hơn Điều này giúp cho người quản trị mạng có thể nắm bắt được tình trạng hoạt động của toàn bộ hệ thống mạng một cách nhanh chóng và tiện lợi
Một hệ thống IDS/IPS như đã tìm hiểu ở trên có thể phát hiện và phòng chống các cuộc tấn công xâm nhập mạng dựa vào các dấu hiệu tấn công được lưu trữ và cập nhập thường xuyên Tuy nhiên cũng không tránh khỏi những trường hợp có những dạng tấn
Trang 27công mới mà những dấu hiệu chưa được biết tới, tập luật của hệ thống phát hiện chưa được cập nhật
Với sự kết hợp hệ thống giám sát trực quan, những hoạt động của những thiết bị trong
hệ thống được theo dõi và hiển thị thời gian thực các hoạt động của hệ thống một cách trực quan thông qua những đồ thị về lưu lượng mạng, trạng thái hoạt động của CPU, RAM, dịch vụ mạng, … cho phép người quản trị có những phân tích để đưa ra các giải pháp phù hợp tránh những nguy hại cho hệ thống mạng
Ngoài ra, người quản trị có thể thiết lập những ngưỡng cảnh báo kết hợp với hệ thống báo động để người quản trị nhanh chóng có được những thông tin về những cuộc tấn công hay phát hiện những bất thường trong hệ thống Những bất thường ở đây như là một dịch vụ mạng ngưng hoạt động, máy chủ ngưng hoạt động, hay CPU hoạt động quá tải (đặt ngưỡng cảnh báo), …
Trong đề tài này, tác giả đề xuất chức năng giám sát lưu lượng, host và service với hai phần mềm nguồn mở là Cacti và Nagios kết hợp với hệ thống phát hiện và phòng chống xâm nhập mạng tạo nên một hệ thống giám sát giúp người quản trị mạng trong việc giám sát hệ thống mạng hiệu quả hơn
2.4 Hệ thống báo động
Một trong những thành phần quan trọng trong việc theo dõi tình trạng hoạt động của hệ thống đối với người quản trị mạng là có thể phát hiện các sự cố hệ thống một cách nhanh chóng Đây cũng là một yêu cầu lớn đặt ra cho hệ thống phát hiện và phòng chống xâm nhập
Như đã đề cập ở phần trên, hệ thống báo động là một thành phần quan trọng trong hệ thống giám sát mạng, nó kết hợp với hệ thống dò tìm xâm nhập và hệ thống giám sát trạng thái hoạt động của các thiết bị (host) và dịch vụ (service) phát ra những tín hiệu cảnh báo đến người quản trị khi hệ thống có sự cố xâm nhập hay sự cố bất thường khác
Trang 28xảy ra… Những thông tin từ hệ thống phát hiện xâm nhập hay hệ thống phát hiện những bất thường được chuyển tới hệ thống báo động để phát cảnh báo tới người quản trị
Trong đề tài này, tác giả sẽ trình bày và cài đặt trong mô hình thực nghiệm bao gồm:
hệ thống báo động bằng giao diện Web, âm thanh (audio), qua e-mail và gửi tin nhắn SMS qua điện thoại di động
Đặc biệt trong đề tài này, phần báo động SMS sử dụng giải pháp GSM/GPRS gateway
Nó có khả năng báo động thẳng đến điện thoại di động mà không thông qua bước trung gian nào Có nghĩa là trong trường hợp kết nối Internet bị ngắt thì hệ thống vẫn làm việc bình thường Thành phần kết nối với thiết bị SMS Gateway sẽ sử dụng là phần mềm nguồn mở Gnokii SMS kết hợp với thiết bị phần cứng GSM/GPRS modem để thực nghiệm
Hình 2.6 Các thiết bị dùng trong báo động SMS
Hoạt động báo động SMS trong hệ thống giám sát mạng diễn ra như sau: Hệ thống
giám sát mạng sẽ theo dõi tình trạng hoạt động của toàn hệ thống và phát hiện những bất thường Các dấu hiệu bất thường sẽ được gởi đếm GSM/GPRS modem và phát cảnh báo SMS tới người quản trị mạng
2.5 SNMP và hệ thống giám sát mạng
Để có thông tin cho việc giám sát trạng thái hoạt động của các thiết bị và dịch vụ mạng Trong hệ thống giám sát sử dụng giao thức SNMP (Simple Network
Trang 29SNMP là một giao thức chính được sử dụng cho mục đích theo dõi tình trạng hoạt động của các thiết bị và dịch vụ trong hệ thống mạng SNMP làm nhiệm vụ thu thập thông tin từ các thiết bị mạng (Router, Switch, Server…) cần giám sát và gửi về cho chương trình giám sát để phân tích và sử dụng để hiển thị ra giao diện quản trị các thông tin cần thiết theo mục đích của chương trình giám sát
Trong SNMP có 3 vấn đề cần quan tâm: Manager, Agent và MIB (Management Information Base)
-MIB: là cơ sở dữ liệu dùng phục vụ cho Manager và Agent
-Manager: nằm trên máy chủ giám sát hệ thống mạng
-Thành phần Agent: là một chương trình nằm trên các thiết bị cần giám sát, quản lý Agent có thể là một chương trình riêng biệt (ví dụ như daemon trên Unix) hay được tích hợp vào Hệ điều hành, ví dụ như trong IOS của các thiết bị Cisco Nhiệm vụ của các Agent là thông báo các thông tin đến cho thành phần điều khiển được cấu hình nằm trên máy chủ giám sát
SNMP sử dụng UDP (User Datagram Protocol) như là giao thức truyền tải thông tin giữa các Manager và Agent Việc sử dụng UDP, thay vì TCP, bởi vì UDP là phương thức truyền mà trong đó hai đầu thông tin không cần thiết lập kết nối trước khi dữ liệu được trao đổi (connectionless), thuộc tính này phù hợp trong điều kiện mạng gặp trục trặc, hư hỏng
Trang 30Chương 3 CÁC CÔNG CỤ NGUỒN MỞ HỖ TRỢ PHÁT HIỆN
& PHÒNG CHỐNG XÂM NHẬP MẠNG
Trong chương này sẽ trình bày một số công cụ nguồn mở hỗ trợ trong việc xây dựng
mô hình đề xuất theo dõi tình hình hoạt động của hệ thống (thiết bị và dịch vụ), phát
hiện và phòng chống xâm nhập: bao gồm các công cụ chính là Snort, Fwsnort, Cacti,
Nagios và Gnokii
Với những công cụ nguồn mở này được tích hợp vào chung một hệ thống, đồng thời kết hợp với việc phát triển hệ thống báo động đa dạng, linh hoạt bằng âm thanh (audio), qua giao diện Web, Email và SMS tạo ra một công cụ tích hợp làm nhiệm vụ giám sát hệ thống giúp phát hiện và cảnh báo những biến cố cho hệ thống mạng một cách trực quan, thời gian thực, nhanh chóng và tiện lợi phục vụ hiệu quả cho công việc quản trị hệ thống mạng
3.1 Giới thiệu
Có rất nhiều công cụ cho phép người quản trị mạng dò tìm những lổ hổng trong hệ thống mạng của mình Điển hình có các phần mềm: Nmap, Metaexploit, SolarWinds, Blue Ports Scan, Super Scan, … Những công cụ này rất cần thiết để kiểm tra xem trong
hệ thống mạng chúng ta có những lỗ hổng bảo mật nào hay không để kịp thời khắc phục
Ở cấp độ cao hơn là tiến hành xây dựng một giải pháp toàn diện có tính khả thi cao nhằm giúp nhanh chóng cho các nhà quản trị mạng phát hiện ra những cuộc tấn công xâm nhập mạng, những sự cố trong quá trình hoạt động của hệ thống như một dịch vụ mạng ngưng hoạt động hay một thiết bị mạng (Router, Switch, Server,…) ngưng hoạt động, hay theo dõi luồng lưu lượng qua các kết nối giữa các thiết bị, hoạt động của CPU, RAM, …trên một số thiết bị cần giám sát
Trang 31Trong đề tài này, tác giả đề xuất phát triển một hệ thống giám sát mạng có tính trực quan và tiện lợi, giúp người quản trị mạng nắm bắt hoạt động của hệ thống mọi lúc, mọi nơi, … Mô hình kết hợp mà tác giả đề xuất là kết hợp của các phần mềm nguồn mở: Snort, Fwsnort, Cacti, Nagios và hệ thống báo động qua SMS - Gnokii
Snort: phát hiện các xâm nhập mạng dựa vào tập luật được cập nhật thường
xuyên
Fwsnort: chuyển đổi các luật trong Snort thành các luật trong Iptables để phòng
chống tấn công mạng
Cacti: giám sát lưu lượng (traffic) trong từng thiết bị và giữa các thiết bị trong
hệ thống mạng thể hiện qua các đồ thị: theo dõi các lưu lượng ra vào các cổng giao tiếp, hoạt động của CPU, bộ nhớ,… của các thiết bị mạng quan trọng như Core Switch, Router, Firewall, Server…Điều này giúp các nhà quản trị mạng có những phân tích để phát hiện những bất thường trong hệ thống
Nagios: giám sát thiết bị trạng thái hoạt động của các thiết bị và các dịch vụ
mạng trong hệ thống
Gnokii: hỗ trợ trong việc giao tiếp GSM/GPRS modem và hệ thống giám sát từ
Snort, Cacti, Nagios để gửi cảnh báo bằng tin nhắn SMS đến điện thoại di động của người quản trị mạng
Phần tiếp theo sẽ trình bày một số đặc điểm của Snort, Fwsnort, Cacti, Nagios và Gnokii trong việc giám sát mạng
3.2 Đặc điểm của Snort
Snort là một phần mềm thuộc dạng IDS/IPS mã nguồn mở cho phép giám sát, phát hiện những dấu hiện tấn công, xâm nhập mạng Snort được nhiều tổ chức phát triển và biến thành sản phẩm thương mại như Sourcefire, Astaro, …
Trang 32Snort bao gồm các thành phần chính [4]:
Bộ phận giải mã gói - Packet Decoder
Bộ tiền xử lý - Preprocessor
Bộ phận phát hiện - Detection Engine
Hệ thống ghi log và cảnh báo - Logging và Alerting System
Module xuất kết quả - Output Modules
Hình 3.1 Các thành phần của Snort [4]
Bộ phận giải mã gói - Packet Decoder
Thu thập các gói tin từ các cổng giao tiếp (interface) và chuẩn bị cho việc gói tin được
xử lý trước hoặc gửi cho bộ phận phát hiện
Trang 33Bộ phận tiền xử lý cũng được dùng để khử phân đoạn Khi một mẫu tin lớn được truyền đến một host, gói thường được chia nhỏ ra Hệ thống nhận có khả năng ráp lại
từ các gói nhỏ Trên hệ thống phát hiện xâm nhập, trước khi đối chiếu luật hoặc tìm dấu hiệu các gói tin cần được nối lại Bộ phận tiền xử lý trong Snort có thể tái hợp các gói tin, giải mã HTTP ráp lại các dòng TCP,…Những chức năng này rất quan trọng trong hệ thống phát hiện xâm nhập
Bộ phận phát hiện - Detection Engine
Đây là phần quan trọng nhất trong Snort Trách nhiệm của nó là phát hiện có sự xâm nhập tồn tại trong gói tin hay không Bộ phận phát hiện sử dụng các luật của Snort cho mục đích này Nếu một gói tin giống với bất kỳ một luật nào, một hành động tương ứng sẽ được thực hiện, cuộc tấn công được ghi lại hoặc tạo ra cảnh báo
Đây là bộ phận then chốt về thời gian thực thi của Snort Lưu lượng trên bộ phận phát hiện phụ thuộc vào các yếu tố sau:
- Số lượng các luật
- Sức mạnh của máy mà Snort đang chạy
- Tốc độ của bus được sử dụng
- Lưu lượng trên mạng
Trang 34 Hệ thống ghi log và cảnh báo - Logging và Alerting System
Phụ thuộc cái mà bộ phận phát hiện tìm thấy trong gói tin, gói tin có thể được sử dụng
để ghi lại các hành vi hoặc tạo ra các cảnh báo Các thông tin ghi lại được giữ trong các tập tin text đơn giản hoặc các dạng khác như trong cơ sở dữ liệu MySQL,
Module xuất kết quả - Output Modules
Module xuất kết quả có thể hoạt động theo nhiều cách phụ thuộc vào việc chúng ta muốn lưu các output được tạo ra bằng hệ thống ghi và tạo cảnh báo như thế nào Phụ thuộc vào việc cấu hình, output module có thể thực hiện những hành động sau:
- Ghi dữ liệu vào file log
- Gởi SNMP traps
- Gởi các thông báo đến Syslog
- Ghi log vào CSDL như MySQL hoặc Oracle
Một số công cụ có thể được phát triển để gởi cảnh báo từ output của Snort như E-mail, SMS hoặc xem cảnh báo qua giao diện Web
3.3 Phân tích các vấn đề của Snort và khả năng triển khai
3.3.1 Lợi ích của Snort
Snort mang lại nhiều lợi ích phù hợp cho nhiều công ty vì nhiều lý do:
Trang 35 Tính uyển chuyển
Có thể dễ dàng thiết lập những luật (rules) cho Snort phù hợp với thực trạng của công
ty Có thể dùng các công cụ để quản lý tập trung như ACID, BASE hay SnortCenter Nhiều Scripts có thể được tích hợp để mở rộng chức năng Snort có thể tạo những danh sách điều khiển truy cập (Access Control List) tự động Trong phạm vi đề tài này, tác giả đi sâu về sự kết hợp Snort với BASE sau đó tích hợp vào giao diện quản lý chung của Cacti và phát báo động qua giao diện BASE, Email và SMS Ngoài ra còn kết hợp Snort với phần mềm nguồn mở Fwsnort để chống lại các cuộc tấn công xâm nhập Các luật trong Snort được Fwsnort chuyển thành các luật trong Iptables để ngăn chặn một
số dạng tấn công
Được hỗ trợ bởi cộng đồng mã nguồn mở
Snort là sản phẩm nguồn mở nên được hỗ trợ rất nhiều bởi cộng đồng người sử dụng
mã nguồn mở
3.3.2 Đánh giá tập luật của Snort
Tập luật trên Snort được cập nhật thường xuyên nên khả năng phát hiện các dấu hiệu tấn công là khá tốt Người quản trị mạng cũng có thể tự bổ sung những luật mới vào tập luật đã có sẵn Vì vậy, tập luật của Snort có tính mở Do đó Snort rất phù hợp cho việc nghiên cứu và phát triển Có rất nhiều sản phẩm thương mại trên thị trường phát triển
từ Snort: Sourcefire, O2Security, Astaro, …
3.4 Fwsnort chuyển đổi tập luật từ Snort sang Iptables
Fwsnort hay cũng được gọi là Firewall Snort là phần mềm nguồn mở có chức năng
chuyển các luật trong Snort thành các luật trong Iptables Sự kết hợp này giúp cho những xâm nhập được Snort phát hiện sẽ được ngăn chặn bởi Iptables tạo thành Hệ thống phát hiện và phòng chống xâm nhập (IDS/IPS)
Trang 363.5 Hệ thống giám sát trạng thái hoạt động các thiết bị và dịch vụ - Nagios
Hình 3.2 Nagios giám sát thiết bị và dịch vụ [6]
Nagios là một phần mềm mã nguồn mở hỗ trợ trong việc giám sát hoạt động của các thiết bị và các dịch vụ trong mạng Nagios giúp giám sát hoạt động một số thiết bị trung tâm trong mạng như Server, Switch, Router, Đồng thời kết hợp với bộ phận phát cảnh báo qua SMS, Audio phát cảnh báo trong trường hợp một thiết bị ngưng hoạt động hoặc một dịch vụ mạng ngưng hoạt động
Nagios giám sát các thiết bị mạng thông qua các giao thức ICMP, SNMP, … để theo dõi trạng thái hoạt động của các thiết bị Đồng thời, Nagios còn cho phép thiết lập cơ chế giám sát hoạt động của các dịch vụ mạng Các dịch vụ phổ biến được giám sát như: HTTP, FTP, SMTP, POP3, …
Để giám sát các host Windows, chúng ta có thể sử dụng trực tiếp thông qua giao thức SNMP hoặc sử dụng phần mềm NSClient++ (tích hợp SNMP) để thu thập thông tin hơn từ máy Windows
Trang 37Hình 3.3 Nagios theo dõi các dịch vụ trên Windows qua NSClient [6]
Cũng tương tự như vậy, chúng ta có thể sử dụng SNMP để giám sát các máy Linux qua việc cài đặt gói NRPE (tích hợp SNMP) để giám sát host và các dịch vụ trên máy Linux
Hình 3.4 Nagios giám sát các dịch vụ trên máy Unix/Linux qua NRPE [8]
Bên cạnh giám sát các máy chủ Windows, Linux,… Nagios còn giám sát thiết bị mạng khác như Printer, Router, Switch:
Hình 3.5 Nagios giám sát máy in [6]
Trang 38Giám sát Router và Switch:
Hình 3.6 Nagios giám sát Router, Switch [7]
Nagios có thể giám sát một số dịch vụ mạng phổ biến: HTTP, FTP, SMTP, POP3,…
Trang 39Nagios vẽ sơ đồ mạng và hiển thị trạng thái hoạt động của các host
Hình 3.8 Nagios vẽ sơ đồ trạng thái các host trên mạng Vai trò của Nagios tích hợp vào trong Cacti ngoài khả năng giám sát chi tiết các host và dịch vụ trong hệ thống, còn được phát triển gửi cảnh báo từ đến e-mail và SMS thông tin hệ thống SMS gateway
Hình 3.9 Nagios gửi cảnh báo qua e-mail và SMS Các tham số lấy trạng thái hệ thống được sử dụng làm đối số (các macro) trong việc gửi cảnh báo [7]:
– Tham số cho các dịch vụ: $SERVICESTATE$, $SERVICESTATETYPE$, SERVICEATTEMPT$
– Tham số cho host: $HOSTSTATE$, $HOSTSTATETYPE$,
$HOSTSTATEATTEMP$
Trang 403.6 Hệ thống giám sát lưu lượng - Cacti
Cacti là một phần mểm nguồn mở hỗ trợ trong việc giám sát các lưu lượng mạng Cacti trong hệ thống được dùng để giám sát lưu lượng qua các Switch trung tâm, Router và các Server và lưu lượng kết nối giữa các thiết bị trong hệ thống mạng Hoạt động của Cacti được thể hiện như sau:
Hình 3.10 Sơ đồ hoạt động của Cacti
- Thu thập dữ liệu: Cacti thu thập dữ liệu thông qua poller Poller là một ứng dụng
hoạt động theo những khoảng thời gian xác định Trong Unix/Linux thì Poller được thiết lập từ chương trình lập lịch crontab
Cacti thể hiện lưu lượng qua các đồ thị trực quan, thời gian thực Điều này giúp cho người quản trị theo dõi được tình trạng hoạt động của các thiết bị và dịch vụ trong hệ thống và phát hiện những bất thường xảy ra Những bất thường này có thể là những dấu hiệu của tấn công xâm nhập hoặc sự quá tải của một số thiết bị mạng trong hệ thống
Cacti sử dụng giao thức SNMP để thu thập thông tin từ các thiết bị, lưu trữ thông tin và
vẽ hình trên các đồ thị.[5]