Logo

openECSC 2025

A worldwide cybersecurity competition open to everyone

openECSC is a cybersecurity competition open to everyone that invites enthusiasts to participate without any kind of limitations. Launched in 2022 as an extension of the European Cybersecurity Challenge, it aims to broaden participation beyond traditional age and nationality restrictions, featuring a series of jeopardy-style CTF competition rounds. openECSC 2025 will run September 29th through October 5th

file_upload Challenge submissions

We are looking for challenges submissions!
The target challenge authors are coaches, players should encourage their coaches to write and submit challenges. Challenge draft submissions will be open until September 1st, please submit your challenges by then. You will have time until September 21st to work on the final versions of your challenges.
Please submit your challenges at submission.openec.sc.

  1. Attacking or probing the CTF infrastructure is forbidden.
  2. Challenge authors can play, but won't appear on the public scoreboard.

computer Overview

The European Cybersecurity Challenge (ECSC) stands as a collaborative effort between the European Union Agency for Cybersecurity (ENISA) and multiple European nations. Its primary goal is to foster cybersecurity talent across the continent while forging connections between promising individuals and industry leaders.

Each year, thousands of aspiring talents from diverse European regions participate in national selection competitions. Their ultimate aim is to represent their respective nations at the prestigious ECSC Grand Finals. However, this event accommodates only a limited number of participants due to stringent age and nationality criteria. Consequently, many contestants miss out on the opportunity to showcase their skills at the international level.

To address this disparity and broaden participation, the openECSC has been introduced since 2022. Unlike ECSC, which is restricted to individuals aged 25 and under, the "open" designation of this program signals inclusivity. It welcomes participation from individuals of all ages, backgrounds, and nationalities, effectively inviting cybersecurity enthusiasts worldwide to engage, demonstrate their skills, and join the ECSC community.

The 2025 edition of openECSC will consist of only one round, instead of multiple rounds as in previous years. See the schedule section for more details.

The goal behind openECSC is to accommodate both not very experienced players and top level ones. Expect challenges with a wide range of difficulty levels.

Top performers in each openECSC rounds will be rewarded with unique openECSC merchandise.

schedule Schedule

event Event hourglass_empty Timeframe
Challenge draft submission deadline August 1st, 2025
Challenge final submission deadline September 21st, 2025
openECSC 2025 September 29th - October 5th, 2025

discord Discord server

The main point for all the communication between players and organizers is the official Discord server, available here. Every announcement regarding the competition will be published on the dedicated announcement channel. The server includes a ticketing system, which can be used by players to request any kind of support during the competitions.

Discord

psychology Competition format

The competition is a Capture The Flag (CTF) event, played in a jeopardy-style fashion.

The CTF platform (Berg) used for the openECSC competition will be available under this domain soon.

emoji_events Challenge details

The CTF will feature up to 91 challenges in total, distributed as follows.

7 categories with 13 challenges each:

Each category will have challenges with different difficulty levels:

star Scoring

The scoring for each challenge is identical and every challenge weighs the same number of points at the time of its release. Scoring is dynamic: the more a challenge is solved, the less points it weighs. Every challenge starts at 500 points and decreases to a minimum of 100 points after 50 solves. The scoring formula is the following:

def challenge_score(num_solves, max_score=500, min_score=100, decay=50):
	score = ((min_score - max_score) / (decay * decay)) * (num_solves ** 2) + max_score
	return max(min_score, math.ceil(score))
			

The table below describes an example set of scores for a challenge, depending on the numer of solves:

Number of solves Score
0 solves 500 points
1 solve 500 points
5 solves 496 points
10 solves 484 points
45 solves 176 points
50 solves 100 points
61 solves 100 points

The final score for a single player is computed as the sum of the points given by the challenges the player has solved. Players will be sorted in the final scoreboard using descending order of points. Ties are broken using the last correct submission timestamp: earlier submissions win over later ones.

No additional points are given for early submission (i.e. first blood) or for particularly good solutions to the challenges.

rule Rules

Note: The rules are currently work-in-progress, more will be added later.

verified_user Eligibility

Everyone is eligible to participate in openECSC; no age,country or any other kind of restriction applies. Challenge authors can play, but won't appear on the public scoreboard.

leaderboard Competition

handshake Fair play