MỤC LỤC CHƯƠNG 1: TỔNG QUAN IDS 3 1.1 KHÁI NIỆM IDSIPS 3 1.2 PHÂN LOẠI IDS 3 1.2.1 PHÂN LOẠI THEO MÔ HÌNH CHỨC NĂNG 3 1.2.2 PHÂN LOẠI THEO PHƯƠNG THỨC HOẠT ĐỘNG 5 1.3 GIỚI THIỆU MỘT SỐ IDS PHỔ BIẾN 6 CHƯƠNG 2: HƯỚNG DẪN SỬ DỤNG SURICATA 8 2.1 GIỚI THIỆU SURICATA 8 2.2 CÀI ĐẶT SURICATA 9 2.2.1 CÀI ĐẶT THƯ VIỆN 9 2.2.2 CÀI ĐẶT MÃ NGUỒN 9 2.3 SURICATA RULES 10 2.3.1 CẤU TRÚC RULES 10 2.3.2 RULE OPTION 11 2.4 CHẾ ĐỘ LÀM VIỆC (RUNMODES) 15 2.5 CẤU HÌNH CHO SURICATA 17 CHƯƠNG 3: THỰC NGHIỆM 18 3.1 CHUẨN BỊ 18 3.2 CÀI ĐẶT 18 3.3 THỬ NGHIỆM DOS. 18
HỌC VIỆN KỸ THUẬT MẬT MÃ KHOA CÔNG NGHỆ THÔNG TIN BÀI TẬP LỚN CƠ SỞ AN TỒN THƠNG TIN Đề tài: TÌM HIỂU VÀ SO SÁNH TÍNH NĂNG CỦA MỘT SỐ IDS Giảng viên hướng dẫn: Nguyễn Mạnh Thắng MỤC LỤC CHƯƠNG 1: TỔNG QUAN IDS 1.1 KHÁI NIỆM IDS/IPS 1.2 PHÂN LOẠI IDS 1.2.1 PHÂN LOẠI THEO MƠ HÌNH CHỨC NĂNG 1.2.2 PHÂN LOẠI THEO PHƯƠNG THỨC HOẠT ĐỘNG 1.3 GIỚI THIỆU MỘT SỐ IDS PHỔ BIẾN CHƯƠNG 2: HƯỚNG DẪN SỬ DỤNG SURICATA 2.1 GIỚI THIỆU SURICATA 2.2 CÀI ĐẶT SURICATA 2.2.1 CÀI ĐẶT THƯ VIỆN 2.2.2 CÀI ĐẶT MÃ NGUỒN 2.3 SURICATA RULES 10 2.3.1 CẤU TRÚC RULES 10 2.3.2 RULE OPTION 11 2.4 CHẾ ĐỘ LÀM VIỆC (RUNMODES) 15 2.5 CẤU HÌNH CHO SURICATA 17 CHƯƠNG 3: THỰC NGHIỆM 18 3.1 CHUẨN BỊ 18 3.2 CÀI ĐẶT 18 3.3 THỬ NGHIỆM DOS 18 CHƯƠNG 1: TỔNG QUAN IDS 1.1 KHÁI NIỆM IDS/IPS IDS (Intrusion Detection System) hệ thống phát xâm nhập Đây phần mềm công cụ giúp người dùng bảo mật hệ thống cảnh báo có xâm nhập IDS thường phần hệ thống bảo mật phần mềm khác, kèm với nhiệm vụ bảo vệ hệ thống thông tin Các tính quan trọng IDS bao gồm: giám sát mạng lưu lượng hoạt động nghi ngờ; đưa cảnh báo điểm bất thường cho hệ thống mạng quản trị đơn vị; kết hợp với lửa tường, phần mềm diệt virus nên hệ thống hoàn chỉnh bảo mật IPS (Intrusion Prevention System) hệ thống ngăn chặn xâm nhập Như vậy, IPS bao gồm IDS hệ thống kiểm soát Trong khi, IDS phát đưa cảnh báo IPS có khả ngăn chặn phát tán dựa vào nội dung hành vi xâm nhập tới hệ thống 1.2 PHÂN LOẠI IDS 1.2.1 PHÂN LOẠI THEO MƠ HÌNH CHỨC NĂNG Có loại IDS : - Host-based Intrusion Detection System (HIDS) – Một hệ thống có quyền truy cập trực tiếp vào mạng nội internet, HIDS chụp 'hình ảnh' tập tin toàn hệ thống sau so sánh với hình ảnh trước Nếu hệ thống tìm thấy khác biệt lớn, chẳng hạn tệp bị thiếu, v.v., cảnh báo người quản trị - Network-based Intrusion Detection System (NIDS) - Một hệ thống phân tích lưu lượng truy cập toàn mạng con, NIDS theo dõi lưu lượng truy cập ngoài, đến từ tất thiết bị mạng HOST-BASED INTRUSION DETECTION SYSTEMS (HIDS) Host-based Intrusion Detection System (HIDS) kiểm tra kiện máy tính mạng người dùng thay lưu lượng truy cập xung quanh hệ thống Loại hệ thống phát xâm nhập viết tắt HIDS chủ yếu hoạt động cách xem xét liệu tệp quản trị máy tính mà bảo vệ, tệp bao gồm tệp nhật ký (log) tệp cấu hình HIDS lưu tệp cấu hình người dùng để người dùng khơi phục cài đặt vi-rút độc hại làm an toàn hệ thống người dùng cách thay đổi thiết lập máy tính Một yếu tố quan trọng khác mà người dùng muốn bảo vệ quyền truy cập root tảng giống Unix thay đổi sổ đăng ký hệ thống Windows HIDS khơng thể chặn thay đổi này, thơng báo cho người dùng có quyền truy cập xảy NETWORK-BASED INTRUSION DETECTION (NIDS) Network-based Intrusion Detection System (NIDS) gọi hệ thống phát xâm nhập mạng IDS mạng, kiểm tra lưu lượng mạng người dùng Như vậy, NIDS điển hình phải bao gồm dị tìm gói để thu thập lưu lượng mạng để phân tích Cơng cụ phân tích NIDS thường dựa quy tắc sửa đổi cách thêm quy tắc riêng người dùng Với nhiều NIDS, nhà cung cấp hệ thống cộng đồng người dùng, cung cấp quy tắc cho người dùng người dùng nhập quy tắc vào q trình triển khai Khi người dùng quen với cú pháp quy tắc NIDS chọn, người dùng tạo quy tắc riêng Với việc thu thập lưu lượng truy cập, người dùng không muốn tất lưu lượng truy cập toàn hệ thống vào tệp nhật kí Bởi vây người dùng khơng thể phân tích tất liệu Vì vậy, quy tắc phân tích NIDS tạo việc thu thập liệu có chọn lọc Ví dụ: người dùng có quy tắc cho loại lưu lượng HTTP đáng lo ngại, NIDS người dùng nên chọn lưu trữ gói HTTP hiển thị đặc điểm Thơng thường, NIDS cài đặt phần cứng chuyên dụng Các giải pháp doanh nghiệp trả phí cao cấp kèm phần mạng với phần mềm tải sẵn Tuy nhiên, người dùng khơng phải trả nhiều tiền cho phần cứng chuyên dụng NIDS yêu cầu mơ-đun cảm biến để nhận lưu lượng, người dùng tải vào phân tích mạng LAN người dùng chọn phân bổ máy tính để chạy tác vụ Tuy nhiên, đảm bảo thiết bị mà người dùng chọn cho nhiệm vụ có đủ tốc độ xung nhịp để khơng làm chậm mạng người dùng Hình 1.1: Mơ hình mạng HIDS NIDS SO SÁNH SỰ KHÁC GIỮA IDS/IPS VÀ FIREWALL Sau tìm hiểu khái niệm cách hoạt động hay mơ hình IDS/IPS hệ thống Dưới khác IDS/IPS firewall: Cả IDS IPS hệ thống dựa liệu mối đe dọa IDS cần quản trị viên xem xét mối nguy cảnh báo, cịn IPS tự ngăn chặn mối nguy Về phía FIREWALL, thường cấu hình để chặn tất truy cập, sau người dùng cài đặt phép số loại truy cập định Trong đó, cách thức làm việc IPS IDS hoàn toàn ngược lại, cho phép tất truy cập cảnh báo chặn số truy cập cụ thể Vì vậy, tốt người dùng nên sử dụng kết hợp FIREWALL với IPS IDS Dưới số ưu nhược điểm IDS: - Ưu điểm: Thích hợp sử dụng để thu thập số liệu, chứng phục vụ công tác điều tra ứng cứu cố Đem đến nhìn bao qt, tồn diện tồn hệ thống mạng, cơng cụ thích hợp phục vụ việc kiểm tra cố hệ thống mạng - Nhược điểm: Cần cấu hình hợp lý, khơng gây tình trạng báo động nhầm Khả phân tích traffic mã hóa tương đối thấp Chi phí phát triển vận hành hệ thống tương đối cao Ngoài ra, triển khai IDS, người dùng cần ý đến tiêu chí như: xác định công nghệ IDS; xác định thành phần; cài đặt cấu hình an tồn phù hợp cho IDS; xác định vị trí hợp lý lắp đặt IDS; xây dựng chế quản lý, tổ chức; ngăn chặn tối đa cảnh báo nhầm bất tiện không đáng có từ cố này.Với thơng tin viết cung cấp, hi vọng người dùng hiểu phần IDS gì, nắm phân loại số dạng IDS điểm mạnh điểm yếu IDS Trong thời đại công nghệ số nay, trang bị IDS cho doanh nghiệp điều cấp thiết thiết thực, để bảo vệ doanh nghiệp người dùng khỏi nguy tiềm ẩn hệ thống 1.2.2 PHÂN LOẠI THEO PHƯƠNG THỨC HOẠT ĐỘNG Hầu hết IDS sử dụng hai chế độ hoạt động, cịn số sử dụng hai cách Sau phân loại IDS theo phương cách hoạt động: - Signature-based IDS - Anomaly-based IDS SIGNATURE-BASED IDS Signature-based IDS (phát dựa trện chữ kí) phương pháp dựa chữ ký (Signature) xem xét checksums xác thực thông điệp Các phương pháp phát dựa chữ ký áp dụng NIDS HIDS HIDS xem xét tệp nhật ký cấu hình cho viết lại bất ngờ nào, NIDS xem xét checkums gói chụp lại tính tồn vẹn xác thực tin nhắn hệ thống SHA1 NIDS bao gồm sở liệu chữ ký mà gói biết đến nguồn hoạt động độc hại mang theo May mắn thay, hacker khơng máy tính họ để bẻ khóa mật truy cập vào user root Thay vào đó, họ sử dụng quy trình tự động cung cấp cơng cụ hacker tiếng Các cơng cụ có xu hướng tạo chữ ký lưu lượng truy cập giống lần chương trình máy tính lặp lặp lại cấu trúc tương tự thay tạo biến thể ngẫu nhiên ANOMALY-BASED IDS Anomaly-based IDS (Phát dựa khác thường) tìm kiếm mơ hình hoạt động bất ngờ bất thường Danh mục thực hệ thống phát xâm nhập dựa máy chủ mạng Trong trường hợp HIDS, bất thường nỗ lực đăng nhập thất bại lặp lặp lại hoạt động bất thường cổng thiết bị Trong trường hợp NIDS, cách tiếp cận bất thường đòi hỏi phải thiết lập đường sở hành vi để tạo tình tiêu chuẩn mà mơ hình lưu thơng diễn so sánh Một loạt mơ hình lưu thơng coi chấp nhận lưu lượng truy cập thời gian thực di chuyển khỏi phạm vi đó, cảnh báo bất thường gửi 1.3 GIỚI THIỆU MỘT SỐ IDS PHỔ BIẾN Các nhà sản xuất phần mềm IDS tập trung vào hệ điều hành giống Unix Một số sản xuất mã họ theo tiêu chuẩn POSIX Vì hệ điều hành Mac OS Mac OS X macOS dựa Unix, hệ điều hành phục vụ cho việc sử dụng IDS tốt nhiều so với Windows Dưới liệt kê số công cụ IDS với hệ điều hành cài đặt: IDS SolarWinds Manager NIDS/HIDS Unix Security Event Cả hai Linux Windows Mac OS Khơng Khơng Có Khơng CrowdStrike Falcon HIDS Có Có Có Có Snort NIDS Có Có Có Khơng OSSEC HIDS Có Có Có Có ManageEngine EventLog Analyzer HIDS Có Có Có Có Suricata NIDS Có Có Có Có Zeek NIDS Có Có Khơng Có Sagan Cả hai Có Có Khơng Có Security Onion Cả hai Có Có Có Có AIDE HIDS Có Có Khơng Có Open WIPS-NG NIDS Khơng Có Khơng Khơng Bảng 1.1: Danh sách số cơng cụ IDS với hệ điều hành sử dụng SNORT Snort phát triển tạo Sisco, công cụ mã nguồn mở khơng có GUI, nhiều công cụ nguồn mở khác tạo để giúp đỡ, chẳng hạn BASE Sguil Các công cụ cung cấp giao diện web để truy vấn phân tích cảnh báo đến từ Snort IDS Snort với tuổi thọ sản phẩm lâu dài nên có cộng đồng lớn đưa nhiều giải pháp hỗ trợ hộ trợ nhiều giao diện quản trị Dưới số tính bật Snort: - Thiết kế theo mơ-đun xử lí - Sử dụng cấu hình đơn giản có cấu hình sẵn - Hỗ trợ plugin framework (hơn 200 plugin) - Tự động tạo tài liệu tham khảo - Cấu hình cho nhớ mở rộng thêm - Phân tích quy tắc cú pháp Tuy nhiên số nhược điểm Snort: - Rất phức tạp, với quy tắc định cấu hình sẵn, yêu cầu có kiến thức chun mơn sâu để hiểu rõ Quá tin cậy vào cộng đồng để hỗ trợ, phát công SURICATA Mặc dù kiến trúc Suricata khác với Snort, hoạt động giống Snort sử dụng chữ ký giống Dưới số tính đáng ý Suricata: - - Multi-Threaded: Snort chạy với luồng có nghĩa sử dụng CPU (core) thời điểm Suricata chạy nhiều luồng để tận dụng tất CPU mà người dùng có sẵn Xây dựng tăng tốc phần cứng: Người dùng sử dụng card đồ họa để kiểm tra lưu lượng mạng Trích xuất tệp: Nếu phát lưu lượng có tải xuống phần mềm độc hại Người dùng chụp từ Suricata phân tích LuaJIT - Nó cơng cụ kịch sử dụng với thơng tin từ gói kiểm tra Suricata Điều làm cho việc kết hợp phức tạp chí cịn dễ dàng người dùng chí đạt hiệu cách kết hợp nhiều quy tắc vào kịch Khả thu thập log tốt: Suricata lấy ghi lại thứ chứng TLS / SSL,yêu cầu HTTP, yêu cầu DNS Nhược điểm hạn chế Suricata: - Là cơng cụ mã nguồn mở nhiên khơng có cộng đồng lớn công cụ Snort Zeek Tập lệnh tích hợp khó sử dụng u cầu có hiểu biết OSSEC OSSEC chạy hầu hết hệ điều hành lớn bao gồm quản lý dựa client/server kiến trúc ghi nhật ký, điều quan trọng hệ thống HIDS Vì HIDS bị xâm phạm lúc hệ điều hành, điều quan trọng thông tin bảo mật pháp y rời khỏi máy chủ lưu trữ nơi khác sớm tốt để tránh loại giả mạo làm xáo trộn ngăn chặn phát Kiến trúc client/server OSSEC kết hợp chiến lược cách cung cấp cảnh báo nhật ký đến máy chủ tập trung, nơi phân tích thơng báo xảy hệ thống máy chủ bị ngoại tuyến bị xâm phạm Một lợi khác kiến trúc client/server khả quản lý tập trung đại lý từ máy chủ Vì việc triển khai dao động từ đến hàng ngàn cài đặt, khả thực thay đổi toàn cầu từ máy chủ trung tâm quan trọng tỉnh táo quản trị viên Việc cài đặt OSSEC nhẹ (trình cài đặt 1MB) phần lớn phân tích thực xảy máy chủ có nghĩa CPU OSSEC tiêu thụ máy OSSEC có khả gửi nhật ký hệ điều hành đến máy chủ để phân tích lưu trữ, điều đặc biệt hữu ích máy Windows khơng có chế ghi nhật ký gốc đa tảng Ưu điểm OSSEC: - Hồn tồn miễn phí mã nguồn mở Sử dụng tổng kiểm tra để xác minh tính tồn vẹn nhật ký tệp Hỗ trợ giám sát tài khoản gốc hệ thống Unix/Linux Hỗ trợ cộng đồng mạnh mẽ cung cấp mẫu hồ sơ quét Nhược điểm hạn chế OSSEC: - Để nhận thông tin đáng tin cậy cộng đồng để hỗ trợ túy nhiễn trả phí để nhận hỗ trợ Có thể sử dụng tính báo cáo hình ảnh hóa tốt CHƯƠNG 2: HƯỚNG DẪN SỬ DỤNG SURICATA 2.1 GIỚI THIỆU SURICATA Suricata mã nguồn mở sở hữu tổ chức phi lợi nhuận cộng đồng điều hành, Open Information Security Foundation (OISF) Nó cơng cụ giám sát an ninh mạng đồng thời vừa IDS IPS Suricata Snort có sử dụng rules tương đồng nhau, nhiên Snort chạy với luồng điều có nghĩa sử dụng CPU thời điểm Với Suricata, có chức chọn chạy đa luồng, tận dụng tất CPU sẵn có, có lẽ tính trội tiến Suricata Suricata dử dụng chữ kĩ (signatures) để kích hoạt đưa cảnh báo, ta cần thêm cập nhật chữ kí trước chạy Suricata Chữ kí Suricata cịn biết đến rules chứa tệp quy tắc 2.2 CÀI ĐẶT SURICATA 2.2.1 CÀI ĐẶT THƯ VIỆN Suricata cần số thư viện để biên dịch phát triển chúng Theo mặc định, Suricata hoạt động IDS, nhiên để sử dụng chức IPS cần phải cài thêm số gói vào hệ thống Dưới số câu lệnh để cài đặt thư viện: Tối thiểu: apt-get install libpcre3 libpcre3-dbg libpcre3-dev build-essential libpcap-dev \ libyaml-0-2 libyaml-dev pkg-config zlib1g zlib1g-dev \ make libmagic-dev libjansson libjansson-dev Dùng tích hợp IDS iptables/nftables: apt-get install libnetfilter-queue-dev libnetfilter-queue1 \ libnetfilter-log-dev libnetfilter-log1 \ libnfnetlink-dev libnfnetlink0 2.2.2 CÀI ĐẶT MÃ NGUỒN Đầu tiên, ta tải phiên Suricata 6.0.3 trang chủ thức câu lệnh sau: wget https://www.openinfosecfoundation.org/download/suricata-6.0.3.tar.gz Sau tải xong, giải nén tệp nén câu lệnh sau: 10 tar -xvzf suricata-6.0.3.tar.gz Tiếp theo, ta thực chọn thư mục cho Suricata theo câu lệnh (bước khơng thực mặc định Suricat cài đặt /usr/local/bin cấu hình mặc định /usr/local/etc/suricata log mặc định /usr/local/var/log/suricata): /configure localstatedir=/var enable-nfqueue prefix=/usr sysconfdir=/etc Cuối cùng, cài đặt suricata câu lệnh sau: make make install Hoặc để đơn giản bước cài đặt gói suricata với phiên thư mục để với đường dẫn mặc định câu lệnh đây: sudo apt install suricata jq Sau hồn tất q trình tải cài đặt Suricata, q trình sử dụng ta sử dụng số tùy chọn sau: -V : Hiện thị phiên Suricata -c : Đường dẫn tới file configuration -T : Kiểm tra cấu hình -r : Đọc file pcap chế độ ngoại tuyến Nếu đường dẫn thư mục tất tệp xử lí theo thứ tự thời gian để truy trạng thái sử lý luồng với thời gian thực -i : lựa chọn ta nhập tên card mạng cấu hình để bắt gói tin file configuration -q : Chạy nội tuyến hàng đợi NFQUEUE với số id Có thể sử dụng tùy chọn nhiều lần, dùng tronh chế độ IPS -S : chọn tệp chữ kí, tệp chạy riêng với tệp cấu hình file configuration -s : chọn tệp chữ kí, tệp tải lên với tệp cấu hình file configuration runmode : tùy chọn dùng để ghi đề runmode file configuration Có chế độ workers, autofp single Phần làm rõ nội dung phần sau 11 2.3 SURICATA RULES 2.3.1 CẤU TRÚC RULES Như giới thiệu phần đầu, chữ kí Suricata vơ quan trọng, sở để xác định giúp người giám sát đưa cho “phán đốn” thơng tin nhận Sau cấu trúc rule/signature định dạng sau: - Action: Xác định hành vi thực mà trùng khớp signature - Header: Gồm có tên giao thức, địa IP, port hướng rule - Rule option: Gồm nhiều thành phần xác định nên rule Dưới ví dụ cụ thể : alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"ET POLICY curl User-Agent Outbound"; flow:established,to_server; content:"curl/"; nocase; http_user_agent; depth:5; reference:url,www.useragentstring.com/pages/useragentstring.php; classtype:attempted-recon; sid:2013028; rev:4; metadata:created_at 2011_06_14, updated_at 2020_04_22;) Trong ví dụ này, action có chữ màu đỏ, header có chữ màu xanh rule option có chữ màu xanh dương ACTION Cung cấp số hành động sau: - Alert : Đưa thông báo - Pass : Ngừng kiểm tra thêm gói - Drop : hủy đưa cảnh báo gói tin - Reject : thông báo lỗi đến người gửi khơng đính kèm RST/ICMP cho gói tin - Rejectsrc : giống reject từ chối - Rejectdst : thông báo lỗi đến người gửi kèm RST/ICMP cho gói tin - Rejectboth : thơng báo lỗi đến người gửi kèm RST/ICMP cho phía Lựa chọn drop reject sử dụng cho mode IPS PROTOCOL Là từ khóa cho biết signature liên quan đến giao thức giao thức hoạt động tầng mô hình OSI tcp, udp, icmp, ip Hay thâm chí giao thức tầng http, ftp, ssh, dns, smb, … 12 IP(NGUỒN VÀ ĐÍCH) Phần trước mũi tên IP nguồn, sau mũi tên IP đích biểu diễn dạng IPv4 IPv6 Ngồi việc chọn giá trị IP ta sử dụng biến $HOME_NET $EXTERNAL_NET cấu hình file yaml để làm giá trị PORT(NGUỒN VÀ ĐÍCH) Tương tự ip phần trước mũi tên port nguồn sau mũi tên port đích HƯỚNG CỦA GĨI TIN Được kí hiệu mũi tên có chiều từ trái sang phải -> Tức gói tin có hướng trùng với rule so sánh để xem có khớp với rule hay khơng Ngồi ra, số rule khớp với phía ta sử dụng < > Tuy nhiên q trình viết rule khuyến cáo khơng nên sử dụng kí hiệu dễ làm q trình giám sát trở nên khó khăn 2.3.2 RULE OPTION Gồm từ khóa giá trị gán với từ khóa tưng ứng ngăn cách chúng dấu chấm phẩy, phần giới thiệu số từ khóa cơng dụng chúng sau TỪ KHĨA THƠNG THƯỜNG Những từ khóa khơng làm ảnh hưởng đến trình so khớp kiểm tra signature Suricata, chúng ảnh hướng đến cách Suricata đưa cảnh báo cho kiện a Msg (message) Từ khóa cung cấp thơng tin cho người đọc cảnh báo Định dạng cho msg: msg:"ET POLICY curl User-Agent Outbound" b SID (signature ID) Từ khóa sid cung cấp cho signature chữ kí riêng cho phân biệt với signature khác Ví dụ : sid:2013028; c Rev (revision) Đó từ khóa kèm với sid, người ta quy ước viết rev sau sid Rev đại diện cho phiên chữ kí, chữ kí bị thay đổi(cập nhật, sửa đổi) người viết signature tăng giá trị rev thêm Ví dụ: rev:2; d Classtype Đây từ khóa phân loại quy tắc đưa mức cảnh báo cho người dùng Ví dụ: 13 Class type Alert Priority web-application-attack Web Attack not-suspicious Not Suspicious Traffic Application classtype: not-suspicious; e Reference Từ khóa reference cung cấp thơng tin signature Có thể sử dụng nhiều từ khóa reference Ví dụ: reference:CVE-2014-1234 ; reference:url,www.useragentstring.com/pages/useragentstring.php; f Priority Priority từ khóa có giá trị từ 1-255, thơng thường hay sử dụng từ 1-4 Trong Suricata priority có giá trị cao Những signature có priority cao ưu tiên kiêm tra trước Ví dụ: priority:1; TỪ KHĨA VỀ PAYLOAD Payload từ khóa giúp kiếm tra nội dung payload gói tin đường truyền tải Người dùng tìm kiếm từ khóa mà gói tin chứa payload Dưới tìm hiểu từ khóa content, từ khóa vơ quan trọng signature Nó so khớp byte với giá trị mà cần phải so sánh, khớp với tất kí tự, từ chữ thường đến chữ hoa kí hiệu đặc biệt Từ khóa content có cú pháp sau: content: “ nội dung cần khớp”; Với nhiều chương trình máy tính kí hiệu 0x00 coi dạng biểu diễn nhị phân, với Suricata ta kí hiệu sau |00| Ví dụ: |61 61| : aa Dưới số ví dụ sử dụng giá trị với từ khóa content: content:”http|3A|//”; có nghĩa content lọc theo payload http:// content:”NICK”; Khi sử dụng từ khóa content xem xét tồn payload xem có từ khóa khớp với giá trị mà kí tìm kiếm khơng Nó cố gắng tìm kiếm trùng khớp tất byte liệu payload để đưa giá trị Và phân biệt chữ hoa chữ thường Cùng xét ví dụ đây: 14 Hình 2.1: Minh họa cách hoạt động từ khóa content Để trợ cho từ khóa content ngồi cịn số từ khóa khác như: - Nocase: khơng phân biệt chữ hoa chữ thường - Depth: Số bít giá trị content từ đầu payload đến giá trị định - Startswith: Kiểm tra giá trị content có vị trí bắt đầu hay không, không cần truyền đối số - Endswith: kiếm tra giá trị content có cuối vùng đệm hay không, không cần truyền đối số - Offset: kiểm tra content bắt đầu vị trí bit payload - Distance: kiểm tra khoảng cách bit content, trả giá trị khoảng cách lớn với giá trị kiểm tra Chỉ có content sử dụng cho signature, có nhiều content Suricata sử dụng content mạnh Có nghĩa content chọn content dài nhất, có độ bao phủ lớn Xét ví dụ sau: content:”User-Agent |3A|”; content:”badness”; distance:0; Với ví dụ ta thấy User-Agent |3A| khớp với signature dài Babness, nên bị bỏ qua Tuy nhiên để Suricata sử dụng từ khóa “fast_pattern” kết hợp content điều kiện cần đủ content:”User-Agent |3A|”; content:”badness”; distance:0; fast_pattern; 15 TỪ KHÓA VỀ FLOW Flow từ khóa so khớp hướng luồng liệu Điều giúp ta biết gói tin đến từ client hay server trạng thái gói tin Dưới số giá trị dành cho từ khóa flow: - to_client = from_server : gói tin gửi từ server đến client - to_server = from_client : gói tin gửi từ client đến server - established : thiết lập kết nối - not_ established : chưa thiết lập kết nối - stateless: tất gói mà trạng thái gói tin khơng phải established - only_stream : gói tin lắp ráp phát stream engine - no_stream : gói tin phân mảnh phát stream engine Tuy nhiên việc xác định gói tin thiết lập kết nối hay chưa dựa vào giao thức Đối với TCP việc xác nhận gói tin thiết lập trạng thái kết nối sau hồn thành q trình bắt tay bước Cịn UDP kết nói coi thiết lập có lưu lượng từ phía QUẢN LÍ RULES VỚI SURICATA Theo mặc định Suricata sử dụng chữ kí thư mục có đường dẫn: /etc/suricata/rules/suricata.rules Nếu muốn thêm quy tắc thêm vào file suricata.rules tạo riêng cho tệp chữ kí với định dạng file rules Sau thêm đường dẫn vào file config suricata.yaml : Cập nhật lại suricta để load lại chữ kí thêm câu lệnh: suricata-update Để khởi động suricata dùng câu lệnh sau: suricata –c /etc/suricata/suricata.yaml –i enss33 Log suricata mặc định lưu /var/log/suricata/fast.log 2.4 CHẾ ĐỘ LÀM VIỆC (RUNMODES) Suricata xây dựng hoạt động dựa threads, thread-modules hàng đợi Thread giống tiến trình(process) máy tính, Như nói Suricata chạy đa luồng nên có nhiều thread chạy lúc Thread-module giống chức module phát hiện, module giải mã,… Một gói tin sử lí nhiều luồng, gói tin chuyển đến luồng thơng qua hàng đợi Chế độ làm việc Suricata điều chỉnh cách hoạt động threads, thread-module hàng đợi Như nói phần Suricata có chế độ làm việc single, worker autofp 16 Chế độ làm việc worker, card NIC giúp gói tin cân tải trước vào threads để xử lí, sau gói tin đóng gói vào đường ống module xử lí Hiện tại, chế độ làm việc worker đêm lại hiệu hiệu tốt Trong trường hợp sử lí file PCAP hay làm việc với chế độ IPS, chế độ làm việc autofp sử dụng Ở có nhiều luồng bắt gói tin, gói tin bắt giải mã Sau gói tin chuyển xuống luồng làm việc tương tự chế độ worker Cuối với chế độ làm việc single hoạt động tương tự woker nhiên có có thread làm việc Hình 2.2 : Chế độ làm việc worker 17 Hình 2.3: Chế độ làm việc autofp 18 Hình 2.5: Chế độ làm việc single 2.5 CẤU HÌNH CHO SURICATA Thực cấu hình cấu hình cho Suricata với đường dẫn /etc/suricata/suricata.yaml Sau số thông số cần thiết cài đặt: $HOME_NET: địa chỉ, dải IP mà muốn giám sát $EXTERNAL_NET: địa dải địa phía ngồi internet 19 Chọn dường dẫn cho log Chọn card mạng bắt gói tin Có thể chọn chạy Suricata với chế độ user Thiết lập mức ưu tiên hành động, nhiên khơng thiết lập Thêm đường dẫn signature cho Suricata tham chiếu hoạt động: CHƯƠNG 3: THỰC NGHIỆM 3.1 CHUẨN BỊ Dùng máy dùng hệ điều hành Kali, dùng phần mềm giả lập với VMware với cấu hình card mạng mơ hình đây: Tên máy Card mạng IP IDS VMnet0 192.168.10.1 Attack VMnet0 192.168.10.2 Bảng 3.1: Cấu hình IP mơ hình thực nghiệm 20 ... mạng HIDS NIDS SO SÁNH SỰ KHÁC GIỮA IDS/ IPS VÀ FIREWALL Sau tìm hiểu khái niệm cách hoạt động hay mơ hình IDS/ IPS hệ thống Dưới khác IDS/ IPS firewall: Cả IDS IPS hệ thống dựa liệu mối đe dọa IDS. .. kê số công cụ IDS với hệ điều hành cài đặt: IDS SolarWinds Manager NIDS/HIDS Unix Security Event Cả hai Linux Windows Mac OS Khơng Khơng Có Khơng CrowdStrike Falcon HIDS Có Có Có Có Snort NIDS... LỤC CHƯƠNG 1: TỔNG QUAN IDS 1.1 KHÁI NIỆM IDS/ IPS 1.2 PHÂN LOẠI IDS 1.2.1 PHÂN LOẠI THEO MƠ HÌNH CHỨC NĂNG 1.2.2 PHÂN LOẠI THEO PHƯƠNG THỨC HOẠT ĐỘNG 1.3 GIỚI THIỆU MỘT SỐ IDS PHỔ BIẾN CHƯƠNG 2: