The project has done pioneering work along three dimensions: (i) detection of vulnerable computers which are about to be hacked, (ii) detection of software bugs, and (iii) detection of hardware bugs.
• Detection of computers that are about to be hacked. This is a very difficult area of work. Although it is relatively easy to find out if a computer has been compromized (i.e. hacked), it seems utterly difficult, if not impossible, to determine if a computer will be hacked in the future. In ReAct, we did just that: we predicted the future security stance of computers. Using advanced Artificial Intelligence approaches and combining a number of signals about the security hygiene of current computers, ReAct researchers have managed to predict whether a computer will be compromised. Even better they managed to do this prediction with very high accuracy - sometimes higher than 95%. This means that they can (with 95% certainty) identify the computers that need to be protected better so as to be able to withstand future attacks.
• Detection of software bugs. Cyber attackers who penetrate computers usually exploit a vulnerability (a bug) that exists in the software of the computers. Finding such software bugs can be notoriously difficult and time consuming. Indeed, if it were easy to find these bugs, the software development companies would have found them before the attackers. In this line of work, ReAct researchers have developed "fuzzing" approaches that are able to detect bugs even when these bugs are hidden deeply in the software and even when they are triggered by very infrequent combination of external events. Using their approach, they have identified several bugs that exist in commonly used software programs (i) helping the community to patch the bugs and make software harder to be exploited by attackers, and (ii) arming the community with a toolset that will continue to help with bug discovery in the future.
• Detection and Mitigation of Software-controlled hardware bugs. When we talk about security we usually refer to software: buffer overflows, software bugs, software vulnerabilities, trapdoors - everything in software. However, bugs can also exist in hardware. ReAct researchers have demonstrated how to "trigger" hardware bugs that can eventually lead to breaking cryptography and compromising data and communications. The idea is simple: repeatedly reading (hammering) a memory location may result in changing the value of a different memory location, possibly belonging to another application. This bug, called Rowhammer in the language of computers, although simple to describe, it is very difficult to fix. The core of the difficulty lies in the fact that it is not a software bug: it is a hardware bug and thus can be completely and properly solved only in future hardware versions of the effected devices. For their work, in developing virtual-memory-based solutions that mitigate Rowhammer, ReAct researchers received numerous awards, including an Intel Bounty Reward and a recent patent.