The timing here is interesting.
I wrote the kernel of Microcorruption (the emulator and the basic web interface) as a "hack night" challenge for our team at Matasano. When we couldn't get people to leave the office at 1:00AM that night, I decided we should probably run it as an open CTF. I got Square to re-skin the interface and teammates Hans and Nicholas (one of our absurdly overqualified interns) to spend 6 months revamping the levels, and there you have it.
(Aside: I once asked Greg Brockman, then at Stripe, why Stripe's CTFs always ended so quickly. Why would you ever take one of these things down, I wondered? Greg told me I'd understand after a week of running it. So far as I know, the only things that have ever caused problems for the Microcorruption deployment were due to the log filesystem filling up.)
Anyways.
I left Matasano a year and a half ago to start Starfighter, a company based on these kinds of games. Matasano used Microcorruption to do recruiting, but we got so many qualified leads from it that it was sort of a waste to ever do another one there.
As luck would have it, we just last week opened the beta test for Starfighter's Microcorruption-style CTF. It's called Jailbreak. Here are the change bars (design-wise; the two CTFs share no code):
- Jailbreak is AVR and Microcorruption is MSP430. AVR is much more... interesting... to do memory corruption on.
- Jailbreak includes a compiler (we compile both to AVR in later levels and to a bytecode VM that runs out of the emulator's dmem, and escaping that interpreter is the goal of several levels). Microcorruption was just GCC.
- Jailbreak is multiple cores, and connects to the market we use for the Trading CTF we did in January. All the cores in Jailbreak are event-driven; they "run" "constantly", and respond to network events. Microcorruption sort-of kind-of rebooted with every user input.
We're beta-testing the "trainer" for Jailbreak right now, and I expect it to be open to the public on Tuesday or Wednesday of next week (we'll open it up when the beta testers clear all the levels, which hasn't happened yet, which is due mostly to very bad documentation and lots of balance problems, which is why we beta test these things). The trainer is 10 levels that are very similar in style to Microcorruption; the full CTF will probably be out in early-mid July.
I wrote the kernel of Microcorruption (the emulator and the basic web interface) as a "hack night" challenge for our team at Matasano. When we couldn't get people to leave the office at 1:00AM that night, I decided we should probably run it as an open CTF. I got Square to re-skin the interface and teammates Hans and Nicholas (one of our absurdly overqualified interns) to spend 6 months revamping the levels, and there you have it.
(Aside: I once asked Greg Brockman, then at Stripe, why Stripe's CTFs always ended so quickly. Why would you ever take one of these things down, I wondered? Greg told me I'd understand after a week of running it. So far as I know, the only things that have ever caused problems for the Microcorruption deployment were due to the log filesystem filling up.)
Anyways.
I left Matasano a year and a half ago to start Starfighter, a company based on these kinds of games. Matasano used Microcorruption to do recruiting, but we got so many qualified leads from it that it was sort of a waste to ever do another one there.
As luck would have it, we just last week opened the beta test for Starfighter's Microcorruption-style CTF. It's called Jailbreak. Here are the change bars (design-wise; the two CTFs share no code):
- Jailbreak is AVR and Microcorruption is MSP430. AVR is much more... interesting... to do memory corruption on.
- Jailbreak includes a compiler (we compile both to AVR in later levels and to a bytecode VM that runs out of the emulator's dmem, and escaping that interpreter is the goal of several levels). Microcorruption was just GCC.
- Jailbreak is multiple cores, and connects to the market we use for the Trading CTF we did in January. All the cores in Jailbreak are event-driven; they "run" "constantly", and respond to network events. Microcorruption sort-of kind-of rebooted with every user input.
We're beta-testing the "trainer" for Jailbreak right now, and I expect it to be open to the public on Tuesday or Wednesday of next week (we'll open it up when the beta testers clear all the levels, which hasn't happened yet, which is due mostly to very bad documentation and lots of balance problems, which is why we beta test these things). The trainer is 10 levels that are very similar in style to Microcorruption; the full CTF will probably be out in early-mid July.