ACM Home Page
Please provide us with feedback. Feedback
String analysis for x86 binaries
Full text PdfPdf (188 KB)
Source Workshop on Program Analysis for Software Tools and Engineering archive
Proceedings of the 6th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering table of contents
Lisbon, Portugal
SESSION: Low-level code table of contents
Pages: 88 - 95  
Year of Publication: 2005
ISBN:1-59593-239-9
Also published in ...
Authors
Mihai Christodorescu  University of Wisconsin-Madison, Madison, WI
Nicholas Kidd  University of Wisconsin-Madison, Madison, WI
Wen-Han Goh  University of Wisconsin-Madison, Madison, WI
Sponsors
SIGSOFT: ACM Special Interest Group on Software Engineering
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 9,   Downloads (12 Months): 66,   Citation Count: 2
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1108792.1108814
What is a DOI?

ABSTRACT

Information about string values at key points in a program can help program understanding, reverse engineering, and forensics. We present a static-analysis technique for recovering possible string values in an executable program, when no debug information or source code is available. The result of our analysis is a regular language that describes a superset of the string values possible at a given program point. We also impart some of the lessons learned in the process of implementing our analysis as a tool for recovering C-style strings in x86 executables.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
G. Balakrishnan and T. Reps. Analyzing memory accesses in x86 executables. In Proceedings of the International Conference on Compiler Construction (CC'04), pages 5--23, 2004.
3
 
4
A. S. Christensen, A. Møller, and M. I. Schwartzbach. Precise analysis of string expressions. In Proceedings of the 10th International Static Analysis Symposium (SAS '03), volume 2694 of Lecture Notes in Computer Science, pages 1--18. Springer-Verlag, June 2003.
 
5
C. Cifuentes and A. Fraboulet. Interprocedural dataflow recovery of high-level language code from assembly. Technical report, University of Queensland, 1997.
 
6
 
7
DataRescue sa/nv. IDA Pro - interactive disassembler. Published online at http://www.datarescue.com/idabase/. Last accessed on 3 Feb. 2003.
8
9
10
 
11
 
12
 
13
 
14
 
15
D. Larochelle and D. Evans. Statically detecting likely buffer overflow vulnerabilities. In Proceedings of the 2001 USENIX Security Symposium, 2001.
 
16
M. Mohri and M.-J. Nederhof. Regular approximation of context-free grammars through transformation. In J.-C. Junqua and G. van Noord, editors, Robustness in Language and Speech Technology, pages 153--163. Kluwer Academic Publishers, 2001.
 
17
 
18
19
 
20
R. Vall, E. Phong, C. Etienne, G. Laurie, H. Patrick, and L. Vijay. Soot - a Java bytecode optimization framework, 1999.
 
21
D. Wagner, J. S. Foster, E. A. Brewer, and A. Aiken. A first step towards automated detection of buffer overrun vulnerabilities. In Proceedings of the Networking and Distributed System Security Symposium (NDSS'00), San Diego, California, Feb. 2000.
22


Collaborative Colleagues:
Mihai Christodorescu: colleagues
Nicholas Kidd: colleagues
Wen-Han Goh: colleagues