Capture the Flag (CTF): Cuộc chơi trí tuệ của hacker và các chuyên gia bảo mật

SD Editor
-

Capture the Flag (CTF) là một dạng cuộc thi kiến thức chuyên sâu về bảo mật máy tính, được tổ chức theo mô hình trò chơi chiến tranh mạng, tập trung vào kỹ năng tấn công và phòng thủ mạng máy tính của người tham gia.

Capture the Flag: Cuộc chơi trí tuệ của hacker và các chuyên gia bảo mật

Giới thiệu về Capture the Flag – CTF

CTF là gì?

CTF (viết tắt của Capture The Flag) là một dạng cuộc thi kiến thức về bảo mật thông tin, thử thách các đội chơi tìm ra lời giải cho một vấn đề bất kỳ trong an ninh mạng. Thông thường trong một cuộc thi CTF, các đội chơi sẽ ganh đua nhau để tìm ra một Mật mã đặc biệt được giấu bên trong server, hoặc phía sau một trang web. Mật mã này chính là Flag. Đội nào hack vào hệ thống của đối thủ và tìm ra Flag nhanh hơn sẽ giành chiến thắng vòng thi. Đó là lí do cái tên Capture The Flag ra đời!

Lịch sử hình thành

Cuộc thi CTF lần đầu tiên được tổ chức tại hội thảo bảo mật nổi tiếng DEFCON (Mỹ) lần thứ 5 (năm 1997). Đến nay, hàng năm có rất nhiều cuộc thi CTF được tổ chức trên toàn thế giới theo các quy mô khác nhau, do các trường đại học, học viện, viện nghiên cứu thực hiện… Rất nhiều cuộc thi CTF được tổ chức cùng với các hội thảo về Security và Hacking như: DEF CON CTF Qualifier, DEF CON CTF, Codegate YUT Preliminary, UCSB iCTF, RuCTFe…

Cách chơi CTF

Trong cuộc thi dạng CTF, các đội tham gia sẽ được cấp một máy chủ (hoặc một mạng máy chủ) đã cài đặt sẵn nhiều chương trình có các lỗ hổng bảo mật. Nhiệm vụ của đội chơi là tìm ra các lỗ hổng và tấn công vào máy chủ của các đội khác để ghi điểm, đồng thời phải nhanh chóng vá các lỗ hổng trên máy chủ của đội nhà, tránh bị các đội khác tấn công.

Các cuộc thi CTF có thể tổ chức dưới hình thức online (thực hiện qua internet) hoặc offline. Tuy nhiên, các cuộc thi có uy tín thường tổ chức thành 2 vòng thi khác nhau: Vòng 1 thi online để lựa chọn các đội mạnh nhất tham gia vào vòng chung kết được tổ chức offline.

CTF có thể chơi theo đội hoặc cá nhân, tùy thuộc vào quy định từ Ban tổ chức. Thành phần tham gia thi CTF rất đa dạng: các hacker, các chuyên gia bảo mật, các nhóm nghiên cứu về an toàn thông tin, sinh viên.… Giải thưởng từ các cuộc thi CTF tuy không lớn về vật chất nhưng được đánh giá cao về chuyên môn và là một “thước đo” quan trọng về “kỹ năng nghề nghiệp” trong lĩnh vực ATTT.

Phong trào CTF tại Việt Nam

Một số nhóm chuyên gia bảo mật ở Việt Nam đã tham gia các cuộc thi CTF quốc tế trong thời gian gần đây. Tuy nhiên, phong trào này chỉ thực sự bắt đầu phát triển trong khoảng 2 năm vừa qua với dấu ấn quan trọng là nhóm Bamboo (CLGT) của Việt Nam liên tục lọt vào top 10 nhóm CTF tốt nhất của năm, với nhiều thành tích cao tại các giải CTF quốc tế. Đặc biệt, trong năm 2013 lần đầu tiên có một nhóm CTF của Việt Nam đã vượt qua vòng loại DEF CON CTF Qualifier để được tham gia vào DEF CON CTF (được xem như là “World Cup” của các cuộc thi CTF).

