TsmartGP: A Tool for Finding Memory Defects with Pointer Analysis
Thu 14 Nov 2019 15:00 - 15:10 at Cortez 2&3 - Mining and Bug Detection Chair(s): Chanchal K. Roy
Precise pointer analysis is desired since it is a core technique to find memory defects. There are several dimensions of pointer analysis precision, flow sensitivity, context sensitivity, field sensitivity and path sensitivity. For static analysis tools utilizing pointer analysis, considering all dimensions is difficult because the trade-off between precision and efficiency should be balanced. This paper presents TsmartGP, a static analysis tool for finding memory defects in C programs with a precise and efficient pointer analysis. The pointer analysis algorithm is flow, context, field, and quasi path sensitive. Control flow automatons are the key structures for our analysis to be flow sensitive. Function summaries are applied to get context information and elements of aggregate structures are handled to improve precision. Path conditions are used to filter unreachable paths. For efficiency, a multi-entry mechanism is proposed. Utilizing the pointer analysis algorithm, we implement a checker in TsmartGP to find uninitialized pointer errors in 13 real-world applications. Cppcheck and Clang Static Analyzer are chosen for comparison. The experimental results show that TsmartGP can find more errors while its accuracy rate is 100%, much higher than 3.1% for Cppcheck and 16.7% for Clang Static Analyzer. The demo video is available at https://youtu.be/IQlshemk6OA and TsmartGP can be downloaded from https://github.com/laoyaolandq/TsmartGP.
Wed 13 NovDisplayed time zone: Tijuana, Baja California change
10:00 - 10:40 | |||
10:00 40mDemonstration | TsmartGP: A Tool for Finding Memory Defects with Pointer Analysis Demonstrations Yuexing Wang Tsinghua University, Guang Chen Tsinghua University, Min Zhou Tsinghua University, Ming Gu Tsinghua University, Jiaguang Sun Tsinghua University | ||
10:00 40mDemonstration | BuRRiTo: A Framework to Extract, Specify, Verify and Analyze Business Rules Demonstrations Pavan Kumar Chittimalli TCS Research, Kritika Anand TCS Research, Shrishti Pradhan TCS Research, Sayandeep Mitra TCS Research, Chandan Prakash TCS Research, Rohit Shere TCS Research, Ravindra Naik TCS Research, TRDDC, India | ||
10:00 40mDemonstration | Lancer: Your Code Tell Me What You Need Demonstrations Shufan Zhou School of Electronic Information and Electrical Engineering, Shanghai Jiao Tong University, Beijun Shen School of Electronic Information and Electrical Engineering, Shanghai Jiao Tong University, Hao Zhong Shanghai Jiao Tong University | ||
10:00 40mDemonstration | TestCov: Robust Test-Suite Execution and Coverage Measurement Demonstrations Pre-print Media Attached File Attached | ||
10:00 40mDemonstration | Prema: A Tool for Precise Requirements Editing, Modeling and Analysis Demonstrations Yihao Huang East China Normal University, Jincao Feng East China Normal University, Hanyue Zheng East China Normal University, Jiayi Zhu East China Normal University, Shang Wang East China Normal University, Siyuan Jiang Eastern Michigan University, Weikai Miao Shanghai Key Lab for Trustworthy Computing, School of Computer Science and Software Engineering, East China Normal University, Geguang Pu East China Normal University&Shanghai Trusted Industrial Control Platform Co., Ltd | ||
10:00 40mDemonstration | XRaSE: Towards Virtually Tangible Software using Augmented Reality Demonstrations Rohit Mehra Accenture Labs, India, Vibhu Saujanya Sharma Accenture Labs, Vikrant Kaulgud Accenture Labs, India, Sanjay Podder Accenture | ||
10:00 40mDemonstration | MuSC: A Tool for Mutation Testing of Ethereum Smart Contract Demonstrations Zixin Li Nanjing University, Haoran Wu State Key Laboratory for Novel Software Technology, Nanjing University, Jiehui Xu Nanjing University, Xingya Wang State Key Laboratory for Novel Software Technology, Nanjing University, Lingming Zhang The University of Texas at Dallas, Zhenyu Chen Nanjing University | ||
10:00 40mDemonstration | VeriSmart 2.0: Swarm-Based Bug-Finding for Multi-Threaded Programs with Lazy-CSeq Demonstrations Bernd Fischer Stellenbosch University, Salvatore La Torre Università degli Studi di Salerno, Gennaro Parlato University of Molise | ||
10:00 40mDemonstration | DeepMutation++: a Mutation Testing Framework for Deep Learning Systems Demonstrations Qiang Hu Kyushu University, Japan, Lei Ma Kyushu University, Xiaofei Xie Nanyang Technological University, Bing Yu Kyushu University, Japan, Yang Liu Nanyang Technological University, Singapore, Jianjun Zhao Kyushu University | ||
10:00 40mDemonstration | Manticore: A User-Friendly Symbolic Execution Framework for Binaries and Smart Contracts Demonstrations Mark Mossberg Trail of Bits, Felipe Manzano Trail of Bits, Eric Hennenfent Trail of Bits, Alex Groce Northern Arizona University, Gustavo Grieco Trail of Bits, Josselin Feist Trail of Bits, Trent Brunson Trail of Bits, Artem Dinaburg Trail of Bits Media Attached | ||
10:00 40mDemonstration | ConVul: An Effective Tool for Detecting Concurrency Vulnerabilities Demonstrations Ruijie Meng University of Chinese Academy of Sciences, Biyun Zhu University of Chinese Academy of Sciences, Hao Yun University of Chinese Academy of Sciences, Haicheng Li University of Chinese Academy of Sciences, Yan Cai Institute of Software, Chinese Academy of Sciences, Zijiang Yang Western Michigan University | ||
10:00 40mDemonstration | mCUTE: A Model-level Concolic Unit Testing Engine for UML State Machines Demonstrations Reza Ahmadi Queen's University, Karim Jahed Queen's University, Juergen Dingel Queen's University, Kingston, Ontario |
Thu 14 NovDisplayed time zone: Tijuana, Baja California change
13:40 - 15:20 | Mining and Bug DetectionDemonstrations / Journal First Presentations at Cortez 2&3 Chair(s): Chanchal K. Roy University of Saskatchewan | ||
13:40 20mTalk | Automatically 'Verifying' Complex Systems through Learning, Abstraction and Refinement Journal First Presentations Jingyi Wang National University of Singapore, Singapore, Jun Sun Singapore Management University, Singapore, Shengchao Qin University of Teesside, Cyrille Jegourel ISTD, Singapore University of Technology and Design Link to publication | ||
14:00 20mTalk | Interactive semi-automated specification mining for debugging: An experience report Journal First Presentations Mohammad Jafar Mashhadi University of Calgary, Taha R. Siddiqui InfoMagnetics Technologies Corp, Hadi Hemmati University of Calgary, Howard W. Loewen Department of Electrical & Computer Engineering, University of Calgary Link to publication | ||
14:20 20mTalk | Improving reusability of software libraries through usage pattern mining Journal First Presentations Mohamed Aymen Saied Concordia University, Ali Ouni ETS Montreal, University of Quebec, Houari Sahraoui Université de Montréal, Raula Gaikovina Kula NAIST, Katsuro Inoue Osaka University, David Lo Singapore Management University Link to publication | ||
14:40 20mTalk | Rule-based specification mining leveraging learning to rank Journal First Presentations Zherui Cao Zhejiang University, Yuan Tian Queens University, Kingston, Canada, Tien-Duy B. Le School of Information Systems, Singapore Management University, David Lo Singapore Management University Link to publication | ||
15:00 10mDemonstration | TsmartGP: A Tool for Finding Memory Defects with Pointer Analysis Demonstrations Yuexing Wang Tsinghua University, Guang Chen Tsinghua University, Min Zhou Tsinghua University, Ming Gu Tsinghua University, Jiaguang Sun Tsinghua University | ||
15:10 10mDemonstration | Ares: Inferring Error Specifications through Static Analysis Demonstrations Li Chi Tsinghua University, Zuxing Gu School of Software, Tsinghua University, Min Zhou Tsinghua University, Ming Gu Tsinghua University, Hongyu Zhang The University of Newcastle |