Lune

USENIX Security2023Top-tier venue

PELICAN: Exploiting Backdoors of Naturally Trained Deep Learning Models In Binary Code Analysis

Zhuo Zhang, Guanhong Tao, Guangyu Shen, Shengwei An, Qiuling Xu, Yingqi Liu, Yapeng Ye, Yaoxuan Wu, Xiangyu Zhang

2023Year
5Top-tier citations

Abstract

Deep Learning (DL) models are increasingly used in many cyber-security applications and achieve superior performance compared to traditional solutions. In this paper, we study backdoor vulnerabilities in naturally trained models used in binary analysis. These backdoors are not injected by attackers but rather products of defects in datasets and/or training processes. The attacker can exploit these vulnerabilities by injecting some small fixed input pattern (e.g., an instruction) called backdoor trigger to their input (e.g., a binary code snippet for a malware detection DL model) such that misclassification can be induced (e.g., the malware evades the detection). We focus on transformer models used in binary analysis. Given a model, we leverage a trigger inversion technique particularly designed for these models to derive trigger instructions that can induce misclassification. During attack, we utilize a novel trigger injection technique to insert the trigger instruction(s) to the input binary code snippet. The injection makes sure that the code snippets' original program semantics are preserved and the trigger becomes an integral part of such semantics and hence cannot be easily eliminated. We evaluate our prototype PELICAN on 5 binary analysis tasks and 15 models. The results show that PELICAN can effectively induce misclassification on all the evaluated models in both white-box and black-box scenarios. Our case studies demonstrate that PELICAN can exploit the backdoor vulnerabilities of two closed-source commercial tools. MOV MOV MOV [ [ [ RDX RDX RDX RDX PUSH RBP MOV RBP , RSP MOV QWORD PTR [ RBP -NUM ] , RDI MOV DWORD PTR [ RBP -NUM ] , ESI MOV RAX , QWORD PTR [ RBP -NUM ] MOV EDX , DWORD PTR [ RBP -NUM ] MOV DWORD PTR [ RAX + NUM ] , EDX POP RBP RET void f1(struct *a1, int a2, void *a3) MOV MOV MOV [ [ [ RDX RDX RDX RDX MOVSXD RAX , ESI LEA RAX , [ RAX + RAX * NUM ] SHL RAX , NUM LEA RDI , [ RDI + RAX ] LEA RSI , [ RDI + NUM ] MOV QWORD PTR [ RDI ] , RSI MOV QWORD PTR [ RSI + NUM ] , RDI MOV ESI , NUM CALL NUM RET void f2(struct *a1, int a2, void *a3) (a) Backdoored sequences of init_data (b) Backdoored sequences of init_auth_entry

Ask about this paper

Your agent reads all of it.

Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.

Questions to start from

Your agent calls

Luneget_paper_fulltext

Ask in Lune

Free to start. No credit card required.

lune papers fulltext 97d912b7-d013-456c-93dd-8cef51df2c2d

Cited by top-tier papers5

Ask how each one uses it

Builds on37

Related papers

Dusk over the sea between two cliffs drawn in fine vertical lines