DEADFACE CTF 2026 After-action report · Oct 17–18, 2026

How DEADFACE CTF 2026 went

A look back at this year's competition: the challenges, what players told us, what the event cost to run, and what the integrity review found. Player names, team names and contact details are left out throughout.

  • 100 challenges
  • 18 categories
  • 43 survey responses
1,886teams registered
3,700+players on those teams
39,609correct flags submitted
2,500+digital badges awarded
4.57/5average survey rating
$2,330cash cost to run the event
5,508volunteer hours
147teams removed after the integrity review
Summary

Strong reviews, shaky servers

1,886 teams registered and 1,184 of them solved the Starter challenge. Across 100 challenges in 18 categories, players landed 39,609 correct flags and earned more than 2,500 digital badges.

The 43 players who answered our survey rated the event 4.57 out of 5 on average. They singled out the storyline and the connected challenge series. Their main complaint was server stability, especially on Hostbusters.

Running the event cost $2,330.21 in cash and about 5,508 volunteer hours. Most of those hours went into building the challenges.

Player requests

What players asked for

  • Steadier servers

    14 of 43 respondents brought up outages, lag or disconnects, most often on Hostbusters. The scoring server was the lowest-rated part of the event.

  • Easier on-ramps

    Several asked for a few beginner challenges in every category, an easy reverse engineering starter, and hints that cost points.

  • Harder top end

    Returning players asked for tougher OSINT and SQL challenges, like the year before.

  • Firm AI rules

    11 respondents mentioned AI use or cheating. Most backed the ban, and some asked for stricter enforcement or a separate track for AI-assisted play.

  • More Ghost Town

    The storyline and the Ghost Town forum drew praise. One respondent found the story hard to follow as a non-native English speaker.

Catalog

100 challenges in 18 categories

Nine authors built 100 challenges worth 11,972 points in total, from a 5-point Caesar cipher to three 500-point finales. Many categories were stories in their own right: Hostbusters, Brain Scans, De Monne Breach and others ran as connected series.

  • 39,609 correct flags
  • 40,358 wrong submissions
  • 49.5% of submissions correct
  • 1,184 teams solved Starter
By category

Where players spent their guesses

Pick a measure to re-sort the categories. Select a category to see its challenges and point values.

Solve and submission counts are totals per category from the scoreboard. Correct rate is correct flags divided by all flag submissions. Miscellaneous holds the two onboarding challenges.

Standouts

Easiest, most guessed, toughest

Most solvedDatabase

5,161 solves across 11 challenges, and 82% of submissions were correct.

Most guessedOSINT

7,355 wrong submissions, about 2.6 for every correct flag.

ToughestThe Long Road

Two 350-point challenges, 231 solves, and only 24% of submissions correct.

Survey

43 players rated the event 4.57 out of 5

We asked for feedback at the end of the competition and received 43 responses between Oct 18 and Oct 20. Eight questions used a scale from 1 (worst) to 5 (best), most with an optional comment box. Questions about favorites and three open-ended questions closed out the survey.

  • 336 ratings
  • 70% were 5s
  • 0 ratings of 1
  • 12 respondents gave all 5s
Ratings

Every question averaged above 4

Select a question to see the full wording, the score breakdown and a sample of comments.

  • 1 worst
  • 2
  • 3
  • 4
  • 5 best
Themes

What came up in written answers

We read every written answer and tagged the topics each respondent raised. One respondent can raise several topics.

Respondents raising each topic, of 43
Server outages and lag1433%
AI use and cheating1126%
Storyline and Ghost Town921%
Staff support614%
Difficulty balance614%
Connected series512%
Favorites

Brain Scans and Hostbusters led the favorites

Respondents could pick as many categories and series as they liked. Hostbusters ranked second among series and also drew the most complaints about outages.

Favorite categories, of 43
SQL (Databases)2456%
Traffic Analysis2251%
Cryptography2251%
OSINT2149%
Reverse Engineering1944%
Steganography1944%
Web1637%
Forensics1330%
Mobile App1330%
Pwn921%
Programming37%
Favorite series, of 40
Brain Scans2563%
Hostbusters2255%
Cereal Killer1230%
Aurora Patient Zero1230%
De Monne Slayer1025%
De Monne Breach923%
The Long Road718%
Named as a favorite challenge24 answers
  • Bad Guys Be Bad Traffic Analysis×2
  • Ghost of Squares Past OSINT×2
  • Alice and Bob Would Like a Word OSINT
  • Cereal Killer 03 Reverse Engineering
  • Cereal Killer 04 Reverse Engineering
  • DOOM Bonus
  • Exposing Myself Through Bad OPSEC OSINT
  • Heavy Hand Database
  • I Want to be a Real Boy Web
  • Infrequent Emojis Cryptography
  • Lilith Hostbusters
  • The Mark The Long Road
  • Two Places at Once Database
  • You Wouldn't Git It OSINT

The other answers named a whole series or category, most often Hostbusters and Brain Scans.

Open answers

In their words

Quotes are verbatim, trimmed where marked with an ellipsis. Comments that named players or staff are left out.

Cash costs

$2,330.21 to run the event

Hosting and domains made up just over half the cash cost. The rest went to cash prizes for the top three teams and to AI services used in development.

$1.24per registered team
$0.62per registered player
$0.93or less per digital badge
$23.30per challenge

Infrastructure

$1,230.21 · 52.8%
Virtual machines$642.36
Domain registrations$425.80
Backups$74.95
Storage$33.75
Bandwidth$28.32
Snapshots$25.03

Prizes

$600.00 · 25.7%
Cash prizes, top three teams$600.00

Development

$500.00 · 21.5%
Anthropic$300.00
OpenAI$200.00
Volunteer time

5,508 volunteer hours

Building challenges took 3,600 hours, about 36 per challenge. Post-game analysis, including the tooling behind the integrity review, took 1,536 hours, more than five times as long as game day itself.

Design

3,700 h · 67.2%
Challenge designBuilding the competition's challenges3,600 h
MaterialsMarketing, websites, videos and social posts60 h
PlanningProject management, the theme, the charter, and recruiting volunteers and sponsors40 h

Production

1,808 h · 32.8%
Post-game analysisBuilding analysis tools and reviewing the findings1,536 h
Game dayModerating Discord, helping players and troubleshooting272 h
$40/h
  • Cash
  • Volunteer time
$220,320for 5,508 hours
$222,650with the cash cost added
1.0%of that total was cash

Drag to set an hourly rate. This is an illustration of the time involved, not a record of anything paid.

At a glance

What the integrity review found

During and after the event, we ran flag submissions and web traffic through our monitoring pipeline, looking for AI use, flag sharing, automated attacks and other rule breaks. This section shares what the review turned up, as totals. It names no players, teams or IP addresses.

33,459signals raised by our automated checks
1,011teams tripped at least one signal
381accounts showed evidence of AI use
147teams removed from the public scoreboard

Also published as a standalone page: integrity report.

Signal to action

Most signals never led anywhere

Our checks cast a wide net. A shared campus network, a fast solver or a helper script can each trip one. A signal only marks something for an organizer to look at, and a team was removed only when the evidence held up on review.

The chart follows the field from every registered team down to the teams we acted on.

Teams at each stage
Registered teams 1,886100%
Tripped at least one signal 1,01154%
At least one high-severity signal 57130%
Removed from the scoreboard 1477.8%
Named on the Wall of Shame 100.5%
Severity of all 33,459 signalsshare of signals
  • High 18%
  • Medium 41%
  • Low 41%
Flagged accounts, by their most serious signalshare of 2,299 accounts
  • High 40%
  • Medium at most 50%
  • Low only 10%

About a third of flagged accounts (35%) tripped only one kind of signal.

What we watched

Nineteen checks in seven groups

The checks drew on two sources: the scoreboard's record of every submission, and web logs from the CTF platform and the challenge servers. Each signal is rated low, medium or high. Accounts often appear in more than one group, so the group totals overlap.

CheckSignals raisedSignalsAccounts

AI use

381 accounts

Players agreed not to use AI tools to solve challenges.

Hidden AI canarySubmitted a decoy flag that exists only in hidden text aimed at AI tools.ai_canary
322130
AI output in the flag boxPasted a prompt or a chatbot's answer into the flag field.ai_prompt_submission
3832
AI agent trafficRequests from AI agents and AI crawlers reaching the platform or challenge servers.ai_agent
96875
AI product referenceTraffic that names an AI product, such as a link followed out of a chatbot.ai_reference
1,626273

Flag sharing

342 accounts

Answers passed between teams.

Same-IP flag sharingOne IP address solved the same challenge for several teams.flag_sharing_ip
429173
Shared rare wrong flagTwo or more teams sent the same uncommon wrong answer within minutes of each other.wrong_flag_shared
104192

Solve timing

1,066 accounts

Each challenge has a realistic minimum solve time. These fire when a solve beats it.

Impossible solve gapA solve landed sooner after the team's previous solve than the challenge can be worked.solve_gap
8,1621,062
Solve velocityA run of several solves packed into a few minutes.solve_velocity
1,048505
Solved faster than realisticSolved too soon after the challenge went live.solve_too_fast
4037

Pre-release

239 accounts

Activity on a challenge before its recorded release time.

Attempted before releaseA submission arrived before the challenge's recorded release time.pre_release_attempt
156156
Solved before releaseA correct flag arrived before the challenge's recorded release time.pre_release_solve
135135

