Tổng quan nghiên cứu

Trong kỷ nguyên số hóa, an toàn thông tin trở thành yếu tố sống còn khi các cuộc tấn công mạng gây thiệt hại hàng tỷ USD mỗi năm trên toàn cầu. Theo các báo cáo chuyên ngành, hơn 80% các vụ xâm nhập thành công xuất phát từ việc doanh nghiệp không kịp thời phát hiện và vá các lỗ hổng bảo mật sẵn có. Kiểm thử xâm nhập là giải pháp chủ động và hiệu quả nhất để đánh giá sức chống chịu của hệ thống trước các mối đe dọa thực tế. Trong số các công cụ bảo mật hiện nay, dự án Metasploit đóng vai trò nền tảng, được hơn 70% chuyên gia an ninh mạng trên thế giới tin dùng.

Tuy nhiên, phiên bản thương mại Metasploit Pro có chi phí bản quyền rất cao, dao động từ 7.000 đến 8.000 USD mỗi năm, tạo ra rào cản tài chính lớn đối với các tổ chức quy mô vừa và nhỏ. Ngược lại, phiên bản mã nguồn mở Metasploit Framework hoàn toàn miễn phí nhưng chỉ hỗ trợ giao diện dòng lệnh và thiếu hẳn tính năng tạo báo cáo kết quả tự động. Vấn đề nghiên cứu trọng tâm của luận văn là xóa bỏ khoảng cách này bằng cách thiết kế và phát triển một plugin mở rộng cho Metasploit Framework, cung cấp khả năng tự động kết xuất báo cáo chuyên nghiệp theo chuẩn quốc tế mà không phát sinh chi phí.

Mục tiêu cụ thể của đề tài là xây dựng hoàn chỉnh công cụ trích xuất dữ liệu tấn công kiểm thử, tự động sinh báo cáo ở định dạng PDF và HTML tuân thủ các tiêu chuẩn bảo mật khắt khe như PCI DSS và FISMA. Phạm vi nghiên cứu được thực hiện thực nghiệm trên hệ điều hành Kali Linux và môi trường máy ảo máy chủ Metasploitable 2, hoàn thành vào tháng 05 năm 2019 tại Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội. Ý nghĩa của nghiên cứu thể hiện qua việc giúp tiết kiệm 100% chi phí bản quyền công cụ báo cáo cho doanh nghiệp, đồng thời nâng cao 60% hiệu suất làm việc của các chuyên viên kiểm thử nhờ tự động hóa khâu lập hồ sơ thẩm định.

Cơ sở lý thuyết và phương pháp nghiên cứu

Khung lý thuyết áp dụng

Nghiên cứu được xây dựng trên nền tảng của 2 khung lý thuyết cốt lõi trong lĩnh vực an toàn thông tin: Lý thuyết kiểm thử thâm nhập đa giai đoạn và Khung tiêu chuẩn đánh giá tuân thủ an ninh mạng quốc tế. Về mặt phân loại, nghiên cứu hệ thống hóa 3 phương pháp kiểm thử cơ bản bao gồm kiểm thử hộp trắng, kiểm thử hộp đen và kiểm thử hộp xám. Trong đó, kiểm thử hộp xám được xác định là phương pháp tối ưu nhất cho thực tế doanh nghiệp vì cân bằng được giữa chi phí, thời gian và tính chân thực của cuộc tấn công mô phỏng.

Mô hình nghiên cứu tập trung khai thác kiến trúc đa tầng của Metasploit Framework, bao gồm hệ thống tệp tin, thư viện Rex, Msf::Core, Msf::Base và hệ quản trị cơ sở dữ liệu PostgreSQL. Bên cạnh đó, nghiên cứu tích hợp 4 khái niệm nền tảng:

  • Khái niệm Module khai thác và mã tải trọng: Công cụ thực thi xâm nhập và kiểm soát mục tiêu sau khi vượt qua hàng rào bảo mật.
  • Hệ thống phát hiện xâm nhập: Cơ chế giám sát lưu lượng mạng nhằm phát hiện các hành vi tấn công trái phép.
  • Tiêu chuẩn an ninh dữ liệu thẻ thanh toán PCI DSS phiên bản 2.0: Bộ quy chuẩn gồm 12 yêu cầu cụ thể được chia thành 6 nhóm mục tiêu nhằm bảo vệ dữ liệu chủ thẻ.
  • Đạo luật quản lý an ninh thông tin liên bang FISMA: Hệ thống kiểm soát bảo mật dựa trên hướng dẫn kỹ thuật NIST SP 800-53 rev 4 của Viện Tiêu chuẩn và Công nghệ Quốc gia Mỹ.

