ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ KIỀU PHI HÙNG XÂY DỰNG THỬ NGHIỆM CÔNG CỤ PHÁT HIỆN VÀ KHAI THÁC CÁC LỖ HỔNG AN NINH Ngành: Công nghệ Thông tin Chuyên ngành: An toàn Thông tin Mã số: 8480202.01 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƢỜI HƢỚNG DẪN KHOA HỌC: GS. NGUYỄN THANH THỦY Hà Nội - 2019 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 2 LỜI CẢM ƠN Đầu tiên tôi xin bày tỏ lòng cảm ơn chân thành và sâu sắc nhất đến GS. Nguyễn Thanh Thủy vì sự hƣớng dẫn và chỉ bảo tận tình cùng với những định hƣớng, những lời khuyên, những kiến thức vô cùng quý giá của Thầy trong quá trình em theo học cũng nhƣ làm luận văn tốt nghiệp. Tôi xin đƣợc gửi lời cảm ơn tới các Thầy Cô trong khoa Công nghệ thông tin – trƣờng Đại học Công Nghệ - Đại học Quốc gia Hà Nội nói chung cũng nhƣ các thầy cô trong bộ môn An toàn thông tin nói riêng đã tận tình giảng dạy, trang bị cho tôi những kiến thức quý báu trong quá trình tôi theo học tại khoa.
Đây cũng chính là tiền đề để tôi có đƣợc những kiến thức cần thiết để hoàn thành luận văn này. Cuối cùng, tôi cũng xin đƣợc gửi lời cảm ơn tới các Thầy Cô giáo cùng các anh chị em bạn bè đang theo học tại bộ môn An toàn thông tin đã rất tận tình chỉ bảo và tạo điều kiện tốt nhất để tôi đƣợc làm việc trên bộ môn với đầy đủ trang thiết bị cần thiết để tôi có thể hoàn thành tốt nhất luận văn này. Mặc dù đã rất cố gắng nhƣng luận văn chắc chắn không tránh khỏi những thiếu sót, tôi rất mong nhận đƣợc những ý kiến đánh giá và phê bình từ phía các Thầy Cô để luận văn đƣợc hoàn thiện hơn. Tôi xin chân thành cảm ơn! Hà nội, tháng 05 năm 2019 Học viên Kiều Phi Hùng LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 3 LỜI CAM ĐOAN Tôi xin cam đoan luận văn tốt nghiệp với đề tài “Xây dựng thử nghiệm công cụ phát hiện và khai thác các lỗ hổng an ninh” đây là công trình nghiên cứu của riêng tôi dƣới sự hƣớng dẫn của GS.
Nguyễn Thanh Thủy. Các kết quả tôi trình bày trong luận văn là hoàn toàn trung thực và chƣa từng đƣợc nộp nhƣ một khóa luận, luận văn hay luận án tại trƣờng Đại học Công Nghệ - Đại học Quốc gia Hà Nội hoặc bất kỳ trƣờng đại học nào khác. Tôi đã trích dẫn đầy đủ các tài liệu tham khảo, các công trình nghiên cứu liên quan trong nƣớc và quốc tế trong phần tài liệu tham khảo. Ngoại trừ các tài liệu tham khảo này, luận văn này hoàn toàn là công việc của riêng tôi.
Nếu có bất cứ phát hiện nào về sự gian lận sao chép tài liệu, công trình nghiên cứu của tác giả khác mà không ghi rõ trong phần tài liệu tham khảo, tôi xin chịu hoàn toàn trách nhiệm về kết quả luận văn của mình. Hà Nội, tháng 05 năm 2019 Học viên Kiều Phi Hùng LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 4 MỤC LỤC DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT. 6 DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ. 10 CHƢƠNG 1: TỔNG QUAN VỀ KIỂM THỬ AN NINH.
Khái niệm cơ bản. Phân loại kiểm thử an ninh. Kiểm thử hộp trắng. Kiểm thử hộp đen.
Kiểm thử hộp xám. Quy trình kiểm thử an ninh. Giai đoạn khởi tạo. Đặt phạm vi.
Thu thập thông tin trƣớc khi kiểm thử. Tuyên bố công việc. Quyền kiểm thử chuyên sâu. Thực thi kiểm thử.
Báo cáo kiểm thử an ninh. 15 CHƢƠNG 2: TỔNG QUAN VỀ METASPLOIT. Khái niệm cơ bản. Lịch sử Metasploit.
Các phiên bản của Metasploit. Tổng quan về Metasploit Framework. Cấu trúc của Metasploit Framework. Quy trình kiểm thử trên Metasploit Framework.
24 CHƢƠNG 3: MỞ RỘNG TÍNH NĂNG TẠO BÁO CÁO CHO METASPLOIT FRAMEWORK. 25 LUAN VAN CHAT LUONG download : add luanvanchat@agmail. Xác định chuẩn báo cáo trong Metasploit Pro. Xác định các loại báo trên Metasploit Pro.
Chuẩn bị dữ liệu để kết xuất. Chuẩn bị dữ liệu tấn công kiểm thử. Tấn công kiểm thử. Thiết kế công cụ tạo báo cáo.
Đƣa ra giải pháp. Thiết kế Logic. Viết chƣơng trình và chạy thử nghiệm công cụ. Viết chƣơng trình.
Chạy thử nghiệm công cụ. Kết quả đạt đƣợc. 54 CHƢƠNG 4: KÊT LUẬN. 60 TÀI LIỆU THAM KHẢO.
61 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 6 DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT Ký hiệu Thuật ngữ Ý nghĩa Code Mã (trong phần mềm) Database Cơ sở dữ liệu Exploit Mã tìm kiếm lỗ hổng, các điểm yếu, back door. Gem Gói thƣ viện sẵn có trên trang Rubygem Hacker Tin tặc Hash Kiểu dữ liệu dạng từ điển HTML Hyper Text Markup Language Ngôn ngữ đánh dấu siêu văn bản IDS Intrusion Detection System Hệ thống phát hiện xâm nhập Meterpreter Mã khai thác khi xâm nhập thành công MSF Metasploit Framework PDF Portable Document Format Định dạng tài liệu di động PostgreSQL Hệ quản trị cơ sở dữ liệu quan hệ và đối tƣợng XML eXtensible Markup Language Ngôn ngữ đánh dấu mở rộng LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 7 DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ Hình 1. 1 Quy trình kiểm thử an ninh. 1 Metasploit Community Edition.
4 Tính năng tích hợp hỗ trợ giao tiếp với bên ngoài. 5 Tính năng tự động. 6 Tính năng xâm nhập. 7 Cấu trúc của Metasploit Framework.
1: Đề xuất báo cáo trên Metasploit Pro. 2: Chuẩn báo cáo trong Metasploit Pro. 3: Các loại báo trên Metasploit Pro. 4 Quét mục tiêu trên Armitage.
5 Tấn công bằng chế độ Hail Mary. 6 Tấn công bằng các Exploit tìm đƣợc. 7 Tạo kết quả tấn công dƣới định dạng XML. 8 Báo cáo chuẩn PCI DSS trên Metasploit Pro.
9 Sơ đồ ngữ cảnh sử dụng. 10 Các chức năng chính của công cụ. 11 Sơ đồ luồng dữ liệu. 12 File ruby report.
13 Thƣ mục Report_engine. 14 Cấu trúc module công cụ. 15 Thiết kế vật lý. 16 Đọc thông tin Host.
17 Đọc thông tin dịch vụ, lỗ hổng. 18 Danh sách lệnh. 19 Khởi động Plugin. 20 Lệnh Report_banner.
21 Lệnh Check_db. 22 Lệnh Check_report. 23 Lệnh Check_status. 24 Lệnh Use_datapack.
51 LUAN VAN CHAT LUONG download : add luanvanchat@agmail. 25 Lệnh Unuse_datapack. 26 Lệnh Remove_datapack. 27 Lệnh Collect_info.
28 Lệnh Gen_report. 30 Báo cáo kiểm định thu đƣợc. 31 Báo cáo dịch vụ thu đƣợc. 32 Báo cáo tuân thủ chuẩn PCI thu đƣợc.
57 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 9 TÓM TẮT Trong thời đại công nghệ thông tin phát triển nhƣ hiện nay thì vấn đề về đảm bảo an toàn, an ninh thông tin luôn đƣợc đặt lên hàng đầu, trong đó phƣơng pháp kiểm thử an ninh luôn đƣợc sử dụng phổ biến nhất nhằm xác định các mối đe dọa trong hệ thống và các lỗ hổng tiềm tàng của nó. Việc này vừa giúp hệ thống khỏi các nguy cơ liên quan đến bảo mật, vừa giúp các nhà phát triển khắc phuc những vấn đề còn tồn đọng trong thiết kế. Hiện nay rất nhiều các công cụ phần mềm đƣợc ra đời nhằm thực hiện và hỗ trợ việc kiểm thử an ninh này, tuy nhiên nổi bật nhất phổ biến nhất đƣợc hầu hết các chuyên gia bảo mật đánh giá cao và sử dụng chính là Metasploit hay còn có thể gọi là Metasploit Project. Đây là một dự án liên quan đến bảo mật máy tính, cung cấp những thông tin về các lỗ hổng bảo mật.
Đối tƣợng nhắm đến của Metasploit chính là những quá trình tấn công xâm nhập kiểm thử (Penetration Testing) và phát triển các hệ thống phát hiện xâm nhập (Intrusion Detection System – IDS). Metasploit hiện nay đã phát triển ra nhiều phiên bản khác nhau, nếu muốn sử dụng phiên bản tốt nhất với tất cả các tính năng ƣu việt nhất thì bạn phải trả chi phí sử dụng hàng năm rất lớn (khoảng 7000$-8000$/ năm) còn nếu không đủ khả năng chi trả thì chỉ có thể sử dụng phiên bản miễn phí với giao diện dòng lệnh, thiếu đi rất nhiều các tính năng hữu ích và quan trọng. Do đó mục đích của chúng tôi là phát triển mở rộng thêm tính năng tạo báo cáo về kết quả của các phiên kiểm thử an ninh theo định dạng PDF và HTML cho phiên bản mã nguồn mở miễn phí của Metasploit , vốn là một tính năng chỉ có trong phiên bản thƣơng mại đắt tiền nhất của Metasploit Pro. LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 10 GIỚI THIỆU Hiện nay vấn đề về mất an toàn thông tin trên các hệ thống thông tin, hệ thống mạng và không gian mạng đƣợc quan tâm rất lớn trên toàn thế giới.
Trong những năm gần đây chúng ta đã chứng kiến những cuộc tấn công mạng, sự cố mạng quy mô cực kì lớn, các tin tặc đã lợi dụng các lỗ hổng trong hệ thống để đánh cắp dữ liệu mật hay trực tiếp tống tiền trên quy mô toàn cầu. Do đó để giúp hệ thống tránh khỏi các nguy cơ liên quan đến bảo mật, đồng thời giúp các nhà phát triển khắc phục những vấn đề còn tồn đọng trong thiết kế thì phƣơng pháp kiểm thử an ninh đƣợc áp dụng và sử dụng phổ biến nhất. Để thực hiện kiểm thử một cách tốt nhất đem lại kết quả cao nhất thì rất nhiều bộ công cụ hay phần mềm hỗ trợ và thực thi kiểm thử đƣợc ra đời. Hiện nay nổi bật nhất phổ biến nhất đƣợc hầu hết các chuyên gia bảo mật đánh giá cao và sử dụng chính là Metasploit.
Công cụ này cung cấp cho ta các chức năng để do thám kiểm tra và tấn công các lỗ hổng của hệ thống máy tính hoặc xâm nhập vào các hệ thống từ xa. Metasploit hiện nay đã phát triển ra nhiều phiên bản khác nhau, với phiên bản cao cấp nhất là Metasploit Pro đem lại cho ngƣời dùng tất cả các tính năng tốt nhất nhƣ tính tự động, giao diện thân thiện, tạo báo cáo. phục vụ cho việc kiểm thử an ninh. Tuy nhiên để sử dụng phiên bản này thì bạn phải trả chi phí hàng năm rất lớn (khoảng 7000$- 8000$/ năm).
Ngoài ra còn có phiên bản Metasploit Framework, đây là phiên bản miễn phí mã nguồn mở với các chức năng chính tập trung vào các Module tấn công, giao diện dòng lệnh kém thân thiện với ngƣời dùng, không có tính năng tự động, các bƣớc làm đều phải làm thủ công.