Detecting Security Fixes in Open-Source Repositories using Static Code Analyzers

05/07/2021
by   Therese Fehrer, et al.
0

The sources of reliable, code-level information about vulnerabilities that affect open-source software (OSS) are scarce, which hinders a broad adoption of advanced tools that provide code-level detection and assessment of vulnerable OSS dependencies. In this paper, we study the extent to which the output of off-the-shelf static code analyzers can be used as a source of features to represent commits in Machine Learning (ML) applications. In particular, we investigate how such features can be used to construct embeddings and train ML models to automatically identify source code commits that contain vulnerability fixes. We analyze such embeddings for security-relevant and non-security-relevant commits, and we show that, although in isolation they are not different in a statistically significant manner, it is possible to use them to construct a ML pipeline that achieves results comparable with the state of the art. We also found that the combination of our method with commit2vec represents a tangible improvement over the state of the art in the automatic identification of commits that fix vulnerabilities: the ML models we construct and commit2vec are complementary, the former being more generally applicable, albeit not as accurate.

READ FULL TEXT
research
03/23/2021

Tracing Vulnerable Code Lineage

This paper presents results from the MSR 2021 Hackathon. Our team invest...
research
07/06/2018

A Practical Approach to the Automatic Classification of Security-Relevant Commits

The lack of reliable sources of detailed information on the vulnerabilit...
research
03/24/2021

Automated Mapping of Vulnerability Advisories onto their Fix Commits in Open Source Repositories

The lack of comprehensive sources of accurate vulnerability data represe...
research
07/05/2021

An Empirical Study of Rule-Based and Learning-Based Approaches for Static Application Security Testing

Background: Static Application Security Testing (SAST) tools purport to ...
research
07/16/2012

MARFCAT: Transitioning to Binary and Larger Data Sets of SATE IV

We present a second iteration of a machine learning approach to static c...
research
05/04/2021

Drifting Features: Detection and evaluation in the context of automatic RRLs identification in VVV

As most of the modern astronomical sky surveys produce data faster than ...
research
02/14/2018

Automated software vulnerability detection with machine learning

Thousands of security vulnerabilities are discovered in production softw...

Please sign up or login with your details

Forgot password? Click here to reset