Phương pháp nghiên cứu

Nguồn dữ liệu của nghiên cứu được thu thập trực tiếp từ các phiên tấn công kiểm thử thực nghiệm trên máy ảo máy chủ Metasploitable 2 thông qua giao diện đồ họa Armitage và giao diện dòng lệnh của Metasploit Framework. Dữ liệu tấn công sau đó được kết xuất từ cơ sở dữ liệu PostgreSQL dưới định dạng tệp tin XML chuẩn của hệ thống.

Phương pháp phân tích dữ liệu áp dụng quy trình chuyển đổi cấu trúc cây XML sang cấu trúc bảng băm đa tầng trong ngôn ngữ lập trình Ruby 2.3 bằng các thư viện phân tích cú pháp chuyên dụng. Tiến trình nghiên cứu được triển khai theo phương pháp phát triển phần mềm hướng kiểm thử TDD trong vòng 6 tháng, từ khâu khảo sát yêu cầu đến khi đóng gói plugin hoàn chỉnh.

Cỡ mẫu thực nghiệm bao gồm 5 cổng dịch vụ mạng trọng yếu gồm cổng 21 cho giao thức FTP, cổng 25 cho giao thức SMTP, cổng 53 cho dịch vụ DNS, cổng 139 và cổng 445 cho dịch vụ chia sẻ tệp tin Samba. Phương pháp chọn mẫu là chọn mẫu có chủ đích, tập trung vào các dịch vụ mạng chứa lỗ hổng bảo mật phổ biến nhất trong môi trường doanh nghiệp. Lý do lựa chọn phương pháp phân tích chuyển đổi XML sang cấu trúc dữ liệu băm là nhằm tối ưu hóa tốc độ truy xuất dữ liệu xuống dưới 1 giây, hạn chế độ trễ bộ nhớ và giúp việc kết xuất các mẫu báo cáo HTML, PDF diễn ra nhanh chóng, chính xác.

Kết quả nghiên cứu và thảo luận

Những phát hiện chính

Quá trình nghiên cứu và thử nghiệm đã mang lại 4 phát hiện kỹ thuật quan trọng:

  • Thứ nhất, công cụ mở rộng Report_engine đã tích hợp thành công vào cấu trúc plugin của Metasploit Framework, trích xuất chính xác 100% các trường dữ liệu từ cơ sở dữ liệu PostgreSQL sang cấu trúc dữ liệu bảng băm mà không làm thay đổi hay xung đột với mã nguồn lõi của nền tảng.
  • Thứ hai, hệ thống đã tạo lập thành công 3 loại báo cáo chuyên biệt gồm Báo cáo kiểm định an ninh tổng thể, Báo cáo thống kê dịch vụ mạng và Báo cáo tuân thủ tiêu chuẩn PCI DSS. Thời gian tạo báo cáo tự động giảm hơn 75% so với quy trình lập báo cáo thủ công truyền thống.
  • Thứ ba, giải pháp tích hợp công cụ Wkhtmltopdf thông qua thư viện Pdfkit cho phép tạo trực tiếp tài liệu PDF ngay trên môi trường máy chủ Linux không có giao diện đồ họa, đạt độ tương thích và thẩm mỹ tương đương 98% so với các báo cáo được xuất từ phiên bản thương mại Metasploit Pro.
  • Thứ tư, việc điều khiển công cụ thông qua bộ 8 câu lệnh chuyên dụng trên Msfconsole (như load report, check_db, use_datapack, gen_report) giúp đơn giản hóa toàn bộ chu trình kiểm thử, giảm số lượng thao tác kỹ thuật từ 6 bước phức tạp xuống còn 1 lệnh thực thi duy nhất.

Thảo luận kết quả

Nguyên nhân chính giúp công cụ đạt được hiệu năng cao và hoạt động ổn định là nhờ thiết kế mô hình hướng đối tượng và áp dụng mô hình thiết kế hàm nguyên mẫu. Cấu trúc này giải quyết triệt để thách thức xử lý mảng dữ liệu có độ sâu biến thiên, ngăn chặn hiện tượng số lượng trường hợp xử lý tăng theo cấp số nhân (bằng 2 nhân với độ sâu của bảng băm). Nhờ đó, công cụ xử lý đồng thời dữ liệu của 5 máy chủ mục tiêu chỉ trong chưa đầy 3 giây.

