|M.Sc Student||Rosenbaum Assaf|
|Subject||Trusted Execution Environments|
|Department||Department of Computer Science||Supervisors||Professor Eli Biham|
|Dr. Sara Bitan|
Our dependence on computer systems is constantly growing. We rely on them for almost every aspect of our lives and and trust them with our most sensitive information, and critical operations. For example, a standard mobile phone may store personal data such as biomteric data or credit card number, as well as private information such as browsing history or medical records.
From an attacker's stand point, the potential profit from a successful attack on these devices is quite considerable. Therefore, malicious players are willing to invest increasing efforts to devise highly sophisticated attacks. These malicious players use various technologies to constantly attack a wide range of targets such as governments, institutes and individuals.
One particularly interesting type of attack is aiming the victim's operating system (OS) kernel. A modern OS kernel is an extremely complex software with millions of lines of code, making it error prone and therefore easier to be exploited by attackers. A successful attack on the OS kernel is devastating. An attacker with kernel privileges may bypass the security policy which is supposed to be enforced by the kernel. Moreover, attackers who succeed to take over the kernel have total control over the system, including all user programs, disk files and I/O devices. Successful attackers can even bypass protection mechanisms like anti-virus or anti-malware kits, which rely on kernel services for their integrity and availability. With these facts in mind, we realized the OS kernel is a high value target for attackers.
However, we observed that the OS kernel lacks some of the protection mechanisms that are used in user space. If the OS is compromised, the victim's system can no longer protect itself. Moreover, the system may not be aware it is compromised.