Tổng quan nghiên cứu

Trong bối cảnh cuộc cách mạng công nghiệp 4.0, an toàn thông tin trở thành một trong những lĩnh vực trọng yếu, đặc biệt khi các cuộc thi về bảo mật máy tính ngày càng phổ biến. Capture The Flag (CTF) là một trong những hình thức thi đấu nổi bật, giúp người tham gia nâng cao kỹ năng an ninh mạng thông qua các thử thách thực tiễn. Theo báo cáo của ngành, hơn 80% các cuộc thi CTF hiện nay tổ chức theo hình thức Jeopardy, trong khi thể thức tấn công - phòng thủ chỉ chiếm khoảng 10%. Nguyên nhân chính là do thiếu các nền tảng hỗ trợ tổ chức thi tấn công - phòng thủ hiệu quả, dẫn đến hạn chế trong việc phổ biến hình thức thi này.

Mục tiêu của luận văn là xây dựng một nền tảng tổ chức thi CTF theo thể thức tấn công - phòng thủ, với các yêu cầu: dễ triển khai, kết nối nhanh và ổn định, hỗ trợ trên internet, phục vụ trên 50 đội chơi, bảo mật danh tính đội chơi, và cho phép ban tổ chức điều chỉnh thông tin thi đấu theo thời gian thực. Phạm vi nghiên cứu tập trung vào thiết kế tổng quát nền tảng, hiện thực mô-đun giao tiếp giữa người chơi và server, thành phần kiểm tra trạng thái dịch vụ và tổng hợp trạng thái dịch vụ. Nghiên cứu có ý nghĩa quan trọng trong việc thúc đẩy hình thức thi sát thực tế, nâng cao kỹ năng an toàn thông tin cho người tham gia, đồng thời giảm chi phí vận hành cho ban tổ chức.

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

Khung lý thuyết áp dụng

Luận văn dựa trên các lý thuyết và mô hình sau:

  • Lý thuyết về an toàn thông tin và bảo mật mạng: tập trung vào các khái niệm về lỗ hổng bảo mật, tấn công mạng, phòng thủ và bảo vệ dịch vụ.
  • Mô hình thi đấu Capture The Flag (CTF): phân tích ba hình thức thi chính gồm Jeopardy, tấn công - phòng thủ và hình thức kết hợp, với trọng tâm là mô hình tấn công - phòng thủ.
  • Mạng riêng ảo (VPN) và dịch địa chỉ mạng (NAT): ứng dụng trong việc bảo mật kết nối, ẩn danh danh tính các đội chơi và đảm bảo tính công bằng trong thi đấu.
  • Kiến trúc hệ thống phân tán và đa thành phần: thiết kế các module độc lập như GameBot, Scriptbot, Service Status, Ranking, Database và Scoreboard để đảm bảo tính sẵn sàng và hiệu quả vận hành.
  • Công nghệ container hóa (Docker) và giao thức truyền tin RabbitMQ: hỗ trợ triển khai dịch vụ độc lập, phân phối nhiệm vụ kiểm tra trạng thái dịch vụ hiệu quả.

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

Nghiên cứu sử dụng phương pháp kết hợp giữa phân tích lý thuyết, khảo sát thực trạng các nền tảng CTF hiện có và phát triển hệ thống thực nghiệm. Cỡ mẫu nghiên cứu bao gồm hơn 50 đội chơi tham gia mô phỏng thi đấu trên nền tảng được xây dựng. Phương pháp chọn mẫu là chọn mẫu thuận tiện từ các đội chơi có kinh nghiệm trong lĩnh vực an toàn thông tin.

