2017 IEEE European Symposium on Security and Privacy (EuroS&P) 2017
DOI: 10.1109/eurosp.2017.11
|View full text |Cite
|
Sign up to set email alerts
|

Compiler-Agnostic Function Detection in Binaries

Abstract: General rightsCopyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights.• Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commer… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

4
63
0

Year Published

2018
2018
2021
2021

Publication Types

Select...
6

Relationship

0
6

Authors

Journals

citations
Cited by 78 publications
(74 citation statements)
references
References 23 publications
4
63
0
Order By: Relevance
“…Even if the program comes with metadata identifying the code sections, compiler optimizations make static analysis harder [11]: Often, compilers embed small chunks of data in the instruction stream. Microsoft Visual Studio includes data and padding bytes between instructions when producing x86 and x86-64 code [12], and ARM code often contains jump tables and large constants embedded in the instruction stream [13]. This "inline" data, if wrongly identified as an instruction (or vice-versa), leads to an erroneous analysis.…”
Section: Introductionmentioning
confidence: 99%
“…Even if the program comes with metadata identifying the code sections, compiler optimizations make static analysis harder [11]: Often, compilers embed small chunks of data in the instruction stream. Microsoft Visual Studio includes data and padding bytes between instructions when producing x86 and x86-64 code [12], and ARM code often contains jump tables and large constants embedded in the instruction stream [13]. This "inline" data, if wrongly identified as an instruction (or vice-versa), leads to an erroneous analysis.…”
Section: Introductionmentioning
confidence: 99%
“…In this section, firstly, we present the experimental results of our proposed Code Action Network for the machine instruction level (CAN-M) and the byte level (CAN-B) compared with other baselines including IDA, ByteWeight (BW) no-RFCR, ByteWeight (BW) [2], the Bidirectional RNN (BRNN) [12] and Nucleus [1]. Secondly, we perform error analysis to qualitatively investigate our proposed methods.…”
Section: Methodsmentioning
confidence: 99%
“…We also compared the average predictive performance for case by case including the function start, function bound and function scope identifications of our CAN-M and CAN-B using the hidden size of 256 and LSTM cell with the Bidirectional RNN, ByteWeight, and Nucleus in both Linux and Windows platforms. For Nucleus [1], we reported the experimental results reported in that paper. The experimental results in Table 2 indicate that our CAN-M and CAN-B again outperformed the baselines, while CAN-M obtained the highest predictive performances in all measures (Recall, Precision and F1 score).…”
Section: Code Action Network Versus Bidirectional Rnn Byteweight Andmentioning
confidence: 99%
See 2 more Smart Citations