Building Secure Defenses Against Code-Reuse Attacks - download pdf or read online

By Lucas Davi, Ahmad-Reza Sadeghi

ISBN-10: 3319255444

ISBN-13: 9783319255446

ISBN-10: 3319255460

ISBN-13: 9783319255460

This ebook offers an in-depth examine return-oriented programming assaults. It explores a number of traditional return-oriented programming assaults and analyzes the effectiveness of security innovations together with tackle area format randomization (ASLR) and the control-flow regulations applied in protection watchdogs similar to Microsoft EMET.

Chapters additionally clarify the primary of control-flow integrity (CFI), spotlight some great benefits of CFI and talk about its present weaknesses. a number of enhanced and complicated return-oriented programming assault strategies similar to just-in-time return-oriented programming are presented.

Building safe Defenses opposed to Code-Reuse Attacks is a wonderful reference device for researchers, programmers and pros operating within the safeguard box. It presents advanced-level scholars learning machine technological know-how with a entire review and transparent figuring out of significant runtime attacks.

Show description

Read Online or Download Building Secure Defenses Against Code-Reuse Attacks PDF

Best object-oriented software design books

Read e-book online UML for Mere Mortals® PDF

Have to get effects with UML. .. with no pointless complexity or mind-numbing jargon? you wish UML for Mere MortalsR. This easy-to-read advent is ideal for technical pros and company stakeholders alike: a person who must create, comprehend, or overview UML versions, with no turning into a hard-core modeler.

Download PDF by Favre L.: UML and the Unified Process

Unified Modeling Language (UML), Unified approach (UP), and different details modeling equipment are addressed during this scholarly attention of the research, layout, and improvement of web-based and firm purposes. the most up-tp-date examine on conceptual, theoretical, and empirical problems with modeling for on-line enterprise and static details is equipped.

New PDF release: Objective-C: Visual QuickStart Guide

So much books on Objective-C are quite prosaic, yet i admire this book's association, which breaks the good points of objective-c into great chew dimension options. For the target programming naive developer, this offers a pleasant studying curve for turning into fluent in easy paradigms of Obj-C. i might discuss with Apple's newest documentation at the evolving complicated positive aspects of Objective-C, which aren't coated in addition by means of Kaplan or Mark.

Download PDF by Walker Royce: Software Project Management: A Unified Framework (The

Software program undertaking administration offers a brand new administration framework uniquely fitted to the complexities of recent software program improvement. Walker Royce's pragmatic standpoint exposes the shortcomings of many well-accepted administration priorities and equips software program pros with cutting-edge wisdom derived from his two decades of profitable from the trenches undertaking administration event.

Extra resources for Building Secure Defenses Against Code-Reuse Attacks

Sample text

In particular, the code memory holds the program binary and linked shared libraries. In modern operating systems, several important libraries and their functionality are linked by default into the address space of the application. Consider as an example the UNIX C library libc. Although the target application may only require the printf() function to print strings on the standard output (stdout), other libc functions such as system() or memcpy() will be always mapped into the address space of the application as well.

There is, however, a XOR gadget that takes its operands from eax and edi. Branch Gadgets Note that branching in return-oriented programming attacks is realized by modifying the stack pointer rather than the instruction pointer [53]. In general, we can distinguish two different types of branches: unconditional and conditional branches. 3). The first uses the LEAVE instruction to load the stack pointer (esp) with a new address that has been loaded before into the intermediate register ebp. The second variant implements the unconditional branch by adding a constant offset to esp.

Hence, the result in eax will be exactly the contents of [ebp-4] if eax was zero, or zero otherwise. dll that follow the same pattern and could have been leveraged for a conditional branch gadget. We then use the SUB gadget to subtract esi from eax so that the latter holds the branch offset for esp. Finally, we move eax into esp using the stack as temporary storage. The store gadget will store the branch offset on the stack, where POP ebp followed by the unconditional Branch 1 gadget loads it into esp.

Download PDF sample

Building Secure Defenses Against Code-Reuse Attacks by Lucas Davi, Ahmad-Reza Sadeghi

by William

Rated 4.71 of 5 – based on 5 votes