Reverse engineering

Visual Studio and Build Process

Introduction Each DLL contains various exported functions that can be accessed by other programs. DLLs are being extensively used because the DLL is loade

The ASP.NET Internals

ASP.NET Configuration Options The most important configurations in the web.config file will be described in this section:[pkadzone zone="main_top"] <authe

The Sysenter Instruction Internals

Introduction In the previous article we've seen that whether we're using the int 0x2e interrupt or sysenter instruction, the same method in kernel is being u

Open Source .NET: Platform-Independent .NET Application Development with MONO – part one

Abstract Over the years, the Linux operating system has become more popular among the developer community due to a significant cost advantage over proprietar

Introduction to Kernel Debugging with Windbg

Introduction You've probably heard about Windbg before, right? It's a Windows debugger written by Microsoft that's used by developers and hackers for debuggi

Presenting the PE Header

Let's present the whole PE file structure with the picture below (taken from [5]): [pkadzone zone="main_top"] At the beginning there's a DOS header, which is

The Import Directory: Part 1

We know that when the operating system loads the executable, it will scan through its IAT table to locate the DLLs and functions the executable is using. Thi

The export directory

Example of the export directory Let's take a look at a simple example to understand how the export directory is used by the executables/libraries. Let's sup

An Introduction to Returned-Oriented Programming (Linux)

INTRODUCTION: In 1988, the first buffer overflow was exploited to compromise many systems. After 20 years, applications are still vulnerable, despite the eff

Loading the Windows Kernel Driver

In the previous part of the article, we've explained how to compile the Windows kernel driver. Now that we know how to compile the driver, we also have to lo