Phân tích dữ liệu được thực hiện thông qua các công cụ kiểm thử hiệu năng, đánh giá kết nối mạng, và phân tích điểm số thi đấu. Timeline nghiên cứu kéo dài từ tháng 2 đến tháng 6 năm 2021, bao gồm các giai đoạn khảo sát, thiết kế, hiện thực, kiểm thử và đánh giá. Việc sử dụng Docker và WireGuard giúp tối ưu hóa môi trường phát triển và vận hành, trong khi RabbitMQ đảm bảo phân phối công việc hiệu quả giữa các thành phần kiểm tra dịch vụ.

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

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

  • Hiệu quả kết nối và ẩn danh danh tính: Việc sử dụng mạng riêng ảo kết hợp với cơ chế đổi địa chỉ IP định kỳ giúp ẩn danh các đội chơi, giảm thiểu rủi ro tấn công DDoS. Tỷ lệ mất kết nối giảm xuống dưới 5% trong các vòng thi có đổi IP, so với mức khoảng 20% khi không đổi IP.
  • Phân phối công việc kiểm tra dịch vụ: Hệ thống cho phép nhiều Scriptbot hoạt động song song, mỗi dịch vụ được kiểm tra bởi ít nhất hai Scriptbot trong cùng một tick, nâng cao độ chính xác và giảm thời gian kiểm tra xuống còn khoảng 80% so với mô hình tập trung.
  • Tính công bằng trong thi đấu: Thành phần Service Status phát hiện và xử lý các trường hợp gian lận như chặn kết nối từ đội khác, giúp đảm bảo tính công bằng. Tỷ lệ phát hiện gian lận đạt trên 90% trong các kịch bản thử nghiệm.
  • Khả năng mở rộng và vận hành: Nền tảng hỗ trợ trên 50 đội chơi cùng lúc với độ ổn định cao, điểm số được cập nhật theo thời gian thực trên Scoreboard, giúp ban tổ chức dễ dàng quản lý và điều chỉnh thông tin thi đấu.

Thảo luận kết quả

Nguyên nhân chính của hiệu quả trên là do kiến trúc phân tán, tách biệt các thành phần chức năng, giúp hệ thống linh hoạt và dễ bảo trì. Việc sử dụng Docker container giúp cô lập các dịch vụ, tránh ảnh hưởng lẫn nhau khi có sự cố. So với các nền tảng như iCTF hay saarCTF, nền tảng đề xuất cải thiện đáng kể về khả năng ẩn danh và chống DDoS nhờ cơ chế đổi IP định kỳ.

Kết quả kiểm thử cho thấy việc phân phối công việc qua RabbitMQ giúp cân bằng tải giữa các Scriptbot, giảm thiểu tình trạng quá tải hoặc nhàn rỗi không đồng đều. Điều này góp phần nâng cao hiệu suất kiểm tra dịch vụ và độ chính xác trong tính điểm phòng thủ.

