跳到主要导航 跳到搜索 跳到主要内容

PathWalker: A dynamic symbolic execution tool based on LLVM byte code instrumentation

  • Zhang Jun-Xian*
  • , Li Zhou-Jun
  • , Zheng Xian-Chen
  • *此作品的通讯作者
  • Beihang University
  • University of Jinan

科研成果: 书/报告/会议事项章节会议稿件同行评审

摘要

Dynamic symbolic execution (or concolic execution) is a powerful method for program analysis and software testing by attaching symbolic execution to the concrete running of a program. This paper proposes an approach to handle aggregate types (e.g., pointers, arrays, structures) and their complex combinations for the dynamic symbolic execution of C programs. The main idea of the approach is splitting a complex type program variable into a series of primitive type variables. During the concrete execution of a program, a con- colic execution engine is provided to observe the operations on every program variable at the level of primitive types, and then the symbolic state of the program is updated. The path constraints which must be satisfied to drive the program running along the current execution path are collected to generate new test data for other paths. Our approach guarantees that only primitive type variables can appear in the symbolic states and path constraints. Based on LLVM byte code instrumentation, we present a new tool, called PathWalker, which implements this approach. Experimental results reveal that PathWalker is effective to deal with complex types in C codes.

源语言英语
主期刊名Dependable Software Engineering
主期刊副标题Theories, Tools, and Applications - 1st International Symposium, SETTA 2015, Proceedings
编辑Zhiming Liu, Wang Yi, Xuandong Li
出版商Springer Verlag
227-242
页数16
ISBN(印刷版)9783319259413
DOI
出版状态已出版 - 2015
活动1st International Symposium on Dependable Software Engineering: Theories, Tools, and Applications, SETTA 2015 - Nanjing, 中国
期限: 4 11月 20156 11月 2015

出版系列

姓名Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
9409
ISSN(印刷版)0302-9743
ISSN(电子版)1611-3349

会议

会议1st International Symposium on Dependable Software Engineering: Theories, Tools, and Applications, SETTA 2015
国家/地区中国
Nanjing
时期4/11/156/11/15

指纹

探究 'PathWalker: A dynamic symbolic execution tool based on LLVM byte code instrumentation' 的科研主题。它们共同构成独一无二的指纹。

引用此