Ngoài ra, theo thống kê của tổ chức CTFTIME.org, Việt Nam nằm trong top 10 các nước có nhiều đội tham gia thi CTF nhất (Mỹ, Nga, Ấn Độ, Hàn Quốc, Pháp, Iran, Việt Nam, Nhật, Canada, Trung Quốc), với các nhóm CTF đã có một số thành tích nhất định, được cộng đồng ATTT thế giới biết đến như: Bamboo-vn (CLGT), PiggyBird, Botbie, rm -rf [enter], HacKaTron…

Các hình thức  thi CTF phổ biến

Hiện nay, các cuộc thi CTF thường chia thành 3 hình thức chơi chính

1. Trả lời thử thách theo từng chủ đề (Jeopardy-style)

Hình thức này là tập hợp một loạt các các bài thi khác nhau, được phân ra thành nhiều chủ đề như: Web, Forensic, Crypto, Binary, Stegano… Trong mỗi chủ đề sẽ có nhiều bài thi khác nhau được sắp theo độ khó tăng dần  cùng với điểm số cũng tăng dần. Mục tiêu của các đội thi là sử dụng kỹ năng, kinh nghiệm để thực hiện tìm kiếm các “flag” được giấu. Với mỗi “flag” tìm được chính xác, đội chơi sẽ được điểm tương ứng của bài thi.

Trong quá trình thi, kết quả các đội sẽ liên tục được cập nhật trên các bảng điểm (sau khi gửi flag mới được tính điểm) và kết thúc vòng thi đội nào có số điểm cao nhất sẽ dành chiến thắng. Trong trường hợp các đội bằng điểm nhau, kết quả sẽ được tính dựa trên thời gian gửi “flag”. Đây là hình thức thi được tổ chức phổ biến nhất hiện nay, thực hiện trong 1 đến 2 ngày (24- 48 tiếng).

2. Tấn công và phòng thủ (attack & defence)

Hình thức thi này theo đúng luật thi CTF cổ điển ban đầu và khó hơn so với các hình thức khác do yêu cầu cao hơn. Ngoài các kỹ năng tìm kiếm lỗ hổng bảo mật và khai thác các lỗ hổng đó thì người chơi cần có khả năng khắc phục các điểm yếu, lỗ hổng, bảo vệ hệ thống của mình trước các tấn công từ các đội khác. Điểm khác biệt nữa là cách thức tính điểm cho các đội thi. Điểm thi trong hình thức này được thực hiện theo các tiêu chí khác nhau như: Điểm tấn công, điểm phòng thủ, điểm thưởng,…

Sau khi kết thúc cuộc thi, đội nào có số điểm cao nhất sẽ dành chiến thắng. Đây là hình thức thi gần với thực tế tình hình an toàn mạng nhất. Các hacker thực hiện tấn công vào hệ thống còn các quản trị mạng chuyên viên bảo mật có nhiệm vụ chống lại tấn công từ bên ngoài, trong khi vẫn phải bảo đảm duy trì hoạt động của hệ thống…. Cuộc thi nổi tiếng nhất về dạng này là DEF CON CTF.

3. Hình thức thi kết hợp

Là sự phối hợp của 2 hình thức trên, chẳng hạn như kết hợp giữa hình thức chỉ có tấn công (attack only) với các dạng thử thách khác nhau.

CTF mang lại gì cho người tham gia?

CTF hấp dẫn và thu hút giới hacker, chuyên gia bảo mật bởi các cuộc thi này phản ánh thực tiễn công việc hàng ngày và đòi hỏi người chơi phải có các kỹ năng tấn công và bảo mật thực thụ. Muốn chiến thắng ở một cuộc thi CTF, người chơi không chỉ phải  biết nhuần nhuyễn các kỹ năng phát hiện và khai thác lỗ hổng bảo mật, mà còn phải thật sự chuyên nghiệp trong việc bảo vệ sự an toàn và duy trì tính liên tục của hệ thống mạng trước các đợt tấn công không ngừng từ bên ngoài.

>> Điểm mặt 10 hacker nổi tiếng nhất thế giới

Khi tham gia các cuộc thi CTF, những người tham gia thu được những kinh nghiệm hữu ích như:

  • Được học hỏi các kiến thức cần thiết, cập nhật về security và hacking.
  • Thực hành những kiến thức thu được từ lý thuyết để hiểu rõ hơn về các công việc: cách thức reverse engineering một phần mềm, cách thức crack phần mềm, xâm nhập vào một máy tính; các kỹ thuật khai thác ứng dụng web; áp dụng mật mã trong thực tế; điều tra phân tích truy dấu vết digital forensic….
  • Các bài thì CTF đòi hỏi người chơi phải có  kiến thức sâu về không chỉ về ATTT mà còn về kỹ năng lập trình, thiết lập mạng,… Đây sẽ là cơ hội giúp các chuyên gia củng cố, nâng cao kỹ năng đang có và bổ sung các kỹ năng mới.
  • Các cuộc thi CTF thường cập nhật thông tin mới về lỗ hổng bảo mật, các kỹ thuật mới trong hacking và security. Thực hiện các bài thi là cách giúp người tham gia nắm được các vấn đề đó một cách cụ thể, đúng bản chất….
  • Qua mỗi lần thi CTF, người chơi có thể đánh giá được các kiến thức mình đang còn thiếu, cần bổ sung thêm, được giao lưu, chia sẻ kinh nghiệm, đồng thời tham khảo các write-up (các bài giải) của người chơi khác để học hỏi.
  • Rèn luyện tính sáng tạo, khả năng tư duy giải quyết vấn đề linh hoạt.
  • Việc tham gia các cuộc thi CTF là một trong những khởi đầu tốt cho những người làm việc và nghiên cứu trong lĩnh vực bảo mật và an toàn thông tin.

Chơi CTF bắt đầu từ đâu?

Để tham gia vào các cộc thi CTF, bạn cần trang bị những kiến thức cơ bản về bảo mật thông tin/ bảo mật máy tính. Dưới đây là một số lời khuyên tốt nhất để chơi CTF cho người mới bắt đầu:

Học tập

Tài nguyên

Công cụ phổ biến

  • BurpSuite – Công cụ phổ biến nhất cần phải biết khi chơi CTF. Bộ công cụ Burp cung cấp khá đầy đủ các tính năng kiểm tra xâm nhập web (pentest).
  • Binwalk – Phân tích và giải nén tập tin
  • Stegsolve – Vượt qua nhiều bộ lọc khác nhau qua hình ảnh để tìm văn bản ẩn
  • GDB – Binary Debugger

Thực hành

Có rất nhiều cuộc thi CTF quy mô lớn trên thế giới và trong khu vực với giải thưởng lên tới hàng ngàn USD, tuy nhiên chúng đều có tính cạnh tranh cao và bị giới hạn về mặt thời gian. Dưới đây là những website giúp bạn thực hành luyện tập CTF trước khi tham gia vào những sân chơi lớn hơn. Đặc biệt, bạn sẽ không bị giới hạn thời gian:

  • https://ctflearn.com – Tổng hợp các thử thách CTF khác nhau do người dùng đóng góp. Rất thích hợp cho người mới tìm hiểu về CTF.
  • https://overthewire.org/wargames/ – Một loạt các thử thách khó dần kiểu pwn-style.
  • https://2018game.picoctf.com/ – Cuộc thi CTF giới hạn thời gian diễn ra hàng năm. Hiện tại đã có thể tham gia theo hình thức luyện tập.

Kết luận

Chơi CTF là một thói quen tốt giúp bạn tích lũy kinh nghiệm thực tiễn và những kiến thức trong bảo mật thông tin. Bên cạnh đó, bạn có thể tham gia vào những chương trình Bug Bounty để vừa thỏa mãn đam mê nghiên cứu an ninh mạng, vừa có thể nhận thêm những khoản thù lao do các công ty trả thưởng cho việc tìm kiếm lỗ hổng trên hệ thống của họ.

>>Có thể bạn quan tâm:Ra mắt nền tảng Bug Bounty đầu tiên tại Việt Nam

Nguồn Internet – SecurityDaily tổng hợp