The invention relates to a parallelization security hole detecting method based on a function
call graph, which is characterized in that a function set to be detected is determined by analyzing the function call relation in a C
language module,
instrumentation and assert analysis are performed for the function set by means of the preprocessing technology, and then security holes of a program are detected by the aid of
model checking and the parallelization technology. The method mainly includes the steps: generating the function relation
call graph, and determining C function information to be detected by analyzing the function relation
call graph; extracting attribute information of a buffer area related to C program source codes by the aid of the
constraint analysis technology, and inserting corresponding ASSERT statement information in a variable
declaration, an assignment and a function call point by means of the attribute information of the buffer area; and performing
accessibility judgment for the instrumented codes, and analyzing whether a dangerous point in the program includes an accessible path to discover the security holes in the source codes or not. The method detects the security holes such as buffer area overflow and the like by combining the
constraint analysis static detecting technology,
model checking and the parallelization technology, and the detecting precision of the method is higher than that of the general static detecting technology.