Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There's a lot of things going on here. But what is the point of Arduino?


AVR. Not Arduino.

Starfighter is the successor to Microcorruption, a microcontroller-based memory corruption CTF.

We wrote Microcorruption to provide hands-on learning for memory corruption exploits.

We used microcontrollers instead of full-featured CPUs so we could (a) lose most of the irrelevant details of operating systems and (b) fit the whole memories of thousands of emulated CPUs into a single server process. We also liked the idea of leveling the playing field, so that pros with large libraries of X86 tools didn't have too much of an advantage.

Microcorruption used MSP430. We picked MSP430 because it's the simplest, most elegant MCU instruction set for which GCC support was trivial.

Starfighter uses AVR because we didn't want to use MSP430 twice, and AVR is the most popular MCU instruction set among hobbyists. It turns out AVR does other interesting things for a security CTF, because unlike MSP430, it's a Harvard architecture.

The AVR levels are intertwined with the trading levels, so that the objectives for the AVR levels are more interesting than those of Microcorruption. You won Microcorruption mostly by figuring out how to exploit simple memory corruption bugs. My hope is that Starfighter requires a bit more in-sim programming.


I think that is just to refer to the instruction set that is being emulated (8-bit AVR - see Erin Ptacek's blog post about it on sockpuppet.org), used by the microcontroller on many Arduino boards




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: