Large-scale and Robust Code Authorship Identification with Deep Feature Learning

被引:8
作者
Abuhamad, Mohammed [1 ]
Abuhmed, Tamer [2 ]
Mohaisen, David [3 ]
Nyang, Daehun [4 ]
机构
[1] Loyola Univ Chicago, Chicago, IL USA
[2] Sungkyunkwan Univ, Seoul, South Korea
[3] Univ Cent Florida, Orlando, FL 32816 USA
[4] Ewha Womans Univ, Seoul, South Korea
基金
新加坡国家研究基金会;
关键词
Software authorship identification; program features; deep learning identification; software forensics; NEURAL-NETWORKS; ATTRIBUTION;
D O I
10.1145/3461666
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Successful software authorship de-anonymization has both software forensics applications and privacy implications. However, the process requires an efficient extraction of authorship attributes. The extraction of such attributes is very challenging, due to various software code formats from executable binaries with different toolchain provenance to source code with different programming languages. Moreover, the quality of attributes is bounded by the availability of software samples to a certain number of samples per author and a specific size for software samples. To this end, this work proposes a deep Learning-based approach for software authorship attribution, that facilitates large-scale, format-independent, language-oblivious, and obfuscation-resilient software authorship identification. This proposed approach incorporates the process of learning deep authorship attribution using a recurrent neural network, and ensemble random forest classifier for scalability to de-anonymize programmers. Comprehensive experiments are conducted to evaluate the proposed approach over the entire Google Code Jam (GCJ) dataset across all years (from 2008 to 2016) and over real-world code samples from 1,987 public repositories on GitHub. The results of our work show high accuracy despite requiring a smaller number of samples per author. Experimenting with source-code, our approach allows us to identify 8,903 GCJ authors, the largest-scale dataset used by far, with an accuracy of 92.3%. Using the real-world dataset, we achieved an identification accuracy of 94.38% for 745 C programmers on GitHub. Moreover, the proposed approach is resilient to language-specifics, and thus it can identify authors of four programming languages (e.g., C, C++, Java, and Python), and authors writing in mixed languages (e.g., Java/C++, Python/C++). Finally, our system is resistant to sophisticated obfuscation (e.g., using C Tigress) with an accuracy of 93.42% for a set of 120 authors. Experimenting with executable binaries, our approach achieves 95.74% for identifying 1,500 programmers of software binaries. Similar results were obtained when software binaries are generated with different compilation options, optimization levels, and removing of symbol information. Moreover, our approach achieves 93.86% for identifying 1,500 programmers of obfuscated binaries using all features adopted in Obfuscator-LLVM tool.
引用
收藏
页数:35
相关论文
共 63 条
[1]  
Abadi Martin, 2016, Proceedings of OSDI '16: 12th USENIX Symposium on Operating Systems Design and Implementation. OSDI '16, P265
[2]   Writeprints: A stylometric approach to identity-level identification and similarity detection in cyberspace [J].
Abbasi, Ahmed ;
Chen, Hsinchun .
ACM TRANSACTIONS ON INFORMATION SYSTEMS, 2008, 26 (02)
[3]  
Abuhamad Mohammed, 2020, Proceedings on Privacy Enhancing Technologies, V2020, P25, DOI 10.2478/popets-2020-0044
[4]   Code authorship identification using convolutional neural networks [J].
Abuhamad, Mohammed ;
Rhim, Ji-su ;
AbuHmed, Tamer ;
Ullah, Sana ;
Kang, Sanggil ;
Nyang, DaeHun .
FUTURE GENERATION COMPUTER SYSTEMS-THE INTERNATIONAL JOURNAL OF ESCIENCE, 2019, 95 :104-115
[5]   Large-Scale and Language-Oblivious Code Authorship Identification [J].
Abuhamad, Mohammed ;
AbuHmed, Tamer ;
Mohaisen, Aziz ;
Nyang, DaeHun .
PROCEEDINGS OF THE 2018 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY (CCS'18), 2018, :101-114
[6]   Doppelganger Finder: Taking Stylometry To The Underground [J].
Afroz, Sadia ;
Caliskan-Islam, Aylin ;
Stolerman, Ariel ;
Greenstadt, Rachel ;
McCoy, Damon .
2014 IEEE SYMPOSIUM ON SECURITY AND PRIVACY (SP 2014), 2014, :212-226
[7]   OBA2: An Onion approach to Binary code Authorship Attribution [J].
Alrabaee, Saed ;
Saleem, Noman ;
Preda, Stere ;
Wang, Lingyu ;
Debbabi, Mourad .
DIGITAL INVESTIGATION, 2014, 11 :S94-S103
[8]  
[Anonymous], 2011, NIPS
[9]  
[Anonymous], 2000, CISC VIS NETW IND GL
[10]  
[Anonymous], 2018, P NETW DISTR SYST SE