Khi so sánh với các phần mềm thương mại đắt tiền, giải pháp plugin nội tại này mang lại lợi thế vượt trội về mặt chi phí và khả năng tùy biến. Trong khi các giải pháp thương mại đòi hỏi phí duy trì hàng năm từ 7.000 đến 8.000 USD, công cụ mã nguồn mở trong nghiên cứu cung cấp chất lượng đầu ra gần như tương đương mà không tốn bất kỳ chi phí duy trì nào.

Dữ liệu kết quả được trình bày rõ ràng qua các bảng thống kê dịch vụ chi tiết và biểu đồ phân bổ mức độ nghiêm trọng của lỗ hổng. Cách trình bày trực quan này giúp người quản trị hệ thống dễ dàng nhận biết các điểm yếu chí tử trên từng địa chỉ IP, nhận diện cổng mạng đang bị xâm nhập và áp dụng ngay các biện pháp khắc phục theo khuyến nghị trong báo cáo.

Đề xuất và khuyến nghị

Dựa trên kết quả nghiên cứu thực nghiệm, tác giả đưa ra 4 giải pháp khả thi nhằm tăng cường hiệu quả quản lý an toàn thông tin và ứng dụng công cụ vào thực tiễn:

  • Chuẩn hóa quy trình kiểm thử an ninh: Ban hành bộ khung làm việc chuẩn gồm 13 câu hỏi khảo sát thông tin ban đầu và văn bản tuyên bố công việc cho 100% các chiến dịch kiểm định. Bộ phận an ninh mạng tại các tổ chức cần áp dụng quy trình này trong thời gian 3 tháng đầu để loại bỏ hoàn toàn rủi ro vượt phạm vi kiểm thử.
  • Mở rộng phạm vi hỗ trợ tiêu chuẩn bảo mật: Nâng cấp module tạo báo cáo để tích hợp đầy đủ tiêu chuẩn FISMA theo tài liệu NIST SP 800-53 rev 4 và bổ sung mẫu đánh giá ứng dụng Web trong vòng 6 tháng tới. Đội ngũ kỹ sư phần mềm bảo mật chịu trách nhiệm triển khai nhằm nâng tỷ lệ bao phủ tiêu chuẩn quốc tế lên 95%.
  • Tối ưu hóa hiệu năng xử lý đa luồng: Tái cấu trúc module trích xuất dữ liệu bằng kỹ thuật xử lý song song, hướng tới mục tiêu giảm 50% thời gian xử lý khi quét các hệ thống mạng quy mô lớn trên 500 nút mạng. Kế hoạch này do các chuyên viên kỹ thuật hệ thống thực hiện trong quý tiếp theo.
  • Tổ chức đào tạo và chuyển giao công nghệ: Thiết lập 4 khóa huấn luyện chuyên sâu về kiểm thử thâm nhập với Metasploit Framework và công cụ tạo báo cáo cho 50 kỹ sư an toàn thông tin nội bộ trong vòng 1 năm, giúp nâng cao kỹ năng thực chiến và giảm 80% lỗi thao tác định dạng văn bản.

Đối tượng nên tham khảo luận văn

Luận văn là tài liệu tham khảo giá trị cho 4 nhóm đối tượng chính sau:

  • Chuyên viên kiểm thử xâm nhập và chuyên gia đánh giá an toàn thông tin: Tận dụng quy trình kiểm thử chuẩn hóa và công cụ tự động tạo báo cáo để tiết kiệm hơn 40 giờ làm việc mỗi tháng, nâng cao tính chuyên nghiệp khi bàn giao hồ sơ kết quả cho khách hàng.
  • Quản trị viên hệ thống và an ninh mạng nội bộ: Nắm bắt phương pháp rà quét, phát hiện lỗ hổng dịch vụ mạng trên các cổng phổ biến và hiểu rõ cách đối soát hệ thống theo 12 yêu cầu của chuẩn an ninh dữ liệu thẻ PCI DSS.
  • Lãnh đạo công nghệ và doanh nghiệp vừa và nhỏ: Tiếp cận giải pháp kỹ thuật tối ưu không tốn chi phí bản quyền, giúp tiết kiệm từ 7.000 đến 8.000 USD mỗi năm mà vẫn đảm bảo hệ thống thông tin được kiểm định theo chuẩn quốc tế.
  • Giảng viên, học viên cao học và sinh viên chuyên ngành Công nghệ thông tin: Sử dụng luận văn làm tài liệu học tập, nghiên cứu chuyên sâu về kiến trúc mã nguồn Metasploit Framework, kỹ thuật lập trình plugin Ruby và phương pháp phát triển phần mềm TDD với hơn 10 kịch bản tấn công mẫu.

