Joint Forces for Memory Safety Checking Revisited
Authors | |
---|---|
Year of publication | 2020 |
Type | Article in Periodical |
Magazine / Source | International Journal on Software Tools for Technology Transfer (STTT) |
MU Faculty or unit | |
Citation | |
Web | https://doi.org/10.1007/s10009-019-00526-2 |
Doi | http://dx.doi.org/10.1007/s10009-019-00526-2 |
Keywords | memory safety; instrumentation; program slicing; symbolic execution; Symbiotic |
Description | We present an improved version of the memory safety verification approach implemented in Symbiotic 5, the winner of the MemSafety category at the Competition on Software Verification (SV-COMP) 2018. The approach can verify programs for standard errors in memory usage like invalid pointer dereference or memory leaking. It is based on instrumentation, static pointer analysis extended to consider memory deallocations, static program slicing, and symbolic execution. The improved version brings higher precision of the extended pointer analysis and further optimizations in instrumentation. It is implemented in the current version of Symbiotic, which contains also some improvements in program slicing and symbolic execution. We explain the approach in theory, describe implementation of selected components, and provide experimental results showing the impact of particular components. |
Related projects: |