Cyber Grand Challenge
   HOME

TheInfoList



OR:

The 2016 Cyber Grand Challenge (CGC) was a challenge created by The
Defense Advanced Research Projects Agency The Defense Advanced Research Projects Agency (DARPA) is a research and development agency of the United States Department of Defense responsible for the development of emerging technologies for use by the military. Originally known as the Adv ...
(DARPA) in order to develop automatic defense systems that can discover, prove, and correct software flaws in
real-time Real-time or real time describes various operations in computing or other processes that must guarantee response times within a specified time (deadline), usually a relatively short time. A real-time process is generally one that happens in defined ...
. The event placed machine versus machine (no human intervention) in what was called the "world's first automated network defense tournament." The final event was held on August 4, 2016 at the Paris Hotel & Conference Center in
Las Vegas, Nevada Las Vegas (; Spanish for "The Meadows"), often known simply as Vegas, is the 25th-most populous city in the United States, the most populous city in the state of Nevada, and the county seat of Clark County. The city anchors the Las Vegas ...
within the 24th
DEF CON DEF CON (also written as DEFCON, Defcon or DC) is a hacker convention held annually in Las Vegas, Nevada. The first DEF CON took place in June 1993 and today many attendees at DEF CON include computer security professionals, journalists, lawyer ...
hacker convention. It resembled in structure the long-standing "
capture the flag Capture the flag (CTF) is a traditional outdoor sport where two or more teams each have a flag (or other markers) and the objective is to capture the other team's flag, located at the team's "base", and bring it safely back to their own base. ...
" (CTF) security competitions, and the winning system indeed competed against humans in the "classic" DEF CON CTF held in the following days. The Cyber Grand Challenge featured, however, a more standardized scoring and vulnerability-proving system: all exploits and patched binaries were submitted and evaluated by the referee infrastructure


Background

Races develop between criminals attempting to abuse vulnerabilities and analysts who assess, remediate, check, and deploy a patch before significant damage can be done. Experts adhere to a process that involves complicated reasoning followed by manual creation of each security signature and software patch, a technical process that requires months and dollars. This has resulted in various software insecurities favoring attackers. Devices such as smart televisions, wearable technologies, and high-end home appliances that are connected to the internet aren't always produced with security in mind and moreover utility systems, power grids, and traffic lights could be more susceptible to attacks, says the DARPA. To help overcome these challenges, DARPA launched in 2014 the Cyber Grand Challenge: a two-year competition seeking to create automatic defensive systems capable of reasoning about flaws, formulating patches and deploying them on a network in real time. The competition was split into two main events: an open qualification event to be held in 2015 and a final event in 2016 where only the top seven teams from the qualifiers could participate. The winner of the final event would be awarded $2 million and the opportunity to play against humans in the 24th
DEF CON DEF CON (also written as DEFCON, Defcon or DC) is a hacker convention held annually in Las Vegas, Nevada. The first DEF CON took place in June 1993 and today many attendees at DEF CON include computer security professionals, journalists, lawyer ...
capture the flag competition.


Technology


Challenge binaries

Challenge Binaries ran on the full 32-bit
Intel x86 x86 (also known as 80x86 or the 8086 family) is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel based on the Intel 8086 microprocessor and its 8088 variant. The 8086 was introd ...
architecture, albeit with a simplified ABI. Reducing external interaction to its base components (e.g., system calls for well-defined I/O, dynamic memory allocation, and a single source of randomness) simplified both modeling and securely running the binaries in isolation to observe their behavior. Internal complexity was however unrestricted, with challenges going as far as implementing a particle physics simulator, chess, programming/scripting languages, parsing of huge amounts of markup data, vector graphics,
just-in-time compilation In computing, just-in-time (JIT) compilation (also dynamic translation or run-time compilations) is a way of executing computer code that involves compilation during execution of a program (at run time) rather than before execution. This may cons ...
, VMs, etc. The challenge authors were themselves scored based on how well they distinguished the players' relative performance, encouraging challenges to exercise specific weaknesses of automatic reasoning (e.g., state explosion) while remaining solvable by well-constructed systems.


Player systems

