2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER) 2016
DOI: 10.1109/saner.2016.106
|View full text |Cite
|
Sign up to set email alerts
|

UROBOROS: Instrumenting Stripped Binaries with Static Reassembling

Abstract: Software instrumentation techniques are widely used in program analysis tasks such as program profiling, vulnerability discovering, and security-oriented transforming. In this paper, we present an instrumentation tool called UROBOROS, which supports static instrumentation on stripped binaries. Due to the lack of relocation and debug information, reverse engineering of stripped binaries is challenging. Compared with the previous work, UROBOROS can provide complete, easy-touse, transparent, and efficient static … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
2

Citation Types

0
27
0

Year Published

2018
2018
2023
2023

Publication Types

Select...
3
3
1

Relationship

0
7

Authors

Journals

citations
Cited by 42 publications
(27 citation statements)
references
References 27 publications
0
27
0
Order By: Relevance
“…In the reassembleable disassembly approach, a reusable tool extracts relocatable assembly from the binary without the use of debugging or relocation information. Uroboros [47], [48] was the first end-to-end system to provide such functionality. To make a disassembly reassembleable (relocatable), the main challenge is determining whether an immediate is used as an integer or as a label referencing another location.…”
Section: B Binary Rewritingmentioning
confidence: 99%
“…In the reassembleable disassembly approach, a reusable tool extracts relocatable assembly from the binary without the use of debugging or relocation information. Uroboros [47], [48] was the first end-to-end system to provide such functionality. To make a disassembly reassembleable (relocatable), the main challenge is determining whether an immediate is used as an integer or as a label referencing another location.…”
Section: B Binary Rewritingmentioning
confidence: 99%
“…But the size of a gap is usually not enough for a patch. Another way is reassembling which injects patch to the original code and relocates it [68], [70]. Since the long jumps added by BINPATCH might violate security requirements (e.g., Control Flow Integrity [1]), reassembling is the future choice for BINPATCH.…”
Section: Binary Rewritingmentioning
confidence: 99%
“…Dyninst [6] disassembles the binary function and extracts its control flow graph, then inserts new basic blocks into the graph. Uroboros [69], [70] leverages the technique of reassembling which re-computes the addresses and offsets after inserting new code. It avoids the huge overhead introduced by detours (i.e.…”
Section: ) Static Binary Rewritingmentioning
confidence: 99%
“…DYNINST [6] 2011 STIR/REINS [46], [47] 2012 CCFIR [51] 2013 BISTRO [15] 2013 BINCFI [53] 2013 PSI [52] 2014 UROBOROS [44] 2016 RAMBLR [42] 2017 MULTIVERSE 2018 sizes [48]. Subsequent work has leveraged these foundations to implement Opaque Control-flow Integrity [28].…”
Section: Related Workmentioning
confidence: 99%
“…UROBOROS [43] makes binary disassembly reassemblable by using the same disassembling algorithm from BINCFI, but it still uses a number of heuristics to differentiate memory addresses and constant integers when relocating a binary. The recent extension of UROBOROS [44] has been made to be a more general static binary instrumentation framework.…”
Section: Related Workmentioning
confidence: 99%