ISSTA 2019
Mon 15 - Fri 19 July 2019 Beijing, China
Wed 17 Jul 2019 11:00 - 11:22 at Grand Ballroom - Program Repair Chair(s): Yingfei Xiong

Existing program repair systems modify a buggy program so that the modified program passes given tests. The repaired program may not satisfy even the most basic notion of correctness, namely crash-freedom. In other words, repair tools might generate patches which over-fit the test data driving the repair, and the automatically repaired programs may even introduce crashes or vulnerabilities.

We propose an integrated approach for detecting and discarding crashing patches. Our approach fuses test and patch generation into a single process, in which patches are generated with the objective of passing existing tests, and new tests are generated with the objective of filtering out over-fitted patches by distinguishing candidate patches in terms of behavior. We use crash-freedom as the oracle to discard patch candidates which crash on the new tests. In its core, our approach defines a grey-box fuzzing strategy that gives higher priority to new tests that separate patches behaving equivalently on existing tests. This test generation strategy identifies semantic differences between patch candidates and reduces over-fitting in program repair.

We evaluated our approach on real-world vulnerabilities and open-source subjects from the Google OSS-Fuzz infrastructure. We found that our tool Fix2Fit (implementing patch space directed test generation), produces crash-avoiding patches. While we do {\em not} give formal guarantees about crash-freedom, cross-validation with fuzzing tools and their sanitizers provides greater confidence about the crash-freedom of our suggested patches.

Wed 17 Jul

Displayed time zone: Beijing, Chongqing, Hong Kong, Urumqi change

11:00 - 12:30
Program RepairTechnical Papers at Grand Ballroom
Chair(s): Yingfei Xiong Peking University
11:00
22m
Talk
Crash-avoiding Program Repair
Technical Papers
Xiang Gao National University of Singapore, Sergey Mechtaev University College London, Abhik Roychoudhury National University of Singapore
11:22
22m
Talk
Practical Program Repair via Bytecode MutationArtifacts Functional
Technical Papers
Ali Ghanbari Iowa State University, Samuel Benton The University of Texas at Dallas, Lingming Zhang
Pre-print
11:45
22m
Talk
TBar: Revisiting Template-based Automated Program RepairArtifacts Functional
Technical Papers
Kui Liu , Anil Koyuncu University of Luxembourg, Luxembourg, Dongsun Kim Furiosa.ai, Tegawendé F. Bissyandé SnT, University of Luxembourg
Pre-print
12:07
22m
Talk
History-driven Build Failure Fixing: How Far Are We?Distinguished Paper Awards
Technical Papers
Yiling Lou Peking University, China, Junjie Chen Peking University, Lingming Zhang , Dan Hao Peking University, Lu Zhang Peking University