SoK: Sanitizing for Security

06/12/2018
by   Dokyung Song, et al.
0

The C and C++ programming languages are notoriously insecure yet remain indispensable. Developers therefore resort to a multi-pronged approach to find security issues before adversaries. These include manual, static, and dynamic program analysis. Dynamic bug finding tools --- henceforth "sanitizers" --- can find bugs that elude other types of analysis because they observe the actual execution of a program, and can therefore directly observe incorrect program behavior as it happens. A vast number of sanitizers have been prototyped by academics and refined by practitioners. We provide a systematic overview of sanitizers with an emphasis on their role in finding security issues. Specifically, we taxonomize the available tools and the security vulnerabilities they cover, describe their performance and compatibility properties, and highlight various trade-offs.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/23/2020

How Effective are Smart Contract Analysis Tools? Evaluating Smart Contract Static Analysis Tools Using Bug Injection

Security attacks targeting smart contracts have been on the rise, which ...
research
11/24/2021

Systematic Analysis of Programming Languages and Their Execution Environments for Spectre Attacks

In this paper, we analyze the security of programming languages and thei...
research
04/03/2022

A Study of Single Statement Bugs Involving Dynamic Language Features

Dynamic language features are widely available in programming languages ...
research
08/12/2022

How far are German companies in improving security through static program analysis tools?

As security becomes more relevant for many companies, the popularity of ...
research
02/15/2023

Demystifying security and compatibility issues in Android Apps

Never before has any OS been so popular as Android. Existing mobile phon...
research
02/05/2023

CBMC: The C Bounded Model Checker

The C Bounded Model Checker (CBMC) demonstrates the violation of asserti...
research
03/25/2021

Multi-Execution Lattices Fast and Slow

Methods for automatically, soundly, and precisely guaranteeing the nonin...

Please sign up or login with your details

Forgot password? Click here to reset