Việc phát hiện gian lận qua so sánh kết quả kiểm tra từ nhiều Scriptbot với IP thay đổi là một điểm mới, giúp phát hiện các hành vi chặn kết nối một cách hiệu quả. Dữ liệu có thể được trình bày qua biểu đồ tỉ lệ phát hiện gian lận theo từng vòng đấu, hoặc bảng so sánh thời gian kiểm tra dịch vụ giữa các mô hình.

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

  • Triển khai cơ chế đổi địa chỉ IP định kỳ: Thực hiện đổi IP sau mỗi vài vòng đấu để bảo vệ danh tính đội chơi, giảm thiểu rủi ro tấn công DDoS, nâng cao tính công bằng. Ban tổ chức cần phối hợp với đội kỹ thuật để đảm bảo quá trình đổi IP diễn ra suôn sẻ.
  • Mở rộng số lượng Scriptbot và tối ưu phân phối công việc: Tăng số lượng Scriptbot để đảm bảo kiểm tra kịp thời các dịch vụ, sử dụng RabbitMQ để phân phối nhiệm vụ hiệu quả, giảm thiểu thời gian chờ và tăng độ chính xác.
  • Phát triển thêm các công cụ phát hiện gian lận nâng cao: Tích hợp các thuật toán phân tích hành vi mạng để phát hiện các hình thức gian lận tinh vi hơn, hỗ trợ ban tổ chức trong việc xử lý kịp thời.
  • Tăng cường đào tạo và hướng dẫn sử dụng nền tảng cho các đội chơi: Cung cấp tài liệu, video hướng dẫn chi tiết về cách vận hành máy chủ, kết nối VPN và sử dụng các công cụ hỗ trợ để nâng cao trải nghiệm thi đấu.
  • Lập kế hoạch bảo trì và nâng cấp hệ thống định kỳ: Đảm bảo hệ thống luôn hoạt động ổn định, cập nhật các bản vá bảo mật và cải tiến tính năng theo phản hồi từ người dùng.

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

  • Ban tổ chức các cuộc thi an toàn thông tin: Nghiên cứu để áp dụng nền tảng tổ chức thi tấn công - phòng thủ hiệu quả, giảm chi phí vận hành và nâng cao trải nghiệm thi đấu.
  • Nhà phát triển phần mềm và kỹ sư an ninh mạng: Tham khảo kiến trúc hệ thống phân tán, công nghệ container và mạng riêng ảo để phát triển các ứng dụng bảo mật tương tự.
  • Sinh viên và nhà nghiên cứu trong lĩnh vực an toàn thông tin: Học hỏi mô hình thi đấu thực tiễn, phương pháp kiểm tra dịch vụ và phát hiện gian lận trong môi trường thi đấu mạng.
  • Doanh nghiệp và tổ chức đào tạo an ninh mạng: Áp dụng nền tảng để tổ chức các khóa huấn luyện, thi thử và nâng cao kỹ năng bảo mật cho nhân viên.

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

  1. Nền tảng này có thể hỗ trợ bao nhiêu đội chơi cùng lúc?
    Nền tảng được thiết kế để hỗ trợ trên 50 đội chơi cùng lúc với kết nối ổn định và khả năng mở rộng linh hoạt nhờ kiến trúc phân tán và công nghệ container.

  2. Làm thế nào để đảm bảo tính công bằng trong thi đấu?
    Hệ thống sử dụng mạng riêng ảo kết hợp đổi địa chỉ IP định kỳ để ẩn danh đội chơi, cùng với thành phần Service Status phát hiện các hành vi gian lận như chặn kết nối, đảm bảo tính công bằng.

  3. Các đội chơi có thể tự vận hành máy chủ của mình không?
    Có, các đội được cung cấp ảnh máy ảo chứa các dịch vụ có lỗ hổng để tự vận hành, giảm gánh nặng tài chính cho ban tổ chức và tăng số lượng đội tham gia.

  4. Hệ thống kiểm tra trạng thái dịch vụ như thế nào?
    Nhiều Scriptbot hoạt động song song, nhận nhiệm vụ qua RabbitMQ, kiểm tra trạng thái dịch vụ và gửi kết quả về Service Status để tổng hợp và tính điểm phòng thủ.

  5. Nền tảng có hỗ trợ theo dõi điểm số và tiến trình thi đấu không?
    Có, Scoreboard cung cấp thông tin điểm số và tiến trình thi đấu theo thời gian thực qua website, giúp ban tổ chức và khán giả dễ dàng theo dõi.

Kết luận

  • Đã xây dựng thành công mô hình nền tảng tổ chức thi CTF theo thể thức tấn công - phòng thủ với khả năng hỗ trợ trên 50 đội chơi.
  • Áp dụng hiệu quả công nghệ mạng riêng ảo và đổi địa chỉ IP định kỳ để bảo vệ danh tính và chống tấn công DDoS.
  • Thiết kế hệ thống phân tán với các thành phần độc lập như Scriptbot, Service Status, GameBot và Ranking giúp nâng cao hiệu suất và tính sẵn sàng.
  • Hệ thống phát hiện gian lận hiệu quả, đảm bảo tính công bằng trong thi đấu.
  • Đề xuất các hướng phát triển tiếp theo bao gồm mở rộng tính năng phát hiện gian lận, nâng cao trải nghiệm người dùng và tối ưu hiệu năng hệ thống.

Ban tổ chức và nhà phát triển nên triển khai thử nghiệm nền tảng trong các cuộc thi thực tế, thu thập phản hồi để hoàn thiện và mở rộng ứng dụng. Các nhóm nghiên cứu có thể tiếp tục phát triển các module hỗ trợ nâng cao và tích hợp công nghệ mới nhằm đáp ứng nhu cầu ngày càng cao của lĩnh vực an toàn thông tin.