Each playing system -- a fully-automated "Cyber Reasoning System" (CRS) -- had to demonstrate ability in several areas of computer security: * Automatic vulnerability finding on previously-unknown binaries. * Automatic
patching Patching is a small village and civil parish that lies amid the fields and woods of the southern slopes of the South Downs in the National Park in the Arun District of West Sussex, England. It has a visible hill-workings history going back t ...
of binaries without sacrificing performance. * Automatic exploit generation within the framework's limitations. * Implementing a security strategy: balancing resource-assignment among the available servers (a variation of the
multi-armed bandit problem In probability theory and machine learning, the multi-armed bandit problem (sometimes called the ''K''- or ''N''-armed bandit problem) is a problem in which a fixed limited set of resources must be allocated between competing (alternative) choices ...
), responding to competitors (e.g., analyzing their patches, reacting to exploitation), evaluating own action's effect on the final score, ... Teams described their approach in various venues. Publications on individual components, such as Shellphish's Additionally, the third-place finisher (Shellphish) released their entire system's source code. Due to the complexity of the task, players had to combine multiple techniques and do so in a fully-unattended and time-efficient fashion. For instance, the highest attack score was reached by discovering vulnerabilities via a combination of guided
fuzzing In programming and software development, fuzzing or fuzz testing is an automated software testing technique that involves providing invalid, unexpected, or random data as inputs to a computer program. The program is then monitored for exceptions ...
and
symbolic execution In computer science, symbolic execution (also symbolic evaluation or symbex) is a means of analyzing a program to determine what inputs cause each part of a program to execute. An interpreter follows the program, assuming symbolic values for inp ...
-- i.e., an AFL-based fuzzer combined with th
angr binary analysis framework
leveraging a QEMU-based
emulation Emulation may refer to: *Emulation (computing), imitation of behavior of a computer or other electronic system with the help of another type of system :*Video game console emulator, software which emulates video game consoles *Gaussian process em ...
and execution-tracing system.


CGC Qualification Event (CQE)

The CGC Qualification Event (CQE) was held on June 3, 2015 and lasted for 24 hours. CQE had two tracks: a funded-track for seven teams selected by DARPA based on their proposals (with an award up to $750,000 per team) and an open-track where any self-funded team could participate. Over 100 teams registered internationally and 28 reached the Qualification Event. During the event, teams were given 131 different programs and were challenged with finding vulnerabilities as well as fixing them automatically while maintaining performance and functionality. Collectively, all teams managed to identify vulnerabilities in 99 out of the 131 provided programs. After collecting all submissions from competitors, DARPA ranked all teams based on their patching and vulnerability-finding ability. The top seven teams and finalists in alphabetical order were: * CodeJitsu, a team of researchers from the University of California at Berkeley, Cyberhaven, and Syracuse (funded track). * CSDS, a team of researchers from the University of Idaho (open track). * Deep Red, a team of specialized engineers from Raytheon (open track). * disekt, a computer security team that participates in various Capture the Flag security competitions hosted by other teams, universities and organizations (open track). * ForAllSecure, a security startup composed of researchers and security experts (funded track). * Shellphish, a hacking team from the University of California, Santa Barbara (open track). * TECHx, a team of software analysis experts from
GrammaTech GrammaTech is a software-development tools vendor based in Bethesda, Maryland with a research center based in Ithaca, New York. The company was founded in 1988 as a technology spin-off of Cornell University. GrammaTech is a provider of application ...
, Inc. and the University of Virginia (funded track). Upon qualification, each one of the above seven teams received $750,000 in funding to prepare for the final event.


CGC Final Event (CFE)

The CGC Final Event (CFE) was held on August 4, 2016 and lasted for 11 hours. During the final event, finalists saw their machines face against each other in a fully automatic capture-the-flag competition. Each of the seven qualifying teams competed for the top three positions that would share almost $4 million in prize money.


Final Results

The winning systems of the Cyber Grand Challenge (CGC) Final Event were: # "Mayhem" - developed by ForAllSecure, of Pittsburgh, Pa. - $2 million # "Xandra" - developed by team TECHx consisting of GrammaTech Inc., Ithaca, N.Y., and UVa, Charlottesville, Va. - $1 million # "Mechanical Phish" - developed by
Shellphish The 2016 Cyber Grand Challenge (CGC) was a challenge created by The Defense Advanced Research Projects Agency (DARPA) in order to develop automatic defense systems that can discover, prove, and correct software flaws in real-time. The event plac ...
, UC Santa Barbara, Ca. - $750,000 The other competing systems were: * Rubeus - developed by Michael Stevenson, Raytheon, Deep Red of Arlington, Va. * Galactica - developed by CodeJitsu of Berkeley, Ca., Syracuse, N.Y., and Lausanne, Switzerland * Jima - developed by CSDS of Moscow, Id. * Crspy - system developed by disekt of Athens, Ga.


References


External links


DARPA Cyber Grand Challenge (Archived)

Cyber Grand Challenge Samples

DARPA Cyber Grand Challenge Competitor Portal (Archived)

DARPAtv official videos, including the final and its analysis
{{DARPA, state=uncollapsed 2016 in science August 2016 events in the United States