Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 38 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
38
Dung lượng
1,57 MB
Nội dung
MƠN AN TỒN MẠNG BÁO CÁO ĐỀ TÀI 1: NGHIÊN CỨU PHÒNG CHỐNG THÂM NHẬP TRÁI PHÉP IDS, IPS (TRÊN LINUX) Giáo Viên Hướng Dẫn: THẦY VÕ ĐỖ THẮNG Sinh Viên Thực Hiện: 0512176 - NGUYỄN ĐĂNG KHOA 0512207 - PHAN HUỲNH LUÂN 0512231 - LÊ BẢO NGHI 0512281 - NGUYỄN THANH QUÂN 0512300 - LÊ GIANG THANH THÀNH PHỐ HỒ CHÍ MINH 2009-Trang Nghiên cứu phịng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mục lục: IDS 1.1 Giới thiệu đời 1.2 Khái niệm 1.3 Chức 1.4 Phân biệt IDS 1.5 Các loại công 1.6 Phân Loại IDS 1.6.1 Hệ thống phát xâm nhập Host-Based( Host-based IDS) 1.6.2 Hệ thống phát xâm nhập Network-Based( Network-based IDS) 1.6.3 So sánh HIDS NIDS 11 1.7 Nhiệm Vụ Của IDS 13 1.8 Kiến trúc IDS 15 1.9 Kỹ thuật xử lý liệu IDS 16 IPS 18 2.1 Khái niệm 18 2.2 Phát ngăn ngừa xâm nhập 19 2.2.1 Phát xâm nhập 19 2.2.2 Ngăn ngừa xâm nhập 19 2.3 Yêu cầu tương lai IPS 20 So sánh IDS IPS 21 Snort 22 4.1 Giới Thiệu 22 4.2 Mô hình hoạt động 22 4.2.1 Network Intrusion Detection Systems (NIDS) 22 4.2.2 Host Intrusion Detection Systems (HIDS) 23 4.3 Cấu trúc Snort 24 4.3.1 Decoder 24 4.3.2 Preprocessor (Input Plugin) 24 4.3.3 Detection Engine 24 4.3.4 Logging Alert: 25 4.3.5 Output Plugin 25 4.4 Cấu Trúc Rule 25 4.4.1 Rule Header 25 4.4.2 Rule option 26 4.5 Cài Đặt 29 4.5.1 Cài đặt snort 29 4.5.2 Cài đặt Webmin 30 4.5.3 Cài đặt adodb, acid, gd, phplot 32 4.6 Cấu Hình Snort: 35 4.7 Hướng Dẫn Sử Dụng Snort Trong Linux 36 4.7.1 Sniffer mode 36 4.7.2 Packet logger mode 37 4.7.3 Network Intrusion Detection Mode (NIDS) 37 4.7.4 Inline mode 38 Trang Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com IDS 1.1 Giới thiệu đời - Cách khoảng 25 năm, khái niệm phát xâm nhập xuất qua báo James Anderson Khi người ta cần IDS với mục đích dị tìm nghiên cứu hành vi bất thường thái độ người sử dụng mạng, phát việc làm dụng đặc quyền để giám sát tài sản hệ thống mạng Các nghiên cứu hệ thống phát xâm nhập nghiên cứu thức từ năm 1983 đến năm 1988 trước sử dụng mạng máy tính khơng lực Hoa Kỳ Cho đến tận năm 1996, khái niệm IDS chưa phổ biến, số hệ thống IDS xuất phịng thí nghiệm viện nghiên cứu Tuy nhiên thời gian này, số công nghệ IDS bắt đầu phát triển dựa bùng nổ công nghệ thông tin Đến năm 1997 IDS biết đến rộng rãi thực đem lại lợi nhuận với đầu cơng ty ISS, năm sau đó, Cisco nhận tầm quan trọng IDS mua lại công ty cung cấp giải pháp IDS tên Wheel - Hiện tại, thống kê cho thấy IDS/IPS công nghệ an ninh sử dụng nhiều phát triển - Tại Gartner nói: IDS is dead? Vào năm 2003, Gartner- công ty hàng đầu lĩnh vực nghiên cứu phân tích thị trường cơng nghệ thơng tin tồn cầuđã đưa dự đốn gây chấn động lĩnh vực an tồn thơng tin : “Hệ thống phát xâm nhập (IDS) khơng cịn vào năm 2005” Phát biểu xuất phát từ số kết phân tích đánh giá cho thấy hệ thống IDS đối mặt với vấn đề sau: IDS thường xuyên đưa nhiều báo động giả ( False Positives) Là gánh nặng cho quản trị an ninh hệ thống cần theo dõi liên tục (24 suốt 365 ngày năm) èm theo cảnh báo cơng quy trình xử lý an ninh vất vả Khơng có khả theo dõi luồng liệu truyền với tốc độ lớn 600 Megabit giây.Nhìn chung Gartner đưa nhận xét dựa nhiều phản ánh khách hàng sử dụng IDS quản trị vận hành hệ thống IDS khó khăn, tốn không đem lại hiệu tương xứng so với đầu tư - Sau phát biểu đưa ra, số ý kiến phản đối cho rằng, việc hệ thống IDS không đem lại hiệu mong muốn vấn đề tồn việc quản lý vận hành khơng phải chất cơng nghệ kiểm sốt phân tích gói tin IDS Cụ thể, hệ thống IDS hoạt động hiệu quả, vai trò công cụ, người quản trị quan trọng, cần phải đáp ứng tiêu chí sau: Thu thập đánh giá tương quan tất kiện an ninh phát IDS, tường lửa để tránh báo động giả Các thành phần quản trị phải tự động hoạt động phân tích Kết hợp với biện pháp ngăn chặn tự độngKết tới năm 2005, hệ sau IDS-hệ thống tự động phát ngăn chặn xâm nhập IPS- dần khắc phục mặt hạn chế IDS hoạt động hiệu nhiều so với hệ trước 1.2 Khái niệm Intrusion detection system (IDS) - Hệ thống phát xâm phạm: hệ thống phòng chống, nhằm phát hành động công vào mạng Mục đích phát ngăn ngừa hành động phá hoại vấn đề bảo mật hệ thống, hành Trang Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com động tiến trình cơng sưu tập, qt cổng Một tính hệ thống cung cấp thông tin nhận biết hành động khơng bình thường đưa báo cảnh thơng báo cho quản trị viên mạng khóa kết nối cơng Thêm vào cơng cụ IDS phân biệt cơng bên từ bên tổ chức (từ nhân viên khách hàng) cơng bên ngồi (tấn cơng từ hacker) 1.3 Chức - Chức quan trọng : giám sát - cảnh báo - bảo vệ Giám sát : lưu lượng mạng + hoạt động khả nghi Cảnh báo : báo cáo tình trạng mạng cho hệ thống + nhà quản trị Bảo vệ : Dùng thiết lập mặc định cấu hình từ nhà quản trị mà có hành động thiết thực chống lại kẻ xâm nhập phá hoại - Chức mở rộng : Phân biệt : "thù giặc ngoài" Phát : dấu hiệu bất thường dựa biết nhờ vào so sánh thông lượng mạng với baseline 1.4 Phân biệt IDS Các thiết bị bảo mật IDS: - Hệ thống đăng nhập mạng sử dụng để phát lỗ hổng vấn đề công từ chối dịch vụ (DoS) mạng Ở 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 lỗ hổng hệ điều hành, dịch vụ mạng (các quét bảo mật) - Các sản phẩm chống virus thiết kế để phát phần mềm mã nguy hiểm virus, Trojan horse, worm Mặc dù tính mặc định giống hệ thống phát xâm phạm thường cung cấp công cụ phát lỗ hổng bảo mật hiệu - Tường lửa - Các hệ thống bảo mật/mật mã, ví dụ VPN, SSL, S/MIME, Kerberos, Radius 1.5 Các loại công Các loại công phân thành hai loại sau: - Bị động (được trang bị để tăng mức truy cập làm cho thâm nhập vào hệ thống mà không cần đến đồng ý tài nguyên CNTT) - Tích cực (các kết gây thay đổi trạng thái không hợp lệ tài nguyên CNTT) Dưới dạng mối quan hệ nạn nhân người xâm phạm, công chia thành: - Bên trong, công đến từ nhân viên cơng ty, đối tác làm ăn khách hàng - Bên ngoài, cơng đến từ bên ngồi, thường thơng qua Internet Các loại cơng bị phát công cụ IDS Các loại công phân biệt: - Những cơng liên quan đến truy cập trái phép đến tài nguyên Việc bẻ khóa vi phạm truy cập Trojan horses Đánh chặn; hầu hết kết hợp với việc lấy cắp TCP/IP đánh chặn thường sử dụng chế bổ sung để thỏa hiệp hệ thống Sự giả mạo Quét cổng dịch vụ, gồm có quét ICMP (ping), UDP, TCP Trang Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - - - Lấy dấu OS từ xa, ví dụ việc kiểm tra phản ứng gói cụ thể, địa cổng, phản ứng ứng dụng chuẩn, tham số ngăn xếp IP,… Nghe gói tin mạng (một cơng thụ động khó khăn phát đơi có thể) Lấy cắp thơng tin, ví dụ trường hợp bị lộ thông tin quyền sở hữu Lạm dụng tính xác thực; loại hình cơng bên trong, ví dụ: nghi ngờ truy cập người dùng xác thực có thuộc tính kỳ lạ (đến từ địa không mong muốn) Các kết nối mạng trái phép Sử dụng tài nguyên CNTT cho mục đích riêng, ví dụ truy cập vào trang có hoạt động khơng lành mạnh Lợi dụng điểm yếu hệ thống để truy cập vào tài nguyên quyền truy cập mức cao Sự thay đổi tài nguyên trái phép (sau chiếm quyền truy cập) Xuyên tạc tính đồng nhất, ví dụ: để lấy quyền quản trị viên hệ thống Thay đổi xóa thông tin Truyền tải tạo liệu trái phép, ví dụ: lập sở liệu số thẻ tín dụng bị cắp máy tính phủ Thay đổi cấu hình trái phép hệ thống dịch vụ mạng (máy chủ) Từ chối dịch vụ (DoS) Làm lụt (Flooding) – thỏa hiệp hệ thống việc gửi số lượng lớn thông tin không giá trị để làm tắc nghẽn lưu lượng hạn chế dịch vụ Ping (Smurf) – số lượng lớn gói ICMP gửi đến địa quảng bá Gửi mail – làm lụt với hàng trăm hàng nghìn message thời điểm ngắn SYN – khởi tạo số lượng lớn yêu cầu TCP không tiến hành bắt tay hoàn toàn yêu cầu giao thức Hạn chế dịch vụ phân tán; đến từ nhiều nguồn khác Gây tổn hại hệ thống việc lợi dụng lỗ hổng Tràn đệm (ví dụ: “Ping of Death” – gửi số lượng lớn ICMP (vượt 64KB)) Tắt hệ thống từ xa Tấn công ứng dụng web; cơng lợi dụng lỗi ứng dụng gây nói phần 1.6 Phân Loại IDS Có loại IDS Network Based IDS(NIDS) Host Based IDS (HIDS): 1.6.1 Hệ thống phát xâm nhập Host-Based( Host-based IDS) - Host-based IDS kiểm tra xâm nhập cách kiểm tra thông tin host hay mức hệ điều hành Hệ thống IDS kiểm tra nhiều diện mạo host bạn, hệ thống gọi(system call), ghi kiểm toán( audit log), thơng điệp lỗi(error message),…Hình minh họa cho miệu tả host-based IDS tiêu biểu Trang Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - Mục miêu tả đặc điểm hệ thống phát Host-Based bao gồm hình ảnh triển khai kệ thống phát xâm nhập host-based - Một hệ thống phát xâm nhập host-based ( HIDS) kiểm tra file log vào host,những hệ thống tài nguyên host file Một tiện lợi hệ thống HIDS mà xem xét tiến trình hệ điều hành bảo vệ tài nguyên hệ thống đặc biệt bao gồm tập tin mà tồn host đặc biệt Một hình thức đơn giản HIPS có khả nhập vào host Tuy nhiên trở thành nhân đắc lực để chuyển đổi phân tích log Phần mềm HIPS ngày yêu cầu phần mềm Agent phải cài đặt host để xem xét hoat động thực thi chơng lại host Phần mềm Agent thực thi phân tích bảo vệ phát xâm nhập vào host Những thuận lợi: - - Trang Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - Bởi host-based IDS kiểm tra đường sau tiến tới đích(target) cơng( việc thừa nhận host đích), có thơng tin trực tiếp thành công công Với networ-based IDS, chuông báo tạo hoạt động xâm nhập biết trước, host-based IDS xác định thành cơng hay thất bại thật công Vấn đề khác mảnh vỡ ráp lại cơng Time-ToLive thay đổi(TTL) khó để nhận biết việc dụng network-based IDS Tuy nhiên, host-based IDS sử dụng cụm IP riêng host để dễ thỏa thuận với vấn đề Những khó khăn:\ Host-based IDS có vài trở ngại hay khó khăn: Giới hạn tầm nhìn mạng, Phải xử lí hệ điều hành mạng Khó khăn host-based IDS giới hạn tầm nhìn mạng với liên quan tới cơng Ví dụ,hầu hết hệ thống IDS khơng phát cú quét port chống lại host Vì vậy, khơng thể làm với host-based IDS để phát cú quét dọ thám chống lại mạng bạn Những cú quét cho thấy đồng hồ thị cho nhiều công khác chống lại mạng bạn Khó khăn khác host-based IDS phần mềm phải chạy host mạng Điều miêu tả vấn đề phát triển cho mạng hỗn tạp soan với số hệ điều hành Đơi khi, đại lí host-based IDS chọn để hỗ trợ nhiều hệ điều hành vấn đề hỗ trợ Nếu phần mềm host-based IDS bạn không hỗ trợ tất hệ điều hành mạng, mạng bạn khơng bảo vệ tồn vẹn để chống lại xâm nhập Sự khó khăn cuối host-based IDS phát cơng, phải truyền thông tin tới vài loại phương tiện quản lí trung tâm Một cơng lấy truyền thơng ngoại tuyến host Khi host khơng thể truyền thơng thơng tin đến phương tiện truyền thơng Trang Nghiên cứu phịng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com trung tâm Hơn nữa, đường mạng tới quản lí trung tâm thực cho điểm trung tâm cơng Hình minh họa cho trình bày HIPS Agent cài đặt không server truy cập công cộng, tập đồn mail server, server ứng dụng, mà cịn máy tính cá nhân người sử dụng Agent báo cáo kiện tới server điều khiển trung tâm đặt bên cạnh tập đoàn firewall 1.6.2 Hệ thống phát xâm nhập Network-Based( Network-based IDS) - Một network-based IDS kiểm tra gói liệu tới công định vị chống lại mạng IDS đánh hơi(sniff) gói mạng so sánh đường chống lại signature cho hoạt động xâm nhập - Hệ thống phát xâm nhập bảo mật Cisco( CSIDS) network-based IDS Bằng việc sử dụng signature, CSIDS quan tâm đến gói vào mạng tạo chuông báo xâm nhập phát Bạn cấu hình CSIDS để Trang Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - - - - - - không cho signature chỉnh sửa thông số signature vào làm việc cách tốt môi trường mạng bạn Hình cho thấy phát triển CSIDS Mục miêu tả đặc điểm hệ thống phát xâm nhập Network-Based (NIDSs), bao gồm hình ảnh trình NIDS Những cảm biến kết nối tới phân đoạn mạng Một sensor đơn lẻ kiểm xét nhiều host Sự phát triển mạng bảo vệ cách dễ dàng Những host dịch vụ thêm vào mạng mà khơng có sensor thêm vào Những sensor ứng dụng mạng hòa hợp vào phân tích Hệ điều hành “được làm cứng” Phần cứng thiết kế chuyên dụng cho phân tích phát xâm nhập Một NIDS bao gồm trình bày thiết bị kiểm duyệt hay “những sensor” thông qua mạng, mà bắt lại phân tích lưu lượng ngang qua mạng Những sensor phát hoạt động không cho phép nguy hiểm thời gian thực tham gia hoạt động yêu cầu Những Sensor trình bày thời điểm mạng qui định rõ mà người quản trị bảo mật để kiểm duyệt hoạt động mạng xảy ra, bất chấp vị trí đích cơng NIDS cho nhà quản trị bảo mật nhìn thấy bên việc bảo mật thời gian thật mạng bất chấp phát triển Sự phát triển mạng xảy việc thêm vào host truyền thống hay mạng mới.Những mạng truyền thống thêm vào tồn mạng bảo vệ bao bọc mà khơng có sensor Những sensor truyền thống dễ dàng triển khai để bảo vệ mạng Một vài nhân tố mà bao gồm thêm vào sensor sau : Ngoại trừ công suất lưu lượng – ví dụ , việc thêm vào phân đoạn gigabit địi hỏi sensor cơng suất cao Khả thực thi Sensor – sensor khơng thi hành việc cho traffic capacity Sự bổ sung mạng – Chính sách bảo mật hay thiết kế mạng yêu cầu sensor truyền thống để giúp việc thúc ép ranh giới bảo mật Những sensor NIDS chỉnh cách tiêu biểu cho phân tích phát xâm nhập Hệ điều hành “ trần trụi” dịch vụ mạng không cần thiết dịch vụ chủ yếu bảo mật Trang Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - Phần cứng chọn cung cấp phân tích phát xâm nhập cực đại có khả cho mạng đa dạng khác Phần cứng bao gồm phần sau : Card giao tiếp mạng (NIC) – NIDS phải có khả kết nối vào bất kí mạng Card giao tiếp mạng NIDS chungbao gồm Ethernet, Fast Ethernet, GigEthernet, Token Ring FDDI Bộ xử lí – Thiết bị phát xâm nhập địi hỏi khả CPU để thực thi phân tích giao thức phát xâm nhập làm khớp mẫu Bộ nhớ Sự phân tích phát xâm nhập nhớ chuyên sâu Bộ nhớ va chạm với khả NIDS cách trực tiếp để phát cơng cách có hiệu xác - Sự thuận lợi: Một network-based IDS có vài thuận lợi sau Hình phối cảnh tồn mạng: Bằng việc thấy đường đên đích với nhiều host, phận cảm biến nhận mạng mà cân nhắc mối liên hệ với công chống lại mạng bạn.Nếu quét nhiều host mạng bạn, thơng tin hiển nhiên sẵn sàng vào cảm biến Không phải chạy hệ điều hành mạng: Sự thuận lợi khác với networkbased IDS khơng cần chạy hệ điều hành mạng Một network-based IDS chạy số cảm bíến giới hạn tảng người quản lí Những tảng chọn để tiếp xúc với yêu cầu thực thi đặc biệt Bên cạnh việc ẩn mạng bị giám sát, dịch vụ dễ dàng làm cứng để bảo vệ chúng từ cơng chúng phục vụ mục đích đặc biệt mạng Ngay CSIDS hỗ trợ cảm biến mà gia đình 6000 chất xúc tác( xem chương 14.”catalyst 6000 IDS Module Configuration”) Những khó khăn: Một network-based IDS đối diện vài khó khăn sau Băng thơng-Bandwidth: Khó khăn lớn network-based IDS băng thông.Như ông dẫn mạng phát triển ngày lớn, khó để giám sát thành công tất đường thông qua mạng thời điểm đơn lẻ thời gian thực, mà khơng bỏ sót packet Thay bạn cần cài đặt nhiều sensor cách thông thường thơng qua mạng vị trí mà sensor giữ băng thơng đường Những mảnh vỡ ráp- Fragment reassembly: Những gói mạng có kích thước cực đại Nếu kết nối cần gửi liệu mà vượt giới hạn cực đại này, - Trang 10 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 4.3 Cấu trúc Snort Selected Output Mode (Log files, Console, Sockets, ) Output Plug-ins (Logging and Alerting System) Detection Plug-ins Alert Detection Engine Reads/Applies Preprocessors References Rules file Decoder Packet capture (LibPcap/WinPcap) Network Traffic SNORT sử dụng pcap để bắt đọc gói tin mạng Pcap dùng hàm callback ProcessPacket đọc gói tin Từ hàm gọi đến phân tích gói tin(decoder), sau q trình phân tích, tùy theo cách cấu hình để SNORT khởi động, tiếp đến thành phần Dưới mơ tả ngắn gọn thành phần snort 4.3.1 Decoder Decoder lấy packet mà Pcap hay LibCap gửi lên chuẩn bị packet cho q trình preprocessor gửi thẳng tới detection engine 4.3.2 Preprocessor (Input Plugin) Preprocessor hay Input plugin hoạt động nhiều mục đích khác - Nó nơi để chỉnh xếp lại liệu payload packet trước gửi lên cho dectection engine thực detect, tính quan trọng giúp chống lại kỹ thuật mà hacker thường dùng để qua mặt IDS - Nó thực việc detect packet - Nó thực chức defragment gói tin phần quan trọng trình detect 4.3.3 Detection Engine - Đây thành phần quan trọng trái tim snort thực q trình detect intrusion với gói tin dựa rule định nghĩa Nó tiến hành đọc rule định nghĩa file snort.conf xây dựng cấu trúc để thực việc detect Nếu trình detect phát packet trùng với rule action tương ứng tạo Trang 24 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - Q trình detect thực Header gói tin IP Header, ICMP Header, TCP Header, … payload gói tin 4.3.4 Logging Alert: Tùy vào Detection engine phát packet mà packet có thê log trước active rule tạo alert Đây nơi tạo message alert 4.3.5 Output Plugin Đây nơi xử lý output sinh thành phần Logging Alert, tùy vào việc cấu hình mà thực chức sau: - Loging gói tin vào file - Loging vào sở liệu - Tạo file output xml - Điều chỉnh lại cấu hình tường lửa - Gửi SMB message tới máy window - Ngồi cịn nhiều thao tác khác gửi email, SMNP, … 4.4 Cấu Trúc Rule Một rule Snort chia thành hai phần rule header rule options Hình: Cấu trúc rule (trích từ IDS with snort) 4.4.1 Rule Header - - Hình: Cấu trúc rule Header (trích từ IDS with snort) Action: trường xác định dạng hành động rule Detection engine so khớp với gói tin đến Dưới mô tả action định nghĩa sẵn snort Alert: tạo alert message log lại gói tin Log: log lại gói tin Dynamic: luật thực dựa vào lệnh khác active Pass: pass gói tin Drop: drop gói tin tạo alert message log lại gói tin Reject: drop gói tin log lại tạo alert message gửi thong báo nguồn SDrop: drop gói tin khơng tạo alert message khơng log lại gói tin khơng gửi lại thơng báo cho nguồn Protocol: trường định nghĩa protocol packet mà rule áp dụng, snort hộ trợ loại protocol sau: IP, ICMP, TCP, UDP Address: địa IP nguồn đích pakcet mà rule áp dụng Port: port nguồn đích packet mà rule áp dụng có giá trị protocol TCP hay UDP Direction: dùng để xác định Address Port nguồn đích, có loại direction sau: →, ←, Ví dụ: alert icmp any any → any any (msg: “Example”; sid: 1000001) Trang 25 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 4.4.2 Rule option Về rule option chia thành loại sau: Rule content, IP Option, ICMP Option, TCP Option, Meta Data Option, Miscellaneous Rule Option a Rule content: Đây option mạnh quan trọng cho phép bạn viết luật dùng để phân tích payload gói tin thơng qua giá trị binary hay ASCII, ngồi phối hợp với nhiều option khác để xác định xác malilous code nội dung packet - Content option: option cho phép bạn định nghĩa chuỗi ASCII chuỗi binary mang dấu hiệu tần công thuộc rule cụ thể tồn packet Ví dụ: alert tcp any any -> any any (content: "|0101 FFFF|/etc/passwd|E234|"; msg:"Searching for Ascii and Binary stuff!";) → luật content option vừa chứa giá trị ASCII vừa chứa giái trị binary, giá trị binary kẹp dấu || - Depth option: option cho phép rõ số lượng byte tối đa payload so khớp với content string định nghĩa content option Offset option: option định nghĩa vị trí payload bắt đầu thực so khớp với content string định nghĩa content option Ví dụ: alert tcp any any -> any 80 (content: "GET"; depth: 10; offset: msg:"Searching for Ascii with offset and depth stuff!";) → luật rõ thực so khớp chuỗi 'GET' bắt đầu vị trí thứ payload gói tin thực tìm kiếm tối đa tới vị trí thứ 10 payload - Nocase option: rõ thực so khớp content string với payload gói tin khơng cần thực phân biệt chữ hoa hay chữ thường b Ip options: Đây option thao tác nội dung header gói IP, thường dùng để xác định công vào thiết bị, hành động quét mạng, … - Equivalent Source and Destination option: option dùng để detect gói tin có soucer ip destination ip trùng Ví dụ: alert ip any any -> any any (msg:" Same Source and Destination IP Address"; sameip;) IP option: thực detect trường option header gói tin ip, cú pháp ipopts: ; Ip Options Mô tả tổng quát - Eol Sử dụng để kết thúc ip list Lsrr Ip loose soure routing Nop Sử dụng để gói tin có cờ option khơng set Rr Record route Satid Ip stream identifier Sec Ssrr Ts - Ip strict source routing Time stamp field TOS option: thực detect trường TOS header gói tin ip, cú pháp tos: “value”; Ví dụ: alert tcp $EXTERNAL any -> $CISCO any (msg:" Cisco TOS Example"; tos:!"0";) → gói có tos khác Trang 26 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TTL option: thực detect trường TTL header gói tin ip, cú pháp ttl: “value”; - ID option: thực detect trường ID header gói tin ip, cú pháp id: “value”; c Tcp options: Cũng giống ip option, tcp option dùng để detect giá trị trường header gói tin tcp Trong tcp options có options Seq, ack flag seq ack sài ta chủ ý sài option flag - seq option: dùng để cụ thể số trường seq header gói tin tcp mà ta muốn detect, cú pháp: seq: ; - ack option: dùng để cụ thể số trường ack header gói tin tcp mà ta muốn detect, cú pháp: ack: ; - flag option: dùng để cờ thiết lập không thiết lập, sử dụng kết hợp với cờ khác gói tcp mà ta muốn detect, cú pháp: flags: ; Các giá trị mà snort hộ trợ là: TCP Flags Mô tả - A Đây tùy chọn để check cờ ACK có bật F Đây tùy chọn để check cờ FIN có bật P Đây tùy chọn để check cờ PSH có bật R Đây tùy chọn để check cờ RST có bật U Đây tùy chọn để check cờ URG có bật S Đây tùy chọn để check cờ SYN có bật Đây tùy chọn để kiểm tra packet cờ bật + Dấu cộng dung để diễn tả cờ rõ kèm với cờ khác, ví dụ: A+ nghĩa luật thực gói tin có bật cờ ACK kèm thêm cờ * Dấu * dùng để cờ packet trùng với cờ luật, ví dụ *AS luật thực gói tin có cờ ACK SYN hai bật ! Dấu phủ định dùng để gói tin khơng có cờ rõ luật, ví dụ: !S nghĩa luật thực gói có cờ SYN khơng bật d ICMP options: Snort hộ trợ icmp options dùng rule options để tạo rule cho việc detect dấu hiệu công cụ thể icmp option ICMP ID, ICMP SEQUENCE, ICODE, ITYPE - ID option: trường khác với trường id gói IP, luật thực dựa giá trị rõ trường ID gói icmp, trường cịn dùng để xác định chương trình sử dụng giá trị ICMP ID tĩnh, cú pháp : icmp_id : VALUE; - Sequence option: tương tự trường ID ICMP, cú pháp icmp_seq :VALUE; - icode option: cho phép rõ giá trị trường code gói tin icmp, trường có hai cách sử dụng rõ code hợp lệ gói icmp luật Trang 27 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com thực gói tin icmp mà trường code có giá trị trùng với giá trị dịnh nghĩa, hai giá trị code khơng hợp lệ dùng để detect gói icmp có giá trị trường code khơng hợp lệ, cú pháp icode : VALUE; - itype option: tương tự trường icode, dùng để kiểm tra giá trị trường type gói icmp, cú pháp itype: VALUE; e Metadata options: Đây option hộ trợ cho việc phân loại, định danh tạo tài liệu cho alert mà snort tạo ra, option nên tạo cách cẩn thận để hộ trợ trình report cấu hình snort thuận lợi - Snort id options: options dùng để phân loại, định danh rule cụ thể, cú pháp sử dụng sid:VALUE Bảng liệt kê snort id Tầm giá trị Ý nghĩa < 100 Dùng cho mục đích lưu trữ 100 – 1000000 Dùng cho snort phân phối tập luật > 1000000 Dùng cho người dùng định nghĩa luật - Rule revision number: trường dùng trường hợp bạn thay đổi luật muốn phân biệt với lần thay đổi khác với luật gốc, cú pháp rev : REVISION_NUMBER; Ví dụ cho thấy luật có sid 10000001 rev Alert tcp any any -> any any (sid: 10000001; rev:3; msg: “sid and revision”) - Serverity Identifier options: option cho phép ghi đè lên giá trị priority mặc định rule thiết lập rule classtification, tăng giảm prioprity cách sử dụng cú pháp sau priority: ví dụ: alert udp any any -> $INTERNAL 21974 (priority:1; msg: "Bad Worm Backdoor";) - Classification Identifier options: options cho phép bạn phân loại rule dựa những dạng công khác nhau, classtification định nghĩa file config, cú pháp classtype: , số classtification snort định nghĩa sẵn: Trang 28 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - hình trích từ sách snort 2.1 External reference: option dùng để thêm tham chiếu tới tài liệu cho alert tạo snort phục vụ cho mục đích báo cáo, xếp làm tư liệu alert snort, cú pháp: reference: , 4.5 Cài Đặt Chúng ta cần chuẩn bị tất phần mềm sau để tiến hành cài đặt snort: - snort-2.4.2.tar.gz - snortrules.tar.gz - snort-1.0.wbm - Net_SSLeay.pm-1.2.0.tar.gz - webmin-1.230-1.noarch.rpm - acid-0.9.6b23.tar.gz - adodbb461.tar.gz - gd-2.0.33.tar.gz - phplot-4.4.6.tar.gz 4.5.1 Cài đặt snort Cài đặt snort gói snort-2.4.2.tar.gz, với lệnh sau: # cp snort-2.4.2.tar.gz /usr/ # cd /usr/ # tar –xzvf snort-2.4.2.tar.gz # cd snort-2.4.2 # /configure with-mysql # make Trang 29 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com # make install Cập nhật tập luật cho snort, snort hoạt động mode NIDS nhờ vào tập luật # mkdir /etc/snort # cp snortrules.tar.gz /etc/snort # cd /etc/snort # tar –xzvf snortrules.tar.gz Vì đường dẫn cấu hình mặc định snort, để snort chạy đúng, chuẩn xác cần di chuyển tất luật từ thư mục: /etc/snort/snortrules đến thư mục /etc/snort Xóa thư mục /etc/snort/snortrules Sửa file /etc/snort/snort.conf dịng sau: (815) # output database: log, mysql, user=root password=test dbname=db host=localhost sửa thành output database: log, mysql, user=snort password=123456 dbname=snort host=000.000.000.000 var RULE_PATH /rules sửa thành #var RULE_PATH /rules Bỏ tất “$RULE_PATH” dòng include sau: (73) # include $RULE_PATH/bad-traffic.rules …………………………………………… sửa thành #include bad-traffic.rules …………………………………………… Tạo thư mục để ghi lại kiện log # mkdir /var/log/snort Tạo file để khởi động snort thử start, stop snort # cp snortd /etc/rc.d/init.d # cd /etc/rc.d/init.d # chmod 755 snortd # chkconfig –level 2345 snortd on # /etc/rc.d/init.d/snortd start #./etc/rc.d/init.d/snortd start 4.5.2 Cài đặt Webmin Trước cài đặt webmin, phải cài đặt SSL để đảm bảo liệu truyền bảo mật) Theo câu lệnh sau để cài đặt SSL # cp Net_SSLeay.pm-1.20.tar.gz /usr # cd /usr/Net_SSLeay.pm-1.20.tar.gz # tar –xzvf Net_SSLeay.pm-1.20.tar.gz # cd Net_SSLeay.pm-1.20 #perl Makefile.PL #make install Trang 30 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Cài đặt webmin gói rpm # rpm –ivh webmin-1.230-1.noarch.rpm Sau cài đặt webmin, tiến hành cấu hình SSL Mở trình duyệt Mozilla gõ vào địa chỉ: http://localhost:10000 Sau login vào với quyền ROOT, thấy xuất hình sau: Hình 4-1: Webmin Configuration Chúng ta chọn biểu tượng: Webmin Configuration, xuất hình tiếp theo: Hình 4-2: SSL encrytion Chúng ta chọn chức SSL Encryption, sau chọn tiếp tùy chọn: “Enable SSL support if available” để kích hoạt chức SSL Từ lúc này, phải log vào trang địa chỉ: https://localhost:10000 Trở lại với hình 2.1.Webmin Configuration, chọn chức Webmin Modules để cài đặt webmin cho snort Trang 31 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Hình 4-3: Webmin Modules Tiếp theo chọn cài đặt với local file, chọn đường dẫn đến snort-1.0.wbm để tiến hành cài đặt 4.5.3 Cài đặt adodb, acid, gd, phplot Trước cài đặt gói adodb, acid, gd, phplot, phải tiến hành cấu hình mysql theo bước sau: # mysql –u root mysql> set password for „root‟@‟localhost‟=password(„123456‟); mysql> create database snort; mysql> exit; # chkconfig –level mysqld on # mysql –u root –p mysql> connect snort; mysql> source create_mysql; mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on snort.* to snort; mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to snort@localhost; mysql> grant CREATE,INSERT,SELECT,UPDATE on snort.* to acidviewer; mysql> grant CREATE, INSERT, SELECT, UPDATE on snort.* to acidviewer@localhost; mysql> connect mysql; mysql> set password for „snort‟@‟localhost‟=password(„123456‟); mysql> set password for „snort‟@‟%‟=password(„123456‟); mysql> set password for „acidviewer‟@‟localhost‟=password(„123456‟); mysql> set password for „acidviewer‟@‟%‟=password(„123456‟); mysql> flush privileges; mysql> exit; Trang 32 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Tiếp theo tiến hành cài đặt acid, adodb, gd, phplot # tar –xzvf acid-0.9.6b23.tar.gz –C /var/www/html # tar –xzvf adodb461.tar.gz –C /var/www/html # tar –xzvf gd-2.0.33.tar.gz –C /var/www/html # tar –xzvf phplot-4.4.6.tar.gz –C /var/www/html Đổi tên thư mục gd-2.0.33 phplot-4.4.6 thành gd phplot Copy thư mục acid thành thư mục khác acidviewer Sửa file /var/www/html/acid/acid_conf.php file /var/www/html/acidviewer/ acid_conf.php dòng sau: $DBlib_path=” /adodb”; $alert_dbname=”snort”; $alert_user=”snort”; (hoặc acidviewer) $alert_password=”123456”; $Chartlib_path=” /phplot”; Tiếp tục cấu hình bước sau: # mkdir /usr/lib/apache # mkdir /usr/lib/apache/passwords # htpasswd –c /usr/lib/apache/passwords/passwords snort # htpasswd /usr/lib/apache/passwords/passwords acidviewer Thêm đoạn sau vào file /etc/httpd/conf/httpd.conf AuthType Basic AuthName “snort solution” AuthUserFile /usr/lib/apache/passwords/passwords Require user snort AllowOverride None AuthType Basic AuthName “snort solution” AuthUserFile /usr/lib/apache/passwords/passwords Require user acidviewer AllowOverride None Bây truy cập vào trang acid thông qua địa chỉ: http://localhost/acid/, thấy hình sau: Trang 33 Nghiên cứu phịng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Hình 4-4: ACID setup Click vào Setup page, thấy hình sau: Hình 4-5: DB setup Click vào Create ACID AG, thấy hình sau: Hình 4-6: DB setup Click Main page tất hồn tất Q trình cài đặt hồn tất, quản lí snort cách log vào địa https://localhost:10000 với quyền ROOT, chọn biểu tượng Servers: Trang 34 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Hình 4-7: Module Server Sau đó, chọn tiếp biểu tượng Snort IDS Admin Hình 4-8: Snort IDS admin Muốn xem thơng tin packet mà snort log lại vào địa http://localhost/acid với quyền snort http://localhost/acidviewer với quyền acidviewer 4.6 Cấu Hình Snort: Cấu hình snort thực chủ yếu file cấu hình có tên thường dùng snort.conf, file có cấu trúc dạng text Trang 35 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Hình: File Snort.conf Dưới bước cấu hình Thiết lập biến: nơi thiết lập biến toàn cục xài cho rule, lệnh include, … Khai báo có dạng var $Ten_Bien = gia tri Cấu hình preprocessor: nơi cấu hình preprocessor hoạt động, khai báo có dạng preprocessor : Cấu hình output plugin: nơi cấu hình output plugin hoạt động, khai báo có dạng output : Định nghĩa rule type sử dụng định nghĩa rule ví dụ cụ thể việc định nghĩa rule type ◦ ◦ ◦ ◦ ◦ ruletype suspicious { type log output log_tcpdump: suspicious.log } Tạo rule: nơi bạn định nghĩa rule mà snort sử dụng để detect gói tin, thường định nghĩa file khác để tiện quản lý bạn include vào Ngồi cịn số cấu hình khác bạn xem chi tiết file snort.conf manual kèm 4.7 Hướng Dẫn Sử Dụng Snort Trong Linux 4.7.1 Sniffer mode Như giới thiệu, mode sniffer, snort đọc thông tin packet lưu chuyển mạng hiển thị thông tin lên hình console Nếu muốn biết thơng tin header packet sử dụng: /snort –v Trang 36 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Câu lệnh sau cung cấp nhiều thơng tin hơn, ngồi thơng tin header, snort cho biết packet ứng dụng lưu chuyển: /snort –v –d Nếu bạn muốn cung cấp nhiều thông tin nữa, muốn hiển thị header tầng datalink sử dụng câu lệnh: /snort –vde /snort –v –d –e 4.7.2 Packet logger mode Packet logger mode mode hỗ trợ lưu thông tin packet vào đĩa cứng Bạn cần đơn giản sử dụng câu lệnh sau, snort hiểu phải hoạt động mode Packet logger, lưu thông tin xuống file định: /snort –dev –l /log Nếu bạn muốn log thông tin packet dạng phức tạp để phục vụ cho việc phân tích sau này, bạn log thơng tin dạng binary Khi đó, bạn sử dụng câu lệnh sau: /snort –l /log –b Một lưu thông tin dạng binary, bạn cần chương trình để dịch file binary dạng mà bạn đọc được, như: tcpdump Ethereal Snort hỗ trợ việc đọc ngược này, đơn giản cách sử dụng lệnh: /snort –dv – r packet.log Bạn thêm tham số, để báo cho snort biết loại packet cần đọc Ví dụ: bạn cần thơng tin gói icmp, sử dụng câu lệnh: /snort –dv –r packet.log icmp 4.7.3 Network Intrusion Detection Mode (NIDS) Đây mode hoạt động phức tạp snort, có nhiều tham số để sử dụng Tuy nhiên tham số quan trọng, bắt buộc phải có mode hoạt động “c” Tham số đường dẫn file luật, nhờ snort log lại packet mà file luật yêu cầu ./snort –u snort –g snort –d –D –c /etc/snort 4.7.3.1 Định dạng cảnh báo (alert) Một cảnh báo (alert) có định dạng sau: [**] [116:56:1] {snort_decoder}: T/TCP Detected [**] Số Generator ID (GID), GID cho biết cảnh báo thành phần snort phát sinh (do lỗi phát sinh) Để có danh sách GID tìm file /etc/generators Số thứ hai Snort ID (SID), SID cho biết cảnh báo preprocessor tạo Để có danh sách preprocessor xem file /etc/gen-msg.map Số thứ ba revision ID, số để phân biệt cảnh báo 4.7.3.2 Các tham số cảnh báo NIDS có nhiều tùy chọn để định nghĩa cách cảnh báo, cách ghi lại packet Mặc định mode cảnh báo full alert log lại packet theo dạng ASCII Sau bảng tham số để định nghĩa cảnh báo: Tham số Cách cảnh báo NIDS đưa cảnh báo dạng đơn giản gồm có: thơng điệp cảnh báo, địa -A fast IP nguồn địa IP đích Đây mode sử dụng mặc định bạn không dùng tham số -A full -A unsock Gởi cảnh báo đến cổng UNIX để chương trình khác lắng Trang 37 Nghiên cứu phịng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com -A none -A console -A cmg nghe Tắt cảnh báo In cảnh báo dạng “fast” hình console Tạo cảnh báo dạng “cmg” 4.7.4 Inline mode Khi hoạt động mode này, snort can thiệp trực tiếp vào iptables Có loại luật sử dụng snort hoạt động mode Inline: - drop: với kiểu luật drop, iptables bỏ qua packet log lại kiện - reject: với kiểu luật reject, iptables bỏ qua packet, log lại kiện, thông báo đến máy tính packet khơng đến nơi - sdrop: với kiểu luật sdrop, iptables bỏ qua packet, khơng thơng báo đến máy đích khơng log lại kiện Để snort hoạt động mode Inline, biên dịch snort cần ý tham số sau: /configure –enable-inline make make install Để gọi snort chạy mode inline, sử dụng câu lệnh sau: snort_inline –QDc /etc/drop.conf –l /var/log/snort Các tham số có ý nghĩa sau: -Q: lấy packet từ iptables -D: chạy daemon snort_inline -c: đọc file cấu hình -l: ghi lại kiện vào thư mục Trang 38 Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... Trang Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com IDS 1.1 Giới thiệu đời - Cách khoảng 25 năm, khái niệm phát xâm nhập. .. host Phần mềm Agent thực thi phân tích bảo vệ phát xâm nhập vào host Những thuận lợi: - - Trang Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN CHAT LUONG download : add... tiêu biểu cho phân tích phát xâm nhập Hệ điều hành “ trần trụi” dịch vụ mạng không cần thiết dịch vụ chủ yếu bảo mật Trang Nghiên cứu phòng chống thâm nhập trái phép IDS,IDP, Snort Linux LUAN VAN