2019Procedia Computer ScienceOpen access

An EAF guard driver to prevent shellcode from removing guard pages

Shu Akabane, Tomoya Miwa, Takeshi Okamoto

Open full text 2 citations

Abstract

Prevention of shellcode execution can be located at the last defense line against cyberattacks on vulnerabilities. Export address filtering (EAF), a security feature of Windows Defender Exploit Guard in Windows 10, prevents shellcode execution by guarding access to export address tables using guard pages. To prevent and raise awareness of a new bypass technique, we show a proof-of-concept of the new bypass technique that, by calling the NT!NtProtectVirtualMemory function, removes guard pages created by EAF. Windows shellcode with the proof-of-concept code is compatible with various versions of Windows 7 or later. To prevent the new bypass technique, we propose an EAF guard driver that prevents shellcode from removing guard pages. In tests, the driver prevented, without false alarms, the removal of the guard pages.

Open-access reader

About this research paper

What this paper is about

Prevention of shellcode execution can be located at the last defense line against cyberattacks on vulnerabilities. Export address filtering (EAF), a security feature of Windows Defender Exploit Guard in Windows 10, prevents shellcode execution by guarding access to export address tables using guard pages. To prevent and raise awareness of a new bypass technique, we show a proof-of-concept of the new bypass technique that, by calling the NT!NtProtectVirtualMemory function, removes guard pages created by EAF. Windows shellcode with the proof-of-concept code is compatible with various versions of Windows 7 or later. To prevent the new bypass technique, we propose an EAF guard driver that prevents shellcode from removing guard pages. In tests, the driver prevented, without false alarms, the removal of the guard pages.

Why it matters

OpenAlex reports 2 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

Prevention of shellcode execution can be located at the last defense line against cyberattacks on vulnerabilities. Export address filtering (EAF), a security feature of Windows Defender Exploit Guard in Windows 10, prevents shellcode execution by guarding access to export address tables using guard pages. To prevent and raise awareness of a new bypass technique, we show a proof-of-concept of the new bypass technique that, by calling the NT!NtProtectVirtualMemory function, removes guard pages created by EAF. Windows shellcode with the proof-of-concept code is compatible with various versions of Windows 7 or later. To prevent the new bypass technique, we propose an EAF guard driver that prevents shellcode from removing guard pages. In tests, the driver prevented, without false alarms, the removal of the guard pages.

Key concepts: Guard (computer science), Computer science, Operating system, Exploit, Computer security, Security guard, Programming language

Related papers

Back to paper searchBrowse research topicsOriginal source
An EAF guard driver to prevent shellcode from removing guard pages — Research Paper | ScholarLens