1. Trang chủ
  2. » Luận Văn - Báo Cáo

(Đồ án hcmute) xây dựng phần mềm phân tích dữ liệu và phát hiện xâm nhập mạng

80 3 0

Đ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

BỘ 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 ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ THÔNG TIN XÂY DỰNG PHẦN MỀM PHÂN TÍCH DỮ LIỆU VÀ PHÁT HIỆN XÂM NHẬP MẠNG GVHD:NGUYỄN THỊ THANH VÂN SVTT:ĐỖ MINH HẬU MSSV:15110198 SVTT: LÊ HOÀNG KHA MSSV:15110227 SKL 0 7 Tp Hồ Chí Minh, năm 2019 an TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA CÔNG NGHỆ THƠNG TIN BỘ MƠN MẠNG MÁY TÍNH - - ĐỖ MINH HẬU: 15110198 LÊ HOÀNG KHA: 15110227 ĐỀ TÀI: Xây dựng phần mềm phân tích liệu phát xâm nhập mạng KHĨA LUẬN TƠT NGHIỆP CHUYÊN NGÀNH KỸ SƯ CNTT GIÁO VIÊN HƯỚNG DẪN: ThS Nguyễn Thị Thanh Vân KHÓA 2015 – 2019 an ĐH SƯ PHẠM KỸ THUẬT TP.HCM XÃ HỘI CHỦ NGHĨA VIỆT NAM KHOA CNTT Độc lập – Tự – Hạnh phúc ******* ******* PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Họ tên Sinh viên 1: Đỗ Minh Hậu MSSV 1: 15110198 Họ tên Sinh viên 2: Lê Hồng Kha MSSV 2: 15110227 Ngành: Cơng Nghệ Thơng Tin Tên đề tài: Xây dựng phần mềm phân tích liệu phát xâm nhập mạng Họ tên Giáo viên hướng dẫn: Nguyễn Thị Thanh Vân NHẬN XÉT Về nội dung đề tài & khối lượng thực ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Ưu điểm ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Khuyết điểm ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: Tp Hồ Chí Minh, ngày tháng năm 2019 Giáo viên hướng dẫn (Ký & ghi rõ họ tên) i an ĐH SƯ PHẠM KỸ THUẬT TP.HCM XÃ HỘI CHỦ NGHĨA VIỆT NAM KHOA CNTT Độc lập – Tự – Hạnh phúc ******* ******* PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Họ tên Sinh viên 1: Đỗ Minh Hậu MSSV 1: 15110198 Họ tên Sinh viên 2: Lê Hồng Kha MSSV 2: 15110227 Ngành: Cơng Nghệ Thông Tin Tên đề tài: Xây dựng phần mềm phân tích liệu phát xâm nhập mạng Họ tên Giáo viên phản biện: Huỳnh Nguyên Chính NHẬN XÉT Về nội dung đề tài & khối lượng thực ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Ưu điểm ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Khuyết điểm ………………………………………………………………………………………… ………………………………………………………………………………………… ………………………………………………………………………………………… Đề nghị cho bảo vệ hay không? Đánh giá loại: Điểm: Tp Hồ Chí Minh, ngày tháng năm 2019 Giáo viên phản biện (Ký & ghi rõ họ tên) ii an LỜI CẢM ƠN Nhóm em xin chân thành cám ơn khoa Công Nghệ Thông Tin, Bộ Môn Mạng Máy Tính, trường Đại học Sư Phạm Kỹ Thuật Tp.HCM tạo điều kiện thuận lợi cho chúng em thực đề tài Chúng em xin gửi lời cảm ơn chân thành đến cô Nguyễn Thị Thanh Vân, người tận tình bảo hướng dẫn nhóm em thực đề tài Bên cạnh đó, chúng em xin gửi lời cảm ơn đến thầy cô giảng viên trường Đại Học Sư Phạm Kỹ Thuật Tp.HCM nói chung thầy giảng viên khoa Cơng Nghệ Thơng Tin nói riêng, người giảng dạy, tạo điều kiện cho em tích lũy kiến thức quý báu năm học qua Dù cố gắng hoàn thành đề tài khóa luận yêu cầu, thời gian hạn hẹp khả hạn chế nên chắn khơng tránh khỏi thiếu sót Chúng em mong nhận thơng cảm tận tình bảo thầy bạn Nhóm em xin chân thành cảm ơn iii an Trường ĐH SƯ PHẠM KỸ THUẬT TP.HCM KHOA CNTT ******* ĐỀ CƯƠNG LUẬN VĂN TỐT NGHIỆP Họ tên Sinh viên : Đỗ Minh Hậu MSSV : 15110198 Họ tên Sinh viên : Lê Hoàng Kha MSSV : 15110227 Thời gian làm luận văn : Từ: 16/3/2019 Đến: 14/7/2019 Chuyên ngành : Mạng Máy Tính Tên luận văn : Xây dựng phần mềm phân tích liệu phát xâm nhập mạng GV hướng dẫn : Nguyễn Thị Thanh Vân Nhiệm vụ luận văn: Tìm hiểu lý thuyết kiểu ý nghĩa việc phân tích liệu mạng Tìm hiểu dấu hiệu công mạng cách phát Xây dựng phần mềm phân tích liệu mạng phát xâm nhập Triển khai phần mềm Thực nghiệm sửa lỗi Viết báo cáo Tóm tắt đề cương: Phần 1: Mở đầu Lý chọn đề tài Mục tiêu đối tượng nghiên cứu Mục tiêu nhiệm vụ đề tài Phương pháp nghiên cứu Ý nghĩa khoa học thực tiễn Phần 2: Nội dung lý thuyết Chương Tổng quan liệu mạng máy tính 1.1 Các khái niệm liên quan 1.2 Socket 1.3 Giao thức 1.4 Mơ hình TCP/IP 1.5 Một số giao thức iv an 1.6 Quá trình vận chuyển liệu bắt gói tin mạng Chương Tổng quan xâm nhập mạng hệ thống IDS 2.1 Khái niệm xâm nhập mạng 2.2 Các phương pháp phát xâm nhập mạng 2.3 Network Package Sniffing 2.4 Dấu hiệu cách phát số dạng công mạng phổ biến 2.5 Hệ thống IDS Chương Xây dựng phần mềm phân tích liệu phát xâm nhập mạng 3.1 Kiến trúc phần mềm 3.2 Thiết kế thành phần 3.3 Thiết kế Package 3.4 Thiết kế class function 3.5 Thiết kế Phần 3: Thực nghiệm Mơ hình thực nghiệm Kịch công Kết Phần 4: Kết luận Kết đạt Hướng phát triển tương lai KẾ HOẠCH THỰC HIỆN STT Thời gian 15 tháng – Tìm hiểu yêu cầu xác định 27 tháng Cơng việc Ghi Tìm tài liệu mục tiêu đề tài 28 tháng – Viết đề cương Tìm tham khảo source 10 tháng Tìm hiểu sniff packet code github, video ngôn ngữ python hướng dẫn youtube (thenewboston) 11 tháng – Code sniff packet using 15 tháng Lỗi python 16 tháng – Fix lỗi môi trường python3 v an Lỗi sử dụng môi trường pycharm, tiến 27 tháng hành chạy trực tiếp hệ điều hành máy ảo 28 tháng – Code nhận phát gói tin Demo test code 29 tháng ping sniff 30 tháng – Code bắt đóng gói gói tin 10 tháng Chưa định dạnh output theo định dạng phục vụ việc kiểm tra gói tin 11 tháng – Code phát công Vẫn nhầm lẫn giữ 17 tháng ping thường ping of ping of death death, 18 tháng – Code phát Xmas Máy hacker gửi gói tin 21 tháng nhanh dẫn đến việc tree scan, Null scan hệ thống bó sót số gói tin 22 tháng – Code phát Fin scan 24 tháng 10 Code chức gửi mail, công cảnh báo audio, sms audio, gửi mail, sms 25 tháng – Tìm hiểu source code DVWA 27 tháng Hệ thống phát để demo công sql injection Lỗi sms dùng Sinchsms Việt Nam nằm blacklist ứng dụng 11 28 tháng – Dựng web server tháng Lỗi ubuntu 18.04 dùng source code DVWA 12 tháng – Dựng thành công demo Lỗi chưa đổi password tháng công sql injection MySQL Ý kiến giáo viên hướng dẫn Ngày tháng năm 2019 (Ký ghi rõ họ tên) Người viết đề cương Đỗ Minh Hậu vi an MỤC LỤC MỤC LỤC vii DANH MỤC HÌNH ẢNH DANH MỤC BẢNG BIỂU x PHẦN MỞ ĐẦU 1 Lý chọn đề tài Mục tiêu đối tượng nghiên cứu 3 Mục tiêu nhiệm vụ Phương pháp nghiên cứu Ý nghĩa khoa học thực tiễn PHẦN NỘI DUNG Chương TỔNG QUAN VỀ DỮ LIỆU VÀ MẠNG MÁY TÍNH 1.1 Các khái niệm liên quan 1.1.1 Mạng máy tính 1.1.2 Lưu lượng mạng 1.1.3 Dữ liệu mạng 1.1.4 Gói tin 1.1.5 Ý nghĩa việc phân tích liệu mạng 1.2 Socket Khái niệm Socket 1.2.1 1.2.2 Số hiệu cổng (Port Number) socket 1.2.3 Phân loại socket 1.2.4 Module socket Python 1.3 Giao thức 10 1.3.1 Khái niệm giao thức 10 1.3.2 Chức giao thức giao tiếp 10 1.4 Mơ hình TCP/IP 12 1.4.1 Mơ hình kiến trúc TCP/IP 12 1.4.2 Vai trò chức tầng mơ hình TCP/IP 13 1.4.3 Q trình đóng gói liệu Encapsulation 14 1.4.4 Quá trình phân mảnh liệu Fragment 15 1.5 Một số giao thức 16 1.5.1 Giao thức gói tin người sử dụng UDP (User Datagram Protocol) 16 vii an 1.5.2 Giao thức điều khiển truyền TCP (Transmission Control Protocol) 17 1.5.3 Giao thức mạng IP 19 1.5.4 Giao thức thông báo điều khiển mạng ICMP (Internet Control Message Protocol) 21 1.5.5 Giao thức phân giải địa ARP (Address Resolution Protocol) 23 1.5.6 Giao thức phân giải địa ngược RARP (Reverse Address Resolution Protocol) 25 1.5.7 Giao thức truyền tải siêu văn bảng HTTP (Hypertext Transper Protocol) 25 1.6 Quá trình vận chuyển liệu bắt gói tin mạng (Packet sniffer) 29 1.6.1 Quá trình xử lý vận chuyển liệu mạng 29 1.6.2 Bắt gói tin lưu thông mạng (Packet sniffer) 34 Chương TỔNG QUAN VỀ XÂM NHẬP MẠNG VÀ HỆ THỐNG IDS 36 2.1 Khái niệm xâm nhập mạng 36 2.2 Các phương pháp phát xâm nhập mạng 36 2.2.1 Nhận biết dựa vào dấu hiệu (Signature-base) 36 2.2.2 Nhận biết dấu hiệu bất thường (Anomaly-base) 36 2.2.3 Phân tích trạng thái giao thức (Stateful protocol analysis) 37 2.3 Network Package Sniffing 37 2.3.1 Khái niệm 37 2.3.2 Một số loại sniffing 38 2.4 Dấu hiệu cách phát số công mạng phổ biến 38 2.4.1 Ping of death 38 2.4.2 Scan port 39 2.4.3 SQL injection 41 2.5 Hệ thống IDS 41 2.5.1 Kiến trúc IDS 42 2.5.2 Phân loại hệ thống IDS 43 Chương XÂY DỰNG PHẦN MỀM PHÂN TÍCH DỮ LIỆU VÀ PHÁT HIỆN XÂM NHẬP MẠNG 46 3.1 Kiến trúc phần mềm 46 3.2 Thiết kế thành phần 46 3.2.1 Sơ đồ thành phần hệ thống 46 3.2.2 Sơ đồ thành phần phân tích liệu mạng (sniffAnaly_use) 47 3.2.3 Sơ đồ thành phần kiểm tra công (check_use) 48 3.2.4 Sơ đồ thành phần thông báo (alert_use) 48 viii an Hình 8: Code check fin scan Hàm check_nullscan: Tên check_nullscan Chức Kiểm tra công Null scan Inputs Địa IP cờ ACK, FIN, PSH, RST, SYN, URG Outputs điều kiện kiểm tra Pre – conditions Gói tin bắt đóng gói theo định dạng Post – conditions Hàm sniff_use nhận giá trị trả Bảng 10: Hàm check_nullscan Hình 9: Code check null scan Hàm check_ping: Tên check_ping Chức Kiểm đối tượng ping tới hệ thống 54 an Inputs Địa IP độ dài gói tin Outputs điều kiện kiểm tra Pre – conditions Gói tin bắt đóng gói theo định dạng Post – conditions Hàm sniff_use nhận giá trị trả Bảng 11: Hàm check_ping Hình 10: Code check ping Hàm check_pingofdeath: Tên check_pingofdeath Chức Kiểm tra công ping of death Inputs Địa IP độ dài gói tin Outputs điều kiện kiểm tra Pre – conditions Gói tin bắt đóng gói theo định dạng Post – conditions Hàm sniff_use nhận giá trị trả Bảng 12: Hàm check_ping of death 55 an Hình 11: Code check ping of death Hàm check_sqlinjection: Tên check_sqlinjection Chức Kiểm tra công sql injection Inputs raw_data Outputs điều kiện kiểm tra Pre – conditions Bắt gói tin Post – conditions Hàm sniff_use nhận giá trị trả Bảng 13: Hàm check_sql injection Hình 12: code check sql injectino Hàm check_xmastree: Tên check_xmastree 56 an Chức Kiểm tra công Xmas tree scan Inputs Địa IP cờ FIN, URG, PSSH Outputs điều kiện kiểm tra Pre – conditions Gói tin bắt đóng gói theo định dạng Post – conditions Hàm sniff_use nhận giá trị trả Bảng 14: Hàm check_xmastree Hình 13: Code check xmas tree scan Hàm send_mail: send_mail Tên Chức Gửi mail Inputs Nội dung mail Outputs Không Pre – conditions Thỏa điều kiện kiểm tra công Post – conditions Quản tri viên nhận mail Bảng 15: Hàm send_mail 57 an Hình 14: Code send mail Hàm send_sound: Tên send_sound Chức Báo động âm Inputs File âm anh Outputs Không Pre – conditions Thỏa điều kiện kiểm tra công Post – conditions Nhận âm từ hệ thống Bảng 16: Hàm send_sound Hình 15: Code send sound 58 an 3.5 Thiết kế Trong phần nhóm em trình bày trình tự vận hành cách giao tiếp thành phần hệ thống người dùng thiết bị bên 3.5.1 Sơ đồ hệ thống Hình 16: Sơ đồ phần mềm Sơ đồ cho thấy trình tự chuỗi hoạt động hệ thống phát xâm nhập Trình tự bắt đầu với việc người dùng chạy hàm main.py hệ thống Do giới hạn thời gian kiến thức nên nhóm em chạy hệ thống giao diện terminal Giao diện terminal thông báo package import Sau hàm main.py gọi hàm sniffAnaly_use để bắt phân tích gói tin Hàm sniffAnaly_use import package định dạng gói tin, ghi file log liệu bắt đóng gói gói tin Sau gửi gói tin đến hàm kiểm tra Hàm kiểm tra thực kiểm tra dấu hiệu xâm nhập Nếu dấu phát dấu hiệu phù hợp ghi file IP.txt gửi thông tin cho sniffAnaly_use để sniffAnaly_use thông báo cho người dùng Quy trình quy trình lặp lại cho gói tin bắt 59 an Chương 4: THỰC NGHIỆM 4.1 Mơ hình thực nghiệm Hình 1: Mơ hình thực nghiệm Trong mơ hình trên, phần mềm phân tích liệu phát xâm nhập nhóm em hoạt động Server kết nối với card mạng LAN – card mạng kết nối với VMnet8 có địa 192.168.181.141 Phần mềm bắt phân tích tất gói tin vào card mạng Nhóm em giả sử kẻ công xâm nhập vào mạng LAN, kết nối vào VMnet8 có địa IP 192.168.181.135 sau thực cơng mạng đến Server 4.2 Kịch công Phát web server công ty bảo mật nên hacker công SQL injection Kẻ công lấy thông tin thành viên quản trị, bao gồm admin Tuy nhiên, thơng tin cũ khơng cịn giá trị lợi dụng Không dừng lại, cách kẻ cơng xâm nhập vào mạng LAN công ty, với ý định xấu, kẻ công thực bước scan port Nhưng phần lớn port server công ty mặc định đống trừ port 80 443 mở cho hoạt động web server Nên hacker thực cơng Dos (ping of death) hệ thống 4.3 Q trình thực kết Để khởi động phần mềm, truy cập vào thư mục phần mềm nơi chứa hàm main.py Sau dùng lệnh sudo python3 main.py để khởi chạy phần mềm 60 an Hình 2: Khởi động phần mềm Hệ thống phát hành vi ping thử nghiệm hệ thống, scan port (bao gồm xmas tree scan, fin scan, null scan), công dos (ping of death) sql injection hacker bật audio báo động đồng thời gửi mail đến quản trị viên hệ thống 4.3.1 Xmas tree scan Thực cơng: Hình 3: Demo Xmas tree scan Sau bắt gói tin có dấu hiệu công Xmas tree scan, hệ thống phát gửi mail đến quản trị viên: Hình 4: Mail cảnh báo xmas tree scan Đọc file log pcap phần mềm đưa Wireshark thấy loạt gói tin với cờ FIN, URG, PSH bật gửi từ IP kẻ công đến IP server 61 an Hình 5: Dấu hiệu xmas tree scan file log 4.3.2 FIN scan Thực công: Hình 6: Demo fin scan Sau bắt gói tin có dấu hiệu cơng Xmas tree scan, hệ thống phát gửi mail đến quản trị viên: Hình 7: Mail cảnh báo fin scan 4.3.3 Null scan Thực cơng: Hình 8: Demo null scan 62 an Sau bắt gói tin có dấu hiệu cơng Null scan, hệ thống phát gửi mail đến quản trị viên: Hình 9: Mail cảnh báo null scan 4.3.4 Ping of death Thực cơng: Hình 10: Demo ping of death Sau bắt gói tin có dấu hiệu cơng ping of death, hệ thống phát gửi mail đến quản trị viên: Hình 11: Mail cảnh báo ping of death Khi mở file log capture.pcap phần mềm Wireshark dễ dàng nhận thấy loạt gói tin từ IP kẻ tấng công gửi đến IP server 63 an Hình 12: Dấu hiệu ping of death đọc từ file log 4.3.5 SQL injection Thực cơng: Hình 13: Demo SQL injection Sau bắt gói tin có dấu hiệu cơng SQL injecgtion, hệ thống phát gửi mail đến quản trị viên: Hình 14: Mail cảnh báo sql injection Khi mở dị lại file log Wireshark nhận thấy gói tin HTTP có dấu hiệu cơng sql injection 64 an Hình 15: Dấu hiệu công sql injection đọc từ file log 65 an PHẦN KẾT LUẬN Kết đạt Sau q trình nghiên cứu thực nghiệm nhóm em hiểu biết thêm mạng máy tính, liệu lưu thông mạng, số giao thức mạng phổ biến, q trình vận chuyển đóng gói gói tin, cách thức hoạt động số dạng công mạng Xây dựng hệ thống phân tích liệu phát số dạng xâm nhập mạng phổ biến, hoạt động ổn định, có chức báo động audio gửi mail Tuy nhiên, hạn chế kiến thức kinh nghiệm nên hệ thống hoàn thiện mức bản, số dạng cơng chưa có khả phát hiện, chưa khắc phục tình trạng gói tin kẻ cơng gửi gói tin với tốc độ lớn Hướng phát triển tương lai Trong tương lai, có điều kiện nghiên cứu sâu dạng công mới, AI, sms python hy vọng phát triển tiếp tục hệ thống thêm khả marching learning cho hệ thống việc phát công (đặc biệt công DoS), gửi sms có cố khẩn cấp 66 an TÀI LIỆU THAM KHẢO TS Phạm Thế Quế, Giáo trình mạng máy tính, Hà Nội, 2006 [Online] Available: https://vi.scribd.com/doc/27246858/PhAn-tIch-gOiTin-v%E1%BB%9Ai-Wireshark [Online] Available: https://vi.wikipedia.org/wiki/TCP/IP [Online] Available: https://vnpro.vn/tin-tuc/gioi-thieu-tong-quan-ve-bogiao-thuc-tcpip-1103.html [Online] Available: https://tailieu.vn/doc/luan-van-he-thong-phat-hienxam-nhap-mang-1230684.html [Online] Available: https://quantrimang.com/nhung-giao-thuc-mangpho-bien-hien-nay-162843 [Online] Available: https://github.com/buckyroberts/Python-PacketSniffer 67 an S an K L 0

Ngày đăng: 27/12/2023, 03:49

Xem thêm: