📜 ⬆️ ⬇️

SibSUTIS CTF 2015: How we held our student competitions

image Good day!

52 participants, 11 teams, 8 hours - these are the main figures of the information security competition SibSUTIS CTF 2015, which was held for the first time on February 21 at the Siberian State University of Telecommunications and Informatics (Novosibirsk).

I would like to tell you about the preparation of these competitions on behalf of the organizers.

Little about CTF


CTF (Capture the Flag) - team competition in information security.
')
There are several formats, the main ones are:

In Russia, this movement is rapidly gaining momentum, from major events worth noting RuCTF Positive Hack Days.

About the organizers and format of the competition


Basically, the organizers were students of the 2nd and 3rd courses of the SibSUTI Departments of BiUT (Department of Security and Management in Telecommunications) and PMiK (Department of Applied Mathematics and Cybernetics) in the amount of 7 people.

We had enough experience of CTF competitions as participants (in the Siberian Federal District), but for the first time we performed the role of organizers. With the format of the competition, we settled on Tasks-based, as it was somewhat easier for us to implement, and we didn’t know exactly how many participants and what knowledge they would have.

Preparing for the competition


For all the training we had about the 21st day. First of all, the competition regulations were drawn up, which determined the format of the competition, the number of participants (from 3 to 7 people in a team), the rules for participants and the categories with tasks.

We have compiled the following categories of tasks:


In each of the categories there were 3 tasks, which were estimated from 100 to 300 points depending on the difficulty of the task.

Next was the distribution of responsibilities, who will do what for the preparation, namely, it was necessary (by priority):

I was setting up the server and making up tasks. Talk a little about the intricacies. We had a “lamp” server, I’ll not mention the exact configuration, but something like 4-core Intel Xeon is 3.2Ghz and 16Gb of RAM. It is Debian 7, it has a static IP address that goes to the external network.

For our tasks, it was necessary to raise a web-server, which was implemented through Docker virtualization. Until that time, I had no business with the docker, and therefore raising the container with the server and port forwarding to the external network brought me a couple of happy sleepless nights before I finally figured out how it works.

As a result, the standard set was installed in the container: Ubuntu + Apache + MySQL + PHP .

Further, in a very short time, a simple registration page was made for the participants and the “CTF Managment System” with a rather modest functionality:

The rest of the time there was an emphasis on the development of tasks.

A week before the competition, the registration page was open for participants and in the first 4 days only 4 teams were registered - about 15-20 people in general (we honestly didn’t expect more), but in the last 2 days something terrible happened: we registered 7 teams and in the general account we had 52 people as participants.

The reading room of the library of our university was chosen as a place for conducting, and, to everyone's happiness, all the teams were placed in this room.

But besides this, as it turned out, the day before the competition there are some problems with the Internet in the library - only 1 Wi-Fi access point (ideally designed for 20 people) and 4 Internet sockets. But that's not all. For some reason unknown to us, our server was unavailable from this most unfortunate library.

The war with our universal Internet provider did not lead to anything - they insisted that the server problems (if anything, the server worked absolutely everywhere and even the Host-Tracker confirmed it), so we had to solve the problem bypassing the provider - we did proxying through our friend's Malaysian VPS.

We also added another Wi-Fi access point to the library and installed 2 network switches.

Competition day


Competitions were held on Saturday - February 21. The opening took place in the assembly hall, where the administration and the organizers said a few introductory words to the participants. Then all the participants went to the venue and at 10:00 am Novosibirsk time, the competitions were open.

The teams showed a fairly high level of knowledge - 6 teams decided more than half of the proposed tasks and passed the bar for 2000 points. All the teams were for a fair game, while holding some of the vulnerabilities in the checker were given an advantage, but this was immediately reported to the organizers. In the course of the competition, all vulnerabilities were fixed.

Also, to our happiness, there were no critical problems with the Internet, there was a slight hitch at the start of the competition - it fell by 1.5 minutes, and then it worked steadily.

A small photo report:

image

image

image

image

By the end of the day, the bitter struggle continued until the close of the competition. The team that occupied the second place decided the task that would lead them to the 1st place, but they did not have time to send the answer in 1 minute. The system has already been closed.

All participants were satisfied. After the competitions, we talked with them, conducted analyzes of some tasks that were difficult to solve.

UPD: Tasks and Answers Archive

Source: https://habr.com/ru/post/252303/


All Articles