Skip to content
Go at the DARPA Grand Challenge (GopherCon 2017)
Talk on YouTube
About the 2016 Grand
- Each team is given vulnerable binaries
- Goal: prevent your binaries from being exploited by malicious inputs, and exploit other teams' binaries
This team's idea
- Built an IDS which captured packets, flagged + blocked anomalous inputs, and stored these flagged inputs in a database
- Used gopacket to store and parse packets
- Problem - program dropping packets, due to too many incoming packets
- Solution - write goroutines for parsing, filtering, storing data. This way, you can operate on a lot of packets at once, in parallel
- Note: they only parallelized storing data, as that was their bottleneck