Automation

1,091 accounts

Scripting a solution is normal CTF practice. These signals are low severity and mostly add context to other findings.

Scripted clientRequests from command-line tools and HTTP libraries instead of a browser.scripted_client
5,194823
Request burstDozens of requests within a few seconds.request_burst
3,544575
Bot or crawlerTraffic from self-identified bots and crawlers.bot
3,447184

Infrastructure probing

825 accounts

Attacking the platform or challenge servers instead of the challenges themselves.

Scanner or wordlistDirectory brute forcing and vulnerability scanners.scanner
3,333283
FuzzingMalformed or randomized input thrown at endpoints.fuzzing
2,330753
Error burstA rapid run of "not found" and "forbidden" errors, typical of guessing at URLs.error_burst
1,156368

Shared networks

1,461 accounts

On its own, a shared IP address proves very little.

Shared IP across teamsAccounts on different teams used the same IP address.shared_ip_cross_team
1,0211,143
Shared IP within a teamTeammates on the same IP address. Expected, and logged for context.shared_ip
406499
Retired check

We switched off one check during the review. It matched any wrong flag sent by more than one team, and common wrong guesses set it off constantly. The shared rare wrong flag check replaced it.

No brute forcing

No account was flagged for spraying flag guesses at the scoreboard. The platform's rate limit throttled 11,424 submissions.

AI use

381 accounts showed signs of AI use

Every player agreed not to use AI tools to solve challenges. The four AI checks differ a lot in strength. A canary hit or a chatbot reply pasted into the flag box is hard to explain any other way. A reference to an AI product in someone's traffic is weaker on its own.

Strongest AI evidence per account381 accounts
  • Canary hit or pasted AI output 157
  • AI agent traffic 58
  • Product references only 166
How the canaries worked

Some challenges carried text a person reading the page would never see, but an AI tool given the page would act on. It steered those tools toward decoy flags. 130 accounts submitted one. We are not publishing which challenges carried canaries or what they said.

Straight from the chatbot

38 submissions put an AI tool's reply directly into the flag field. Some still began with "The correct flag is:". Others were whole challenge descriptions.

Accounts linked to each AI tool
ChatGPT / OpenAI163
Claude / Anthropic105
Gemini / Google29
Unnamed LLM22
Perplexity18
Other AI services16
Copilot / Microsoft11
Grok / xAI8
Manus8
Agent frameworks6
Meta AI / Llama6
DeepSeek5
Devin5
Mistral, Qwen, You.com1 each

An account can appear under more than one tool. 99 of the 381 accounts are not tied to a specific tool.

Shared IPs

Most shared IPs connect exactly two teams

922 IP addresses were used by more than one team. Roommates, campus networks, company VPNs and mobile carriers all produce this, so a shared address is context. It matters when it lines up with something else, like the same challenge solved for several teams from one address.

Shared IP addresses, by teams using each
2 teams74781%
3 teams11412%
4 teams273%
5 to 9 teams222%
10 to 20 teams121%
Pre-release

One challenge drew every pre-release solve

135 correct flags arrived before their challenge's recorded release time. All 135 were for the same OSINT challenge, and most came in several hours before that time. Every other challenge had at most a handful of early solves.

Actions

What we did about it

  • 147

    Teams removed from the public scoreboard

    146 were hidden and 1 was banned. Together they had 650 player accounts. 137 of the 147 had at least one high-severity signal.

  • 56

    Individual accounts banned

    45 of them never joined a team, and 55 shared an IP address with accounts on other teams.

  • 10

    Teams named on the Wall of Shame

    The cases where the evidence was clearest.

Questions

If you're wondering

My team tripped a signal. Are we in trouble?

Probably not. 1,011 teams tripped at least one signal, and 147 were removed. If your team is still on the scoreboard, the review did not find enough to act on.

We solved several challenges in a few minutes. Is that a problem?

Speed alone is not. Strong players, and teams who split up the work, trip timing checks all the time. Timing matters when it lines up with something else, such as the same rare wrong answer showing up from another team.

We used scripts and tools. Did that get us flagged?

Possibly, but automation signals are rated low. They carry weight when the traffic was aimed at the platform or the servers' error pages instead of a challenge, or when they show up next to stronger signals.

Why doesn't this page name anyone?

This page explains the process and the overall picture. The Wall of Shame covers the teams where the evidence was clearest.

I think we were removed by mistake.

Contact the organizers through the official DEADFACE CTF channels and include your team name. We will look at the evidence again.

Not published

What this report leaves out

  • Usernames, team names, email addresses and IP addresses.
  • The exact thresholds behind each integrity check, so they can't be tuned around next year.
  • Which challenges carried AI canaries, and what the hidden text said.