Using Hypervisors to Overcome Structured Exception Handler Attacks
Algawi, A., Kiperberg, M., Leon, R., & Zaidenberg, N. (2019). Using Hypervisors to Overcome Structured Exception Handler Attacks. In T. Cruz, & P. Simoes (Eds.), ECCWS 2019 : Proceedings of the 18th European Conference on Cyber Warfare and Security (pp. 1-5). Academic Conferences International. Proceedings of the European conference on information warfare and security.
© The Author(s) 2019
Microsoft windows is a family of client and server operating systems that needs no introduction. Microsoft windows operating system family has a feature to handle exceptions by storing in the stack the address of an exception handler. This feature of Microsoft Windows operating system family is called SEH (Structured exception handlers). When using SEH the exception handler address is specifically located on the stack like the function return address. When an exception occurs the address acts as a trampoline and the EIP jumps to the SEH address. By overwriting the stack one can create a unique type of return oriented programming (ROP) exploit that force the instruction pointer to jump to a random memory address. This memory address may contain random malicious code. Multiple Microsoft Windows applications are particularly vulnerable to this type of exploit. Attacks on Microsoft Window application that exploit these mechanisms are found in many common windows applications (including Microsoft Office, Adobe Acrobat, Flash and other popular software). These attacks are well documented in CVE database in numerous exploits. We previously described how hypervisors can be used to white list an end point and provide application control for a workstation and servers and protect against malware and viruses that may run on the end point computer. In this work we extend the protection mechanism for end points and servers that uses the hypervisor to white list the machine. The hypervisor detects permission elevation from user space to kernel space (system calls invocation) and detects anomalies in the software execution. The hypervisor based mechanism allows for detection and prevention of SEH return oriented exploits execution. Our hypervisor based SEH-exploit prevention mechanism was tested on multiple well documented CVE vulnerabilities. Our hypervisor was found to prevent a large collection of different types of SEH exploits in multiple applications and multiple flavours and versions of Windows OS in both 32 and 64 bit environments ...
PublisherAcademic Conferences International
Parent publication ISBN978-1-912764-28-0
ConferenceEuropean Conference on Cyber Warfare and Security
Is part of publicationECCWS 2019 : Proceedings of the 18th European Conference on Cyber Warfare and Security
Publication in research information system
MetadataShow full item record
Showing items with similar title or keywords.
Ben Yehuda, Raz; Kiperberg, Michael; Zaidenberg, Nezer Jacob (MDPI AG, 2022)This paper presents an improvement of control flow attestation (C-FLAT) for Linux. C-FLAT is a control attestation system for embedded devices. It was implemented as a software executing in ARM’s TrustZone on bare-metal ...
Tirronen, Ville (Springer, 2018)Injection attacks top the lists of the most harmful software vulnerabilities. Injection vulnerabilities are both commonplace and easy to exploit, which makes development of injection protection schemes important. In this ...
Resh, Amit (University of Jyväskylä, 2016)The business world is exhibiting a growing dependency on computer systems, their operations and the databases they contain. Unfortunately, it also suffers from an ever growing recurrence of malicious software attacks. ...
Kiperberg, Michael (University of Jyväskylä, 2015)One of the important aspects of protecting software from attack, theft of algorithms, or illegal software use is eliminating the possibility of performing reverse engineering. One common method used to deal with these ...
Karppinen, Tomi (2014)This master’s thesis is a study of malware and methods and tools used in their analysis in a 32-bit Windows environment. The methods vary from simple observations to deeper static and dynamic analysis in assembly language. ...