Introduction To Software Exploits

ShmooCon X - 2014

Presented by: Corey Kallenberg
Date: Saturday January 18, 2014
Time: 10:00 - 10:50
Location: Georgetown West
Track: Trainer Exchange

Creator: Corey K.

License: Creative Commons: Attribution, Share-Alike (http://creativecommons.org/licenses/by-sa/3.0/)

Class Prerequisites: Introduction to x86

Lab Requirements: The Linux VM provided below. Or any Linux VM with the provided vulnerable software examples installed.

Class Textbook: "The Shellcoder's Handbook: Discovering and Exploiting Security Holes" (2nd edition) by Chris Anley, John Heasman, Felix Lindner, Gerardo Richarte

Recommended Class Duration: 2 days

Creator Available to Teach In-Person Classes: Yes

Author Comments:

Software vulnerabilities are flaws in program logic that can be leveraged by an attacker to execute arbitrary code on a target system. This class will cover both the identification of software vulnerabilities and the techniques attackers use to exploit them. In addition, current techniques that attempt to remediate the threat of software vulnerability exploitation will be discussed.

This will be a lab driven class where specific software vulnerability types in particular environments are discussed and then exploited in a lab setting. Examples of lab components of the class as well as specific topics covered include: •Shellcode development •Stack overflow exploitation •Heap overflow exploitation •Static source code analysis •Defeating non-executable stack protection

The class will help students be more aware of the specific details and mechanisms of software exploits we see in the wild. This knowledge will enable the students to better analyze their own software for vulnerabilities in an effort to produce more secure code.

Corey Kallenberg

Corey Kallenberg is a security researcher with an interest in operating system and PC firmware security. In 2012 he coauthored work on using timing based attestation to detect Windows kernel hooks at DEFCON and IEEE S&P. In 2013 his focus shifted to the BIOS, where he coauthored work pointing out problems in current PC trusted computing approaches. During this time frame he was also involved in discovering and exploiting vulnerabilities that allowed bypassing of the signed BIOS enforcement on a number of systems. These results were presented at NoSuchCon, Blackhat USA, EkoParty, HITB, ACM CCS, and other conferences. Corey is also the author of OpenTPM, the open source Trusted Platform Module (TPM) driver for Windows. Corey is currently continuing to investigate BIOS/UEFI and trusted computing implementations for security vulnerabilities.


KhanFu - Mobile schedules for INFOSEC conferences.
Mobile interface | Alternate Formats