Khóa luận Tìm hiểu về hệ thống ids. triễn khai ứng dụng trên phần mềm snort

IDS Là hệ thống giám sát lưu lượng trên hệ thống mạng nhằm phát hiện xâm nhập trái phép từ đó thông báo đến người quản trị. Trong một vài trường hợp IDS có thể hoạt động một cách tích cực như chặn người dùng, chặn nguồn IP mà nói nghi ngờ. Trong WIDS, môi trường truyền là không khí, các thiết bị có hỗ trợ chuẩn 802.11 trong phạm vi phủ sóng đều có thể truy cập vào mạng. Do đó cần có sự giám sát cả bên trong và bên ngoài hệ thống mạng.

ppt19 trang | Chia sẻ: lvbuiluyen | Lượt xem: 3047 | Lượt tải: 3download
Bạn đang xem nội dung tài liệu Khóa luận Tìm hiểu về hệ thống ids. triễn khai ứng dụng trên phần mềm snort, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
TÌM HIỂU VỀ HỆ THỐNG IDS. TRIỄN KHAI ỨNG DỤNG TRÊN PHẦN MỀM SNORT GVHD : SVTH : MSSV : * * TRƯỜNG ĐẠI HỌC DUY TÂN KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO KHÓA LUẬN TỐT NGHIỆP  Néi Dung * * * * CÀI ĐẶT VÀ CẤU HÌNH SNORT NGHIÊN CỨU ƯNG DỤNG SNORT TRONG IDS TỔNG QUAN VỀ IDS & WIDS NGHIÊN CỨU ỨNG DỤNG SNORT TRONG IDS 3.CÀI ĐẶT VÀ CẤU HÌNH SNORT TRÊN WinServer2X3 1.Tổng quan về IDS * * 1.1 Định nghĩa IDS Là hệ thống giám sát lưu lượng trên hệ thống mạng nhằm phát hiện xâm nhập trái phép từ đó thông báo đến người quản trị. Trong một vài trường hợp IDS có thể hoạt động một cách tích cực như chặn người dùng, chặn nguồn IP mà nói nghi ngờ. Trong WIDS, môi trường truyền là không khí, các thiết bị có hỗ trợ chuẩn 802.11 trong phạm vi phủ sóng đều có thể truy cập vào mạng. Do đó cần có sự giám sát cả bên trong và bên ngoài hệ thống mạng. 1.Tổng quan về IDS * * 1.2 Các thành phần và chức năng của IDS *Các thành phần của IDS : - Thành phần thu thập gói tin -Thành phần phát hiên gói tin -Thành phần xử lý *Chức năng: - Giám sát - Cảnh báo - Bảo vệ 1.Tổng quan về IDS * * 1.3 Phân loại IDS 1.3.1 Network Based IDS (NIDS) 1.3.2 Host Based IDS (HIDS) * * 1.Tổng quan về IDS * * 1.4 Cơ chế hoạt động của hệ thống IDS 1.4.1 Phương pháp dò dấu hiệu Hệ thống sẽ phát hiện bằng cách tìm kiếm các hành động tương ứng với các kỹ thuật đã biết đến hoặc điểm dễ bị tấn công của hệ thống 1.4.2 Phương pháp dò sự bất thường: Dựa trên việc định nghĩa và mô tả đặc điểm các hành vi có thể chấp nhận của hệ thống 1.Tổng quan về IDS 1.4.3 So sánh giữa 2 mô hình phương pháp dò dấu hiệu và phương pháp dò Sự bất thường * * 1.Tổng quan về IDS * * 1.5 Một số sản phẩm IDS/IPS Cisco IDS-4235: là hệ thống NIDS có khả năng theo dõi toàn bộ lưu thông mạng và đối sánh từng gói tin để phát hiện các dấu hiệu xâm nhập ISS Proventia A201: là sản phẩm của Internet Security Systems. Nó không chỉ là phần cứng hay phần mềm mà là cả hệ thống các thiết bị được triển khai phân tán trong mạng Intrusion Protection Appliance: lưu trữ cấu hình mạng, các dữ liệu đối sánh. Nó là một phiên bản Linux với các driver thiết bị mạng được xây dựng tối ưu Proventia Network Agent: đóng vai trò như bộ cảm biến Sensor. Bố trí tại vị trí nhạy cảm SiteProtector: là trung tâm điều khiển hệ thống proventia NFR NID-310: NFR là sản phẩm của NFR Security. Gồm nhiều bộ cảm biến thích ứng với nhiều mạng khác nhau 1.6 Tương lai của hệ thống IDS Hệ thống nhúng Ngăn chắn các dấu hiệu bất thương được phát hiện thấy 1.Tổng quan về IDS * * 2.1 Giới thiệu về Snort 2.2 Kiến trúc của Snort 2.3 Bộ luật của Snort 2.4 Chế độ ngăn chặn của Snort: Snort - Inline NGHIÊN CỨU ỨNG DỤNG SNORT TRONG IDS * * 2.1 Giới thiệu về Snort Snort là một NIDS được Martin Roesh phát triển dưới mô hình mã nguồn mở Nhiều tính năng tuyệt vời phát triển theo kiểu module Cơ sở dữ liệu luật lên đến 2930 luật Snort hỗ trợ hoạt động trên các giao thức: Ethernet, Token Ring, FDDI, Cisco HDLC, SLIP, PPP, và PE của Open BDS 2.2 Kiến trúc của một Snort Modun giải mã gói tin (Packet Decoder) Modun tiền xử lý (Preprocessors) Modun phát hiện (Detection Eng) Modun log và cảnh báo (Logging and Alerting System) Modun kết xuất thông tin (Output module) NGHIÊN CỨU ỨNG DỤNG SNORT TRONG IDS * * 2.2.1 Modun giải mã gói tin Snort sử dụng thư viện pcap để bắt mọi gói tin trên mạng lưu thông qua hệ thống một gói tin sau khi giải mã sẽ được đưa tiếp vào modun tiền xử lý 2.2.2 Modun tiền xử lý Là modun rất quan trọng để chuẩn bị gói dữ liệu đưa vào cho modun phát hiện phân tích 3 nhiệm vụ chính: Kết hợp các gói tin lại: thông tin truyền đi không đóng gói toàn bộ vào 1 gói tin. Snort sau khi nhận được phải thực hiện ghép nối để có được dữ liệu nguyên dạng Giải mã chuẩn hóa giao thức: công việc phát hiện xâm nhập dựa trên dấu hiệu nhận dạng nhiều khi bị thất bại khi kiểm tra các giao thức có dữ liệu có thể được thể hiện dưới nhiều dạng khác nhau Phát hiện các xâm nhập bất thường: đối phó với các xâm nhập không thể hoặc khó Phát hiện bằng luật thông thường 2.2.3 Modun phát hiện: Phát hiện các dấu hiệu xâm nhập. Nó sử dụng các luật được định nghĩa trước để so sánh với dữ liệu thu thập được Có khả năng tách các thành của gói tin ra và áp dụng lên từng phần NGHIÊN CỨU ỨNG DỤNG SNORT TRONG IDS * * 2.2.4: Modun log và cảnh báo: Tùy thuộc vào modun phát hiện có nhận dạng được hay không mà gói tin có thể bị ghi vào log hoặc đưa ra cảnh báo 2.2.5: Modun kết xuất thông tin Thực hiện các thao tác khác nhau tùy thuộc vào việc bạn muốn lưu kết quả kết xuất ra như thế nào. Nó có thể thực hiện nhiều công việc: Ghi log file Ghi syslog: là chuẩn lưu trữ các file log Ghi cảnh báo vào cơ sở dữ liệu Tạo file log dạng xml Cấu hình lại Router, Firewall Gửi các cảnh báo được gói trong các gói tin sử dụng giao thức SNMP Gửi các thông điệp SMB NGHIÊN CỨU ỨNG DỤNG SNORT TRONG IDS * * 2.3 Bộ luật của Snort 2.3.1 Giới thiệu Thông thường các tấn công hay xâm nhập đều để lại dấu hiệu riêng. Các thông tin này được sử dụng để tạo nên các luật của Snort Các luật có thể được áp dụng cho tất cả các phần khác nhau của gói tin Một luật có thể được sử dụng để tạo nên một thông điệp cảnh báo, log một thông điệp hay có thể bỏ qua một gói tin 2.3.2 Cấu trúc luật của Snort NGHIÊN CỨU ỨNG DỤNG SNORT TRONG IDS * * 2.3.2.1 Phần tiêu đề: - Chứa thông tin về hành động mà luật đó sẽ thực hiện - Cấu trúc chung của phần header một luật của Snort Header của một luật bao gồm các phần: Hành động của luật (Rule Action): chỉ ra các hành động mà điều kiện của luật được thỏa mãn. Một hành động được thực hiện khi tất cả các điều kiện phù hợp Pass: hành động này hướng dẫn snort bỏ qua gói tin này Log: có thể log gói tin vào file hay cơ sở dữ liệu Alert: gửi thông điệp cảnh báo khi có dấu hiệu xâm nhập Activate: tạo cảnh báo và kích hoạt một luật khác kiểm tra thêm các điều kiện Dynamic: đây là luật được gọi bởi các luật khác có hành động là Activate Protocols: Chỉ ra loại gói tin mà luật sẽ áp dụng IP ICMP TCP/UDP NGHIÊN CỨU ỨNG DỤNG SNORT TRONG IDS NGHIÊN CỨU ỨNG DỤNG SNORT TRONG IDS * * 2.3.2.1 Phần tiêu đề Address: có địa chỉ nguồn và địa chỉ đích. Địa chỉ có thể là 1 địa chỉ IP đơn hoặc địa chỉ của một mạng. Ta dùng từ any để áp luật cho tất cả các địa chỉ alert tcp any any -> 192.168.1.10/32 80 (msg: “TTL=100”; ttl: 100;) Ngăn chặn địa chỉ hay loại trừ địa chỉ: sử dụng dấu (!) ở trước sẽ chỉ cho Snort không kiểm tra gói tin đến hoặc đi từ địa chỉ đó alert icmp ![192.168.2.0/24] any -> any any (msg: “Ping with TTL=100”; ttl: 100;) Danh sách địa chỉ alert icmp ![192.168.2.0/24, 192.168.8.0/24] any -> any any (msg: “Ping with TTL=100”; ttl: 100;) Cổng (Port number): áp dụng luật cho gói tin đến hoặc đi từ 1 cổng hay phạm vi cổng alert tcp 192.168.2.0/24 23 -> any any (content: “confidential”; msg: ”Detected confidential”;) Dãy cổng hay phạm vi cổng alert udp any 1024:2048 -> any any (msg: “UDP ports”;) Hướng – direction: chỉ ra đâu là nguồn đâu là đích NGHIÊN CỨU ỨNG DỤNG SNORT TRONG IDS * * 2.3.2.2 Các tùy chọn: nằm ngay sau phần Rule Header được bao bọc trong dấu ngoặc đơn. Nếu có nhiều option thì phân cách nhau bằng dấu “,” và các tùy chọn này phải đồng thời thỏa mãn Từ khóa ack: trong TCP header thì trường ack dài 32bit chỉ ra số thứ tự tiếp theo của gói tin alert tcp any any -> 192.168.1.0/24 any (flags: A; ack: 0; msg: “TCP ping detected”) Từ khóa classtype: file classification.conf bao gồmtrong file snort.conf. Mỗi dòng có cú pháp: config classification: name, description, priority name: dùng để phân loại, được dùng với từ khóa classtype trong các luật description: mô tả về loại lớp này priority: chỉ độ ưu tiên mặc định của lớp này config classification: DoS , Denial of Service Attack, 2 Từ khóa contents: khả năng đặc tả của snort là tìm một mẫu dữ liệu bên trong. Mẫu này có thể Dưới dạng chuỗi ASCII, hoặc chuỗi nhị phân alert tcp 192.168.1.0/24 any -> ![192.168.1.0/24] any (content: “GET”; msg: “GET match”;) Từ khóa dsize: dùng để đối sánh chiều dài phần dữ liệu alert ip any any -> 192.168.1.0/24 any (dsize: > 6000; msg: “Goi tin co kich thuoc lon”;) NGHIÊN CỨU ỨNG DỤNG SNORT TRONG IDS * * 2.3.2.2 Các tùy chọn Từ khóa flags: phát hiện những bit cờ flag nào được bật alert tcp any any -> 192.168.1.0/24 any (flags: SF; msg: “SYNC-FIN packet detected”;) Từ khóa fragbits: phần IP header của gói tin chứa 3bit dùng để chống phân mảnh Reserved Bit (RB): dùng để dành cho tương lai Don’t Fragment Bit (DF): bit này được thiết lập thì gói tin đó không bị phân mảnh More Fragments Bit (MF): bit này được thiết lập thì các phần khác của gói tin đang trên đường đi mà chưa tới đích. Nếu bit này không được thiết lập thì có nghĩa đây là phần cuối cùng của gói tin(gói tin duy nhất) alert icmp any any -> 192.168.1.0/24 any (fragbits: D; msg: “Dont Fragment bit set”;) * * 2.4 Chế độ ngăn chặn của Snort: 2.4.1 Sử dụng Snort ở Sniff packet mode Chúng ta sẽ sử dụng Snort để Sniff packet. Để tiến hành Sniffing, chúng ta cần để Card mạng ở chế độ Promiscuous, chế độ này cho phép card mạng có thể nghe thấy tất cả các gói tin đang lưu chuyển trên phân mạng của nó. 2.4.2 Sử dụng Snort ở NIDS mode NGHIÊN CỨU ỨNG DỤNG SNORT TRONG IDS 3.CÀI ĐẶT VÀ CẤU HÌNH SNORT TRÊN WinServer2X3 * * Mời thầy giáo và các bạn cùng theo dõi phần demo