Publication:
Diversification of Stack Layout in Binary Programs Using Dynamic Binary Translation

dc.contributor.authorNguyen-Tuong, Anh
dc.contributor.authorHiser, Jason
dc.contributor.authorKnight, John
dc.contributor.authorRodes, Benjamin
dc.contributor.authorDavidson, Jack
dc.contributor.authorShepherd, James
dc.contributor.authorCo, Michelle
dc.date.accessioned2026-01-22T19:19:57Z
dc.date.issued2012-01-01
dc.descriptionOriginal submission date: 2013-08-09T14:22:23Z
dc.description.abstractDespite protracted efforts by researchers and practitioners, security vulnerabilities remain in modern software. Artificial diversity is an effective defense against many types of attack, and one form, address-space randomization, has been widely applied. Present implementations of address- space randomization are either coarse grained or require source code. We present an approach to fine-grained randomization of the stack layout that operates on x86 binary programs. Randomization is applied on a function-by-function basis. Variable ordering on the stack is randomized and random-length padding inserted between variables. Optionally, canaries can be placed in the padding regions. Transform determination is speculative: the stack layout for a function is inferred from the binary, and then assessed by executing the transformed program. If a transform changes a program’s semantics, progressively less aggressive transforms are applied in sequence. We present results of applying the technique to various open-source programs including details of example exploits that the technique defeated.
dc.identifierj098zb10q
dc.identifier.citationRodes, Benjamin, Anh Nguyen-Tuong, John Knight, James Shepherd, Jason Hiser, Michelle Co, and Jack Davidson. "Diversification of Stack Layout in Binary Programs Using Dynamic Binary Translation." University of Virginia Dept. of Computer Science Tech Report (2012).
dc.identifier.doi10.18130/V3RV14
dc.identifier.urihttps://doi.org/10.18130/V3RV14
dc.identifier.urihttps://libraopen.library.virginia.edu/handle/item/8389
dc.languageEnglish
dc.language.isoen
dc.publisherUniversity of Virginia, Department of Computer Science
dc.rightsAll rights reserved (no additional license for public reuse)
dc.titleDiversification of Stack Layout in Binary Programs Using Dynamic Binary Translation
dc.typeTechnical Report
dspace.entity.typePublication
relation.isAuthorOfPublicationeff38962-5a9c-4660-8138-e92864e2ff3c
relation.isAuthorOfPublication72b33c20-50b1-490a-9d64-8e717bb0bf58
relation.isAuthorOfPublication139223a1-9c9e-4242-a643-324c8067a866
relation.isAuthorOfPublicationa5d40718-d5a3-4e04-93ca-746bb262c860
relation.isAuthorOfPublication8a6c4fdf-cd0c-4222-8052-7b8756892d3f
relation.isAuthorOfPublication4bffa8db-7de4-4e3b-af08-bec60cb221e1
relation.isAuthorOfPublicationbf5be175-e485-4828-8f12-3d02ed4730e8
relation.isAuthorOfPublication.latestForDiscoveryeff38962-5a9c-4660-8138-e92864e2ff3c

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
CS-2012-01.pdf
Size:
2.02 MB
Format:
Adobe Portable Document Format

Collections