DID YOU KNOW? DTIC has over 3.5 million final reports on DoD funded research, development, test, and evaluation activities available to our registered users. Click
HERE to register or log in.
Accession Number:
AD1034622
Title:
Interactive Synthesis of Code Level Security Rules
Descriptive Note:
Technical Report
Corporate Author:
Northeastern University Boston United States
Report Date:
2017-04-01
Pagination or Media Count:
84.0
Abstract:
Software engineers inadvertently introduce bugs into software during the development process and these bugs can potentially be exploited once the software is deployed. As the size and complexity of software systems increase, it is important that we are able to verify and validate not only that the software behaves as it is expected to, but also that it does not violate any security policies or properties. One of the approaches to reduce software vulnerabilities is to use a bug detection tool during the development process. Many bug detection techniques are limited by the burdensome and error prone process of manually writing a bug specification. Other techniques are able to learn specifications from examples, but are limited in the types of bugs that they are able to discover. This work presents a novel, general approach for synthesizing security rules for C code. The approach combines human knowledge with an interactive logic programming synthesis system to learn Datalog rules for various security properties. The approach has been successfully used to synthesize rules for three intraprocedural security properties 1 out of bounds array accesses, 2 return value validation, and 3 double freed pointers. These rules have been evaluated on randomly generated C code and yield a 0 false positive rate and a 0, 20, and 0 false negative rate, respectively for each rule.
Distribution Statement:
APPROVED FOR PUBLIC RELEASE