2025 Challenge: Operation WIRE STORM
Got a solution you want to share?
Your Mission
A critical situation has emerged, and we’re calling on the brightest technical minds to assist. In order to transmit highly sensitive data through a known-compromised server, we’ve crafted a custom protocol, the CoreTech Message Protocol (CTMP).
Time is of the essence, and we need your expertise to rapidly handle this data before it’s too late. Your mission is to develop a high-speed program in C, C++ or Rust to relay these sensitive messages via a custom proxy, to make sure our teams have all they need to know to operate safely.
CoreTech Message Protocol
The protocol has been specially crafted to encapsulate large data transfers over TCP.
Each message will be prepended with the CTMP header, consisting of:
- A single MAGIC byte, which will always be
0xCC - A single PADDING byte, filled with
0x00 - The LENGTH of the data to follow, NOT including the length of the header itself. This field is unsigned and in network byte order
- Four PADDING bytes, again filled with
0x00
0 1 2 3
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAGIC 0xCC | PADDING | LENGTH |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PADDING |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| DATA ...................................................... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
Operational Validation
Terms and conditions
- All submissions must be hosted using a public code-hosting service
- All submissions must be hosted using a public code-hosting service such as Github, and submitted using the submission form.
- All submissions must include a detailed README for building and verifying your solution
- All submissions must build for Ubuntu 24.04 LTS
- You may not use third-party libraries other than your chosen language’s standard library
AI/LLM statement
At CoreTech we appreciate that LLMs have become a de facto tool for iterating on software designs. To that end, using an LLM to assist you in understanding your solution, in soliciting immediate feedback on approach, and in understanding language features in a greater detail, is permissible.
You will, however, be asked to explain your reasoning for using various constructs, language features and tools on the day, so ensure you understand what you’re using!
Do you have an endless curiosity for technology?
Get ready to work with some of the most brilliant minds who care more about solving problems than climbing hierarchies.