Nghiên cứu triển khai hệ thống phát hiện xâm nhập mạng với phần mềm mã nguồn mở Snort_Inline

83 608 0
Nghiên cứu triển khai hệ thống phát hiện xâm nhập mạng với phần mềm mã nguồn mở Snort_Inline

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Triển khai được hai hệ thống phát hiện và ngăn chặn xâm nhập là Snort kết hợp với Iptables và Snort_inline để chống lại những tấn công mạng đơn giản. Đưa ra đánh giá về ưu, nhược điểm của từng hệ thống, từ đó đề xuất phương án sử dụng trong thực tế.

1 LỜI CẢM ƠN Trước tiên, xin gửi lời cảm ơn chân thành đến thầy giáo hướng dẫn tơi hồn thành đồ án Các thầy định hướng cho làm đồ án, hướng dẫn, truyền đạt lại kiến thức bổ ích, cung cấp tài liệu cần thiết để tơi hồn thành đồ án Tôi xin cảm ơn thầy cô Học viện Kỹ đào tạo cung cấp cho tơi kiến thức hữu ích, làm hành trang để bước vào sống LỜI CAM ĐOAN Để hồn thành đồ án này, tơi sử dụng tài liệu ghi mục tài liệu tham khảo, ngồi khơng sử dụng tài liệu khác mà không ghi Nếu sai, xin chịu hình thức kỷ luật theo quy định Học viện Hà Nội, ngày 05 tháng 06 năm 2015 Học viên thực (Ký ghi rõ họ tên) MỤC LỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT V Tiếng Anh Tiếng Việt iết tắt C Common Gateway Công nghệ mơ GI Interface hình ảnh máy tính D Distributed Denial Of Tấn công từ chối dịch vụ DOS Services phân tán D Domain Name System Hệ thống tên miền NS D Denial Of Services Tấn công từ chối dịch vụ OS H Host-base Intrustion IDS Detection System I Internet Control Message Giao thức xử lý CMP Protocol thông báo trạng thái cho IP I Intrustion Detection System Hệ thống phát xâm DS nhập I Internet Protocol Giao thức Internet P I Intrustion Prevention Hệ thống ngăn chặn xâm PS System nhập N Network Interface Card Cạc mạng IC N Networt-based Intrustion IDS Detection System O Open Systems Mơ hình kết nối hệ SI Interconnection thống mở S Server Message Block MB T Transport Control Protocol U User Datagtam Protocol CP DP Giao thức điều khiển truyền tải DANH MỤC HÌNH VẼ DANH MỤC BẢNG BIỂU LỜI MỞ ĐẦU Với phát triển khoa học công nghệ, thông tin số hóa lưu trung tâm riêng biệt chia sẻ rộng rãi mạng Việc mát thông tin mạng, lừa đảo mạng, công từ chối dịch vụ,…đã gây nhiều tổn thất kinh doanh gây phiền toái cho người dùng Internet Do đó, an tồn thơng tin vấn đề quan tâm không Việt Nam mà cịn tồn giới Trong lĩnh vực an tồn thơng tin, việc nghiên cứu, phát triển hệ thống bảo vệ thông tin trước công bên ngồi bên ln nhà quản lý trọng Hệ thống phát ngăn chặn xâm nhập đời giải pháp để đáp ứng nhu cầu nhà quản lý Hệ thống phát ngăn chặn xâm nhập dựa phần mềm mã nguồn mở Snort_inline kết hợp ưu điểm hệ thống phát xâm nhập Snort kỹ thuật tường lửa Iptables Nó có khả phát tự động ngăn chặn hành động cố ý truy nhập trái phép vào hệ thống, cơng thăm dị chẳng hạn tràn đệm, quét cổng, công vào Common Gateway Interface (CGI), dò Server Message Block (SMB), nhiều Do đó, em chọn thực đồ án “Nghiên cứu, triển khai hệ thống phát ngăn chặn xâm nhập dựa phần mềm mã nguồn mở Snort_inline” nhằm nghiên cứu, tìm hiểu hệ thống phát xâm nhập Snort, hệ thống kiểm soát truy cập với Iptables từ triển khai hệ thống phát ngăn chặn xâm nhập dựa phần mềm mã nguồn mở Snort_inline Nội dung đồ án chia thành chương: Chương 1: Tổng quan hệ thống phát ngăn chăn xâm nhập Chương trình bày kiến thức hệ thống phát ngăn chặn xâm nhập: khái niệm, chức năng, phân loại, kiến trúc chung, phương thức hoạt động… hệ thống Chương 2: Hệ thống phát xâm nhập Snort tường lửa Iptables Chương trình bày hệ thống phát xâm nhập Snort, tường lửa Iptables Linux kết hợp hai hệ thống để xây dựng hệ thống IPS Chương 3: Triển khai hệ thống phát ngăn chặn xâm nhập dựa phần mềm mã nguồn mở Snort_inline Chương trình bày trình triển khai hệ thống IPS dựa phần mềm mã nguồn mở Snort_inline để phát ngăn chặn xâm nhập mạng trái phép CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG PHÁT HIỆN VÀ NGĂN CHẶN XÂM NHẬP Hệ thống phát xâm nhập (IDS) đời cách khoảng 30 năm trở nên hữu dụng cho việc bảo vệ hệ thống mạng máy tính Bằng cách đưa cảnh báo có dấu hiệu xâm nhập đến hệ thống Thế hệ hệ thống phát xâm nhập hệ thống ngăn chặn xâm nhập (IPS) đời năm 2004, trở nên phổ biến dần thay cho hệ thống IDS Hệ thống IPS có hai chức phát cơng chống lại cơng 1.1 Hệ thống phát xâm nhập (IDS – Intruction Detection System) 1.1.1 Giới thiệu IDS Hệ thống phát xâm nhập IDS thiết bị phần cứng hay phần mềm có chức tự động giám sát, theo dõi thu thập thơng tin từ nhiều nguồn khác nhau, sau phân tích để tìm dấu hiệu xâm nhập hay công hệ thống thông báo đến người quản trị hệ thống Nói cách tổng quát, IDS hệ thống phát dấu hiệu xâm hại đến tính bảo mật, tính tồn vẹn tính sẵn sàng hệ thống máy tính hệ thống mạng, làm sở cho bảo đảm an ninh hệ thống 1.1.2 Chức IDS Hệ thống phát xâm nhập cho phép tổ chức bảo vệ hệ thống họ khỏi đe dọa việc gia tăng kết nối mạng làm tăng tin cậy hệ thống thông tin Những đe dọa an ninh mạng ngày trở nên cấp thiết đặt câu hỏi cho nhà an ninh mạng chuyên nghiệp có nên sử dụng hệ thống phát xâm nhập đặc tính hệ thống phát xâm nhập hữu ích cho họ, bổ sung điểm yếu hệ thống khác IDS có chấp nhận thành phần thêm vào cho hệ thống an tồn hay khơng câu hỏi nhiều nhà quản trị hệ thống Có nhiều tài liệu giới thiệu chức mà IDS làm được, tóm tắt chức sau: Các chức quan trọng nhất: 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, thiết bị dịch vụ mạng, nguồn tài nguyên hệ thống - 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: Các cơng ngồi mạng - Phát hiện: Những dấu hiệu bất thường dựa biết nhờ vào so sánh lưu lượng mạng với baseline Ngoài ra, hệ thống phát xâm nhập IDS cịn có chức năng: - Ngăn chăn gia tăng công - Bổ sung điểm yếu mà hệ thống khác chưa làm - Đánh giá chất lượng việc thiết kế hệ thống 1.1.3 Phân loại IDS Dựa vào đặc điểm nguồn liệu thu thập được, hệ thống phát xâm nhập chia làm hai loại sau: - Networt-based IDS (NIDS): Sử dụng liệu lưu thông toàn mạng, nguồn liệu kiểm tra từ một vài máy trạm để phát xâm nhập 10 - Host-based IDS (HIDS): Sử dụng liệu kiểm tra từ máy trạm đơn để phát xâm nhập 1.1.3.1 Networt-based IDS (NIDS) Hình 1.1: Network-based IDS NIDS hệ thống phát xâm nhập cách thu thập liệu gói tin lưu thông phương tiện truyền dẫn (dây cáp, không dây) cách sử dụng card giao tiếp Khi gói liệu phù hợp với qui tắc hệ thống, cảnh báo tạo để thông báo đến nhà quản trị tập tin log lưu vào sở liệu Ưu điểm: - Quản lý phân đoạn mạng (gồm nhiều host) - Trong suốt với người sử dụng kẻ cơng - Cài đặt bảo trì đơn giản, không ảnh hưởng đến mạng - Tránh cơng DOS ảnh hưởng đến host - Có khả xác định lỗi tầng Network (trong mơ hình OSI) 69 Hình 3.12: Luật phát ping quét cổng viết cho Snort Sau nhấn vào “Save” để lưu lại nội dung luật Bước 3: Từ máy mạng ngồi PC2 tiến hành dị qt máy nội PC1 Nmap (hình 3.13) Hình 3.13: Cửa sổ nmap Sau nhấn “Scan” để thực thi lệnh quét cổng Bước 4: Kết - Trên cửa sổ nmap người dùng thấy cổng 135 mở (hình 3.14) 70 Hình 3.14: Dị qt cổng máy nội thành công nmap - Để hiển thị kết máy CentOS dùng lệnh: # snort –c /etc/snort/rules/snort.conf –i eth0 –A console Được kết hình 3.15: Hình 3.15: Thơng báo có cơng quét cổng Snort sinh 71 Từ hình 3.14 hình 3.15 cho thấy Snort có khả phát công, ngăn chặn công, kẻ công thực thành công công quét cổng 3.3.2.2 Ngăn chặn công quét cổng Iptables Bước 1: Viết luật cho iptables nhận diện/xử lý chống công quét cổng - Soạn thảo tập tin nmap.sh với nội dung sau: #!/bin/sh # Script is for stoping Portscan and smurf attack ### first flush all the iptables Rules iptables -F # INPUT iptables Rules # Accept loopback input iptables -A INPUT -i lo -p all -j ACCEPT # Protecting portscans # Attacking IP will be locked for 24 hours (3600 x 24 = 86400 Seconds) iptables -A INPUT -m recent name portscan rcheck seconds 86400 -j DROP iptables -A FORWARD -m recent name portscan rcheck seconds 86400 -j DROP # These rules add scanners to the portscan list, and log the attempt iptables -A INPUT -p tcp -m tcp dport 139 -m recent name portscan set -j LOG log-prefix "portscan:" iptables -A INPUT -p tcp -m tcp dport 139 -m recent name portscan set -j DROP iptables -A FORWARD -p tcp -m tcp dport 139 -m recent name portscan set -j LOG log-prefix "portscan:" iptables -A FORWARD -p tcp -m tcp dport 139 -m recent name portscan set -j DROP # Allow the following ports through from outside iptables -A INPUT -p tcp -m tcp dport 25 -j ACCEPT 72 iptables -A INPUT -p tcp -m tcp dport 80 -j ACCEPT iptables -A INPUT -p tcp -m tcp dport 443 -j ACCEPT iptables -A INPUT -p tcp -m tcp dport 135 -j ACCEPT # Allow ping means ICMP port is open (If you not want ping replace ACCEPT with REJECT) iptables -A INPUT -p icmp -m icmp icmp-type -j ACCEPT ### You can also add or remove port no as per your requirement iptables -A OUTPUT -p tcp -m tcp dport 25 -j ACCEPT iptables -A OUTPUT -p udp -m udp dport 53 -j ACCEPT iptables -A OUTPUT -p tcp -m tcp dport 80 -j ACCEPT iptables -A OUTPUT -p tcp -m tcp dport 443 -j ACCEPT iptables -A OUTPUT -p tcp -m tcp dport 135 -j ACCEPT - Lưu lại nội dung tập tin cấp quyền thực thi cho tập tin lệnh: # chmod +x nmap.sh - Thực thi tập tin nmap.sh cách chuyển tới thư mục chứa tập tin nmap.sh chạy lệnh: # /nmap.sh Bước 2: Từ máy mạng ngồi PC2 tiến hành dị qt máy nội PC1 Nmap (hình 3.13) Ghi nhận kết (Hình 3.16) 73 Hình 3.16: Dị qt cổng máy PC1 khơng thành cơng nmap Từ hình 3.16 cho thấy Iptables ngăn chặn thành công công quét cổng việc ngăn chặn không thông báo đến máy chủ 74 3.3.2.2 Phát ngăn chặn công quét cổng Snort_inline Bước 1: Viết luật cho Snort_inline, phát ngăn chăn có quét cổng lệnh: # gedit /etc/snort/rules/scan.rules - Nội dung chỉnh sửa tập tin scan.rules sau: drop tcp $EXTERNAL_NET any -> $HOME_NET 80 (msg:"SCAN cybercop os probe"; flow:stateless; dsize:0; flags:SF12; reference:arachnids,146; classtype:attempted-recon; sid:619; rev:6;) drop tcp $EXTERNAL_NET any -> $HOME_NET any (msg:"SCAN XMAS"; flow:stateless; flags:SRAFPU,12; reference:arachnids,144; classtype:attempted-recon; sid:625; rev:7;) drop udp $EXTERNAL_NET any -> $HOME_NET any (msg:"SCAN Webtrends Scanner UDP Probe"; content:"|0A|help|0A|quite|0A|"; reference:arachnids,308; classtype:attempted-recon; sid:637; rev:3;) drop tcp $EXTERNAL_NET any -> $HOME_NET 135 (msg:"SCAN SSH Version map attempt"; flow:to_server,established; content:"Version_Mapper"; nocase; classtype:network-scan; sid:1638; rev:5;) drop tcp $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (msg:"SCAN cybercop os probe"; content:"AAAAAAAAAAAAAAAA"; flow:stateless; depth:16; ack:0; flags:SFP; reference:arachnids,145; classtype:attempted-recon; sid:1133; rev:12;) - Lưu lại nội dung tập tin, sau khởi động lại Snort lệnh: # /etc/init.d/snort restart Bước 2: Từ máy mạng PC2 thực cơng qt cổng chương trình nmap (hình 3.13) - Ghi nhận kết (hình 3.17) 75 Hình 3.17: Tấn cơng qt cổng nmap khơng thành cơng - Từ hình 3.17 thấy kẻ công thực quét cổng không thành công - Xem kiểm tra kết máy CentOS lệnh (hình 3.19): # /usr/local/bin/snort –i eth0:eth1 –A console –c /etc/snort/snort.conf –l /var/log/snort/ -Q 76 Hình 3.18: Thơng báo Snort_inline sinh Từ hình 3.17 hình 3.18 cho thấy Snort_inline phát ngăn chặn thành công công quét cổng Khi Nmap thực công quét cổng vào hệ thống gói tin bị Snort_inline loại bỏ 3.3.3 Kết thống kê thực nghiệm Qua thực nghiệm kiểm tra thấy rằng: - Snort phát có cơng khơng thể ngăn chặn cơng - Iptables ngăn chặn công người dùng đến việc thơng báo khơng gửi đến máy chủ - Snort Iptables làm việc riêng rẽ hiệu để hệ thống vừa phát vừa ngăn chặn cơng người dùng phải tiến hành cài đặt, cấu hình cho hai phần mềm máy chủ, 77 đơi cịn xảy tranh chấp hai hệ thống, việc hiển thị kết hai giao diện khác nhau, điều không tiện lợi cho người dùng - Bên cạnh đó, Snort_inline kết hợp Snort Iptables, nhận thông tin trực tiếp từ Iptables nên kết hiển thị giao diện, trình cài đặt, cấu hình nhanh chóng hơn, tiện lợi cho người dùng, không gây tranh chấp Vì vậy, việc sử dụng phần mềm mã nguồn mở Snort_inline để phát ngăn chặn xâm nhập giải pháp tối ưu nên áp dụng thực tế 78 KẾT LUẬN Sau thời gian thực đồ án với hướng dẫn thầy giáo thu kết sau: - Hiểu vấn đề hệ thống phát xâm nhập hệ thống ngăn chặn xâm nhập - Hiểu cài đặt hệ thống phát xâm nhập Snort, hệ thống ngăn chặn xâm nhập Iptables, kết hợp Snort Iptables - Hiểu cài đặt hệ thống phát ngăn chặn xâm nhập Snort_inline - Triển khai hai hệ thống phát ngăn chặn xâm nhập Snort kết hợp với Iptables Snort_inline để chống lại công mạng đơn giản Đưa đánh giá ưu, nhược điểm hệ thống, từ đề xuất phương án sử dụng thực tế Hướng phát triển - Chỉnh sửa luật Snort_inline để hoạt động linh hoạt, đồng bộ, tối ưu hóa hệ thống ngăn chặn công phức tạp cách hiệu - Tích hợp hệ thống Snort_inline , để có cơng xảy ra, Snort_inline tự động báo tin đến người quản trị thông qua email, SMS tự động đưa phương án thích hợp để vơ hiệu hố cơng - Ứng dụng hệ thống phát ngăn chặn xâm nhập vào mơ hình mạng thực tế quan, đơn vị 79 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Nguyễn Ngọc Long (2010), Đề tài Xây dựng hệ thống phát – chống xâm nhập dựa vào Firewall Iptables IDS Snort, Đại học Kỹ thuật công nghệ TP.HCM [2] TS Lê Đình Thích, ThS Hồng Sỹ Tương (2013), Giáo trình An tồn mạng máy tính [3] Lê Vũ Kim Vương (2011), Đề tài Nghiên cứu, triển khai hệ thống phát ngăn chặn xâm nhập mạng dựa phần mềm mã nguồn mở Snort, Học viện Kỹ thuật mật mã [4] Nguyên Ngọc (2014), Linux Firewall IPtables Configuration #02 – Tìm hiểu Tables, Chains, Rules xử lý packet Iptables, http://anninhmang.net/bai-theo-ky/tim-hieu-ve-tables-chains-rules-va-xu-lypacket-trong-iptables/ [5] Nguyễn Thanh Sơn (2015), Install Snort –inline on CentOS, http://anninhmang.net/kien-thuc-an-ninh-mang/install-snort-inline-centos/ Tiếng Anh [6] Brian (2015), Snort_inline on CentOS, Linux [7] Refeeq Ur Rehman (2003), Intrustion Detection Systems with Snort Advaneed IDS Techniques Using Snort, Apache, MySQL, PHP and ACID, Prentice Hall PTR Upper Saddle River, New Jersey 07458 [8] SumitiBansal, Mandeep Singh, Saurabh Mittal (2014), Developing rules or Signatures to Detect Novel Attacks using open Source IDS: Snort, International Journal of Advanced Research in Computer Science and Software Engineering ... hai hệ thống để xây dựng hệ thống IPS Chương 3: Triển khai hệ thống phát ngăn chặn xâm nhập dựa phần mềm mã nguồn mở Snort_inline Chương trình bày trình triển khai hệ thống IPS dựa phần mềm mã nguồn. .. thống phát ngăn chặn xâm nhập dựa phần mềm mã nguồn mở Snort_inline? ?? nhằm nghiên cứu, tìm hiểu hệ thống phát xâm nhập Snort, hệ thống kiểm sốt truy cập với Iptables từ triển khai hệ thống phát. .. vệ hệ thống mạng máy tính Bằng cách đưa cảnh báo có dấu hiệu xâm nhập đến hệ thống Thế hệ hệ thống phát xâm nhập hệ thống ngăn chặn xâm nhập (IPS) đời năm 2004, trở nên phổ biến dần thay cho hệ

