Community members

Vulnerability Research / Exploitation Techniques

Owner: Patrick

Community members: 2

Description:

Brief description: This community focuses on vulnerability research and exploitation techniques

Tags: , , , , ,

Website:

Latest discussion

No topics have been created.

Community files

Chapter 6, "Memory Corruption Part II - Heaps" by Mario Hewardt and Daniel Pravat

92 days ago

More

This chapter explains in detail what the heap is and how it works. It is part of the book "Advanced Windows Debugging" and available on the author's website, free of charge (Sample Chapter). 

"Reliable Windows Heap Exploits" by Matt Conover & Oded Horovitz

101 days ago

More

Must read! 

"Windows Heap Overflows" by David Litchfield

101 days ago

More

The presentation focuses on Windows Heap Overflow Exploitation.

"Third Generation Exploitation" by Halvar Flake

101 days ago

More

Halvar discusses, among others, Windows Heap Overflows. It is one of the first presentations that focuses on this topic. 

"Bypassing Browser Memory Protections" by M.Dowd and A.Sotirov

105 days ago

More

From the Introduction:

"Over the past several years, Microsoft has implemented a number of memory protection mechanisms with the goal of preventing the reliable exploitation of common software vulnerabilities on the Windows platform. Protection mechanisms such as GS, SafeSEH, DEP and ASLR complicate the exploitation of many memory corruption vulnerabilities and at first sight present an insurmountable obstacle for exploit developers.

In this paper we will discuss the limitations of all aforementioned protection mechanisms and will describe the cases in which they fail. We aim to show that the protection mechanisms in Windows Vista are particularly ineffective for preventing the exploitation of memory corruption vulnerabilities in browsers. This will be demonstrated with a variety of exploitation techniques that can be used to bypass the protections and achieve reliable remote code execution in many different circumstances."

 

<!--EndFragment-->

"Bypassing Windows Hardware-enforced Data Execution Prevention" by skape and Skywing

108 days ago

More

From their abstract:

 

"This paper describes a technique that can be used to bypass Windows hardware-enforced Data Execution Prevention (DEP) on default installations of Windows XP Service Pack 2 and Windows 2003 Server Service Pack 1. This technique makes it possible to execute code from regions that are typically non-executable when hardware support is present, such as thread stacks and process heaps. While other techniques have been used to accomplish similar feats, such as returning into NtProtectVirtualMemory, this approach requires no direct reprotecting of memory regions, no copying of arbitrary code to other locations, and does not have issues with NULL bytes. The result is a feasible approach that can be used to easily bypass the enhancements offered by hardware-enforced DEP on Windows in a way that requires very minimal modifications to existing exploits."

"Understanding Windows Shellcode" by skape

124 days ago

More

From the Intro of the document:

"The purpose of this document is to familiarize or refresh the reader with the
techniques used to write reliable shellcode for Windows. The reader is expected
to be familiar with IA32 assembly on at least a conceptual level. It is also
recommended that the reader take some time to review some of the items in the
bibliography. Aside from that, the only other requirement is the desire to learn.
Many portions of this document have been covered elsewhere before but, to
the author’s satisfaction, have not been compiled into an easily understandable
format for beginners and tinkerers alike. For this reason the author hopes that
the reader walks away with a more centralized point of reference with regards
to the topic of Windows shellcode.


This document will focus both on Windows 9x and Windows NT based versions
with more emphasis on the latter.

The tool used to compile the assembly displayed in this document is cl.exe
as distributed with Microsoft’s Visual Studio suite. With cl.exe, one should
make use of the inline assembler functionality when attempting to compile the
assembly. Also, one can likely use masm or other assemblers that support intelstyle
assembly as well if one does not have access to cl.exe.
Finally, all of the shellcode in this document can be found at http://www.hick.
org/code/skape/shellcode/win32."

Original Link: www.hick.org/code/skape/papers/win32-shellcode.pdf