Câu hỏi thường gặp

Metasploit Framework khác biệt như thế nào so với Metasploit Pro trong tính năng báo cáo? Metasploit Framework là bản miễn phí chỉ có giao diện dòng lệnh và không hỗ trợ tính năng xuất báo cáo. Ngược lại, Metasploit Pro là phiên bản thương mại có giá từ 7.000 đến 8.000 USD mỗi năm, được tích hợp sẵn giao diện đồ họa và bộ công cụ tự động xuất báo cáo chuyên nghiệp theo nhiều chuẩn quốc tế.

Plugin Report_engine được phát triển trong luận văn giải quyết bài toán gì? Plugin này bổ sung trực tiếp tính năng trích xuất dữ liệu tấn công và tự động khởi tạo báo cáo định dạng PDF và HTML cho phiên bản Metasploit Framework miễn phí. Nhờ đó, người dùng có thể tạo lập báo cáo chuẩn PCI DSS mà không cần chi trả kinh phí mua bản quyền thương mại đắt đỏ.

Chuẩn bảo mật PCI DSS được tích hợp trong công cụ bao gồm những nội dung gì? Báo cáo PCI DSS trong công cụ tuân thủ phiên bản 2.0, bao gồm 12 yêu cầu kỹ thuật cụ thể được chia thành 6 nhóm nhiệm vụ chính: xây dựng mạng an toàn, bảo vệ dữ liệu chủ thẻ, quản lý lỗ hổng, kiểm soát truy cập, giám sát mạng thường xuyên và duy trì chính sách an toàn thông tin.

Vì sao tác giả lựa chọn phương pháp phát triển hướng kiểm thử TDD để viết plugin? Phương pháp TDD giúp phân rã các chức năng phức tạp thành các trường hợp kiểm thử đơn lẻ, đảm bảo mã nguồn Ruby xử lý chính xác cấu trúc dữ liệu dạng bảng băm đa tầng. Cách tiếp cận này giúp loại bỏ 100% lỗi cú pháp và đảm bảo tính ổn định tuyệt đối khi gắn module vào khung Metasploit.

Công cụ có hoạt động được trên các máy chủ Linux không có giao diện đồ họa không? Công cụ hoạt động hoàn hảo trên mọi hệ điều hành Linux sử dụng giao diện dòng lệnh thuần túy. Nhờ tích hợp bộ máy Wkhtmltopdf độc lập và thư viện Pdfkit, hệ thống có thể kết xuất trực tiếp tài liệu PDF hoàn chỉnh trong vòng 3 giây mà không cần cài đặt thêm máy chủ Web bên ngoài.

Kết luận

  • Luận văn đã giải quyết triệt để bài toán thiếu hụt tính năng báo cáo trên phiên bản mã nguồn mở Metasploit Framework bằng một plugin hoàn chỉnh, hiệu năng cao.
  • Đóng góp khoa học và thực tiễn lớn nhất của đề tài là xây dựng thành công cơ chế chuyển đổi dữ liệu XML sang bảng băm và tự động xuất báo cáo chuẩn PDF, HTML đáp ứng tiêu chuẩn PCI DSS và FISMA.
  • Giải pháp kỹ thuật giúp các tổ chức và doanh nghiệp tiết kiệm hoàn toàn khoản chi phí bản quyền hàng năm từ 7.000 đến 8.000 USD cho các công cụ thương mại.
  • Lộ trình phát triển tiếp theo trong vòng 6 đến 12 tháng tới tập trung vào việc tối ưu hóa xử lý đa luồng trên mạng quy mô lớn và mở rộng các bộ tiêu chuẩn an ninh mạng quốc tế mới.
  • Độc giả, chuyên gia an ninh mạng và các nhà phát triển hãy khai thác tài liệu luận văn này để ứng dụng vào công tác kiểm thử thực tế và tiếp tục đóng góp mở rộng các module bảo mật cho cộng đồng mã nguồn mở.