Optimal Refinement-based Array Constraint Solving for Symbolic Execution

被引:0
作者
Liu, Meixi [1 ,2 ]
Shuai, Ziqi [1 ,2 ]
Liu, Luyao [1 ]
Ma, Kelin [1 ]
Ma, Ke [1 ]
机构
[1] Natl Univ Def Technol, Coll Comp, Changsha, Peoples R China
[2] Natl Univ Def Technol, State Key Lab High Performance Comp, Changsha, Peoples R China
来源
2022 29TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE, APSEC | 2022年
关键词
symbolic execution; constraint solving; array SMT theory; machine learning; BIT-VECTORS;
D O I
10.1109/APSEC57359.2022.00042
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Array constraint solving is widely adopted by the existing symbolic execution engines for encoding programs precisely. The counterexample-guided abstraction refinement (CEGAR) based method is state-of-the-art for array constraint solving. However, we observed that the CEGAR-based method may need many refinements to solve the array constraints produced by the symbolic executor, which decreases the performance of constraint solving. Based on the observation, we propose a machine learning-based method to improve the efficiency of the CEGAR-based array constraint solving. Our method adaptively turns on or off the CEGAR loop according to different solving problems. We have implemented our method on the symbolic executor KLEE and its underlying CEGAR-based constraint solver STP. We have conducted an extensive experiment on 55 real-world programs. On average, our method increases the number of explored paths by 21%. The results of the extensive experiments on real-world C programs show the effectiveness of our method.
引用
收藏
页码:299 / 308
页数:10
相关论文
共 50 条
[31]   Symbolic execution based feature extraction for detection of malware [J].
Namani, Naveen ;
Khan, Arindam .
PROCEEDINGS OF THE 2020 5TH INTERNATIONAL CONFERENCE ON COMPUTING, COMMUNICATION AND SECURITY (ICCCS-2020), 2020,
[32]   An Automatic Exploit Generation Method Based on Symbolic Execution [J].
Fang Hao ;
Fen-Wenbo ;
Fu-Menglin .
2018 EIGHTH INTERNATIONAL CONFERENCE ON INSTRUMENTATION AND MEASUREMENT, COMPUTER, COMMUNICATION AND CONTROL (IMCCC 2018), 2018, :437-440
[33]   Automated Test Generation on Path-based Symbolic Execution [J].
Min, Zhang ;
Min, Fu .
2014 5TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING AND SERVICE SCIENCE (ICSESS), 2014, :845-848
[34]   Distributed CFG-based Symbolic Execution for Assembly Programs [J].
Adachi, Takumi ;
Yamane, Satoshi ;
Sakurai, Kohei .
2015 IEEE 4TH GLOBAL CONFERENCE ON CONSUMER ELECTRONICS (GCCE), 2015, :76-80
[35]   Test Case Selection based on Path Condtions of Symbolic Execution [J].
Munakata, Kazuki ;
Fujiwara, Shoichiro ;
Tokumoto, Susumu ;
Uehara, Tadahiro .
2012 19TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC), VOL 1, 2012, :318-321
[36]   Smart Contract Vulnerability Detection Based on Symbolic Execution Technology [J].
Liu, Yiping ;
Xu, Jie ;
Cui, Baojiang .
CYBER SECURITY, CNCERT 2021, 2022, 1506 :193-207
[37]   Improving the Accuracy of Static Defect Analysis Based on Symbolic Execution [J].
Wang M.-L. ;
Zhang Y.-N. ;
Li M.-Y. ;
Shao S. ;
Liu S.-R. .
Beijing Ligong Daxue Xuebao/Transaction of Beijing Institute of Technology, 2020, 40 (04) :382-385and395
[38]   FlawCheck: Detecting Smart Contract Vulnerabilities Based on Symbolic Execution [J].
Gou, Naixiang ;
Zhao, Xiangfu ;
Wang, Shiji ;
Zhang, Hanfeng ;
Yang, Jiahui .
SECURITY AND PRIVACY, 2025, 8 (02)
[39]   Similar Execution Path Generation Based on Backward Symbolic Analysis [J].
Guo, Xi ;
Wang, Jianyong .
MODERN TENDENCIES IN ENGINEERING SCIENCES, 2014, 533 :427-431
[40]   Patch-Related Vulnerability Detection Based on Symbolic Execution [J].
Qiang, Weizhong ;
Liao, Yuehua ;
Sun, Guozhong ;
Yang, Laurence T. ;
Zou, Deqing ;
Jin, Hai .
IEEE ACCESS, 2017, 5 :20777-20784