SWAN_ASSIST: Semi-Automated Detection of Code-Specific, Security-Relevant Methods
Abstract
To detect specific types of bugs and vulnerabilities, static analysis tools must be correctly configured with security-relevant methods (SRM), e.g., sources, sinks, sanitizers and authentication methods-usually a very labour-intensive and error-prone process. This work presents the semi-automated tool SWAN_ASSIST, which aids the configuration with an IntelliJ plugin based on active machine learning. It integrates our novel automated machine-learning approach SWAN, which identifies and classifies Java SRM. SWAN_ASSIST further integrates user feedback through iterative learning. SWAN_ASSIST aids developers by asking them to classify at each point in time exactly those methods whose classification best impact the classification result. Our experiments show that SWAN_ASSIST classifies SRM with a high precision, and requires a relatively low effort from the user. A video demo of SWAN_ASSIST can be found at https://youtu.be/fSyD3V6EQOY. The source code is available at https://github.com/secure-software-engineering/swan.
BibTeX
@inproceedings{Piskachev-al:ASE19,
author = {Goran Piskachev and
Lisa Nguyen Quang Do and
Oshando Johnson and
Eric Bodden},
title = {{SWAN\_ASSIST:} {Semi-Automated} Detection of {Code-Specific,} {Security-Relevant} Methods},
booktitle = {ASE},
pages = {1094--1097},
publisher = {{IEEE}},
year = {2019},
}