Static Approaches in Detecting Error-handling Bugs

PhD Qualifying Examination


Title: "Static Approaches in Detecting Error-handling Bugs"

by

Mr. Wensheng TANG


Abstract:

The error handling mechanism in programming languages helps exit the 
programs or recover the program from an error. However, it fails to 
provide any guarantees on the correctness of error handling. In 
consequence, many program vulnerabilities are imputed to inappropriate 
error-handling. To ensure the correctness of an error-handling, however, 
is a non-trivial task. Due to the invisibility of error-handling effects, 
dynamic methods such as software testing are ineffective in detecting 
potential flaws. The nondeterminism of program execution enlarges the gap 
for dynamic methods to explore the unexpected errors. Recent static 
approaches have shown their potential in detecting error-handling bugs at 
an acceptable cost.

In this survey, we revisit the techniques to detect error-handling bugs in 
the literature, with a focus on static analysis approaches. The survey 
begins with an introduction to the design of two error-handling 
mechanisms, the exception model, and the error code idiom. For each 
error-handling mechanisms, we discuss the potential issues brought by such 
designs. Then, we separately introduce approaches to detect error-handling 
bugs in these two mechanisms. The last chapter summarizes the similarities 
and differences in detecting error handling issues in these two 
error-handling mechanisms. We also identify the current research gaps in 
these approaches and future directions.


Date:			Friday, 30 August 2019

Time:                  	2:00pm - 4:00pm

Venue:                  Room 3494
                         Lifts 25/26

Committee Members:	Dr. Charles Zhang (Supervisor)
 			Dr. Qiong Luo (Chairperson)
 			Dr. Shuai Wang
 			Dr. Wei Wang


**** ALL are Welcome ****