📜 ⬆️ ⬇️

RuCTFE 2010

RuCTFE 2009 On the night of December 18, 19, the development team of the club Hackerd of the Ural State University held the second international student information protection competition RuCTFE 2010 . Competitions were held with the support of Yandex , Aydeko and Clustertech . In RuCTFE 2010, 56 teams from 11 countries took part. The German team 0ldEur0pe from RWTH Aachen University won.

What is CTF?


CTF is a team game in which participants can demonstrate their computer security skills and abilities. Teams are evaluated in four categories at once: protection, attack, publication of reports on found vulnerabilities (advisors) and the performance of special tasks (tasks). Read more about this in our post last year.


Results


The victory and a cash reward of $ 900, provided by Aydeko , was obtained by 0ldEur0pe.
The top five teams of this year are as follows.
#LogoTeamUniversityA countryTotalProtectionAttackAdvisoryThe task
one0ldEur0pe0ldEur0peRWTH AachenGermany100%100%
(1953)
100%
(7192)
100%
(64)
100%
(one)
2FluxfingersFluxfingersRuhr-University BochumGermany80.43%85.2%
(1664)
52.16%
(3751)
84.38%
(54)
100%
(one)
3squarerootssquarerootsUniversity of mannheimGermany62.99%66%
(1289)
12.51%
(900)
73.44%
(47)
100%
(one)
fourSiBearsSiBearsTomsk state universityRussia62.39%74.09%
(1447)
23.89%
(1718)
51.56%
(33)
100%
(one)
fiveENOFLAGENOFLAGTU BerlinGermany58.46%96.67%
(1888)
16.84%
(1211)
20.31%
(13)
100%
(one)

The best teams of countries that took part in competitions.
#LogoTeamUniversityA countryTotalProtectionAttackAdvisoryThe task
one0ldEur0pe0ldEur0peRWTH AachenGermany100%100%
(1953)
100%
(7192)
100%
(64)
100%
(one)
fourSiBearsSiBearsTomsk state universityRussia62.39%74.09%
(1447)
23.89%
(1718)
51.56%
(33)
100%
(one)
6NibblesNibblesEpitech, Ensimag, University of Grenoble, University of La Rochelle, University Paris-Est of Marne-la-ValléeFrance57.4%65.69%
(1283)
26.42%
(1900)
37.5%
(24)
100%
(one)
tenTower of hanoiTower of hanoiPolitecnico di milanoItaly49.84%
76.55%
(1495)
7.2%
(518)
15.63%
(ten)
100%
(one)
12RPISECRPISECRensselaer Polytechnic InstituteUnited States of America49.24%
53.61%
(1047)
8.98%
(646)
34.38%
(22)
100%
(one)
15h4ck! nb3rgh4ck! nb3rgUpper Austrian University of Applied Sciences, Campus HagenbergAustria44.9%
61.03%
(1192)
6.05%
(435)
12.5%
(eight)
100%
(one)
17PainsecPainsecUniversidad de CoruñaSpain42.75%
51.36%
(1003)
7.13%
(513)
12.5%
(eight)
100%
(one)
18LoWNOISEHGLoWNOISEHGUniversidad de los andesColombia42.59%
70.25%
(1372)
0.11%
(eight)
0%
(0)
100%
(one)
29H4rdR3b00tH4rdR3b00tUniversite lavalCanada19.9%
79.37%
(1550)
0.22%
(sixteen)
0%
(0)
0%
(0)
38| - | R! $ | - |!| - | R! $ | - |!International Institute of Information Technology, BangaloreIndia8.56%
28.01%
(547)
0%
(0)
6.25%
(four)
0%
(0)
39gn00bzgn00bzFerCroatia8.09%
29.24%
(571)
0%
(0)
3.13%
(2)
0%
(0)

The entire final scorbord can be seen here .
')

Brief description of the competition


The teams needed to investigate the security of 8 services, which were combined by a single concept of a search engine with hosting, mail, photos, twitter, a dating network, contextual advertising, and a source repository. FreeBSD was chosen as the operating system. Services were arranged in the form of ports. The following languages ​​and technologies were used: C ++, Perl, C # + Mono, Ruby, Go + websockets, PHP, Java + GWT.

Take advantage of the vulnerabilities found in 36 teams. One team successfully hacked all the services, two teams hacked seven services, three teams six.

Visualization


On visualization, you can trace the changes in the states of the services and the attacks that occurred. The teams are marked with large dark blue balls. Services - eight small balls around each of the teams. By their color, you can judge the current state of the service - green means that the service is working correctly, yellow - that the service does not give the flag (ie, corrupted), blue - the service is available, but not working correctly, and finally, gray - the service not available. Black color means that an error occurred while checking the status of the service. The presence of a black frame around the service indicates that this service has not yet been attacked by anyone. Attacks are determined by the delivery of flags to the jury team. The red-green line shows which team posted the flag and from which service it “pulled” it.

It is curious that the first attack occurred already in the 11th minute after the launch of the testing system, and the future winning team made it. And only after 18 minutes, the first attack of the other team was made, however, a single one. The second team, which connected to regular attacks, did it an hour after the launch of the testing system. Other teams began to connect to regular attacks an hour later. On the visualization video there are fewer teams than participated, - those teams that did not receive a single point are hidden.

The video was recorded from a visualizer that worked during the game in real time.

You can study the course of the competition in more detail by examining the constructed graphics . This is how the number of points received in the attack depends on the time of the top5 teams.


Feedback from teams


Most teams noted a significantly increased level of quality of services, the game image and the stability of the game as a whole compared with the previous year. I would like to express my deep gratitude to Yandex for providing the servers and channels, due to which the teams have never encountered network problems, and the testing system breathed deeply. And even one of the checkers under Mono, launched by the Java testing system, worked fine.


Inside view


Development


Development began in August. Some techniques from agile were used. Developers met regularly once a week. For synchronization, svn and redmine were used with the tracker, forum, wiki and file storage. The development was carried out in two-week iterations, each of which ended with the assembly of an intermediate game image. Closer to the release, we have reduced the iteration to one week. Load testing revealed some bottlenecks that were filed and lined with airbags.

Network and servers


Let's look again at the circuit of the competition network and understand what lies behind the gray box of the “organizer's box”.


In our case, these were 5 servers provided by Yandex:
1. OpenVPN. Engaged in securing the network and dumped all traffic to disk.
2. PostgreSQL + Scorbord.
3. Failover. Here with the help of DRBD information from the 2nd server was synchronized.
4. Checksystem. Checkers services.
5. Backup server.

During the competition, one of the developers programmed the controller as entertainment so that when receiving the next flag from the teams, the corresponding service light came on.


Traffic


We wrote all the game traffic and even a little more. In the end, after the game, we found a dump of 248GB (in pcap). The dump is redundant, so (using tshark) we filtered out only the game traffic and got a dump of 114GB in size. After some time it will be available for download and subsequent analysis.

Documentation


After the teams publish their reviews on the game, as in the past year, the developers documentation will be posted with a full description of the vulnerabilities in services.

Do you want to participate too?


At various times, both student and general competitions are held, each with its own special and non-repeatable style.
Foreign: DEF CON , iCTF , CIPHER , CODEGATE .
Russian: RuCTF , UFO CTF , LEET MORE CTF , RusCrypto CTF , Ural CTF.

-
Respectfully,
RuCTFE 2010 devteam .

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


All Articles