Ngày đăng: 09/11/2017, 13:50

Từ khóa liên quan

Mục lục

  • LỜI CẢM ƠN

  • LỜI CAM ĐOAN

  • MỤC LỤC

  • CÁC KÝ HIỆU, CHỮ VIẾT TẮT

  • DANH MỤC HÌNH VẼ

  • DANH MỤC BẢNG BIỂU

  • LỜI MỞ ĐẦU

  • CHƯƠNG 1: TỔNG QUAN VỀ HỆ THỐNG PHÁT HIỆN VÀ NGĂN CHẶN XÂM NHẬP

    • 1.1. Hệ thống phát hiện xâm nhập (IDS – Intruction Detection System)

      • 1.1.1. Giới thiệu về IDS

      • 1.1.2. Chức năng của IDS

      • 1.1.3. Phân loại IDS

      • 1.1.4. Kiến trúc của IDS

    • 1.2. Hệ thống ngăn chặn xâm nhập (IPS – Intruction Prevention System)

      • 1.2.1. Khái niệm

      • 1.2.2. Chức năng của IPS

      • 1.2.3. Kiến trúc chung của hệ thống IPS

      • 1.2.4. Phân loại IPS

      • 1.2.5. Các kỹ thuật xử lý IPS

  • CHƯƠNG 2: HỆ THỐNG PHÁT HIỆN XÂM NHẬP SNORT VÀ TƯỜNG LỬA IPTABLES

    • 2.1. Hệ thống phát hiện xâm nhập Snort

      • 2.1.1. Giới thiệu về Snort

      • 2.1.2. Các thành phần của Snort

      • 2.1.3. Các chế độ hoạt động của Snort

      • 2.1.4. Cấu trúc luật của Snort

    • 2.2. Hệ thống tường lửa IPtables

      • 2.2.1. Giới thiệu về IPtables

      • 2.2.2. Cấu trúc của IPtables

      • 2.2.3. Cơ chế xử lý gói tin.

      • 2.2.4. Jumps và Targets

      • 2.2.5. Tìm hiểu các câu lệnh và thiết lập luật trong Iptables

      • 2.2.6. Ưu điểm và nhược điểm của Iptables

    • 2.3. Xây dựng một IPS dựa trên Snort và Iptables

      • 2.3.1. Snort_inline

      • 2.3.2. Snort_inline và Iptables

  • CHƯƠNG 3: TRIỂN KHAI HỆ THỐNG PHÁT HIỆN VÀ NGĂN CHẶN XÂM NHẬP DỰA TRÊN PHẦN MỀM MÃ NGUỒN MỞ SNORT_INLINE

    • 3.1. Cài đặt Snort

      • 3.1.1. Cài đặt các gói cần thiết cho Snort

      • 3.1.2. Cài đặt, cấu hình Snort

    • 3.2. Mô hình triển khai

    • 3.3. Triển khai hệ thống

      • 3.3.1. Kịch bản 1: Phát hiện và ngăn chặn tấn công gây ngập lụt hệ thống bằng lệnh ping

      • 3.3.2. Kịch bản 2: Phát hiện và ngăn chặn tấn công quét cổng (Scanning Port)

      • 3.3.3. Kết quả thống kê thực nghiệm

  • KẾT LUẬN

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan