Published March 31, 2022 | Version v1
Journal article Open

Towards a Block-Level ML-Based Python Vulnerability Detection Tool

Description

Computer software is driving our everyday life, therefore their security is pivotal.
Unfortunately, security flaws are common in software systems, which can result in a variety
of serious repercussions, including data loss, secret information disclosure, manipulation, or
system failure. Although techniques for detecting vulnerable code exist, the improvement of
their accuracy and effectiveness to a practically applicable level remains a challenge. Many
existing methods require a substantial amount of human experts labor to develop attributes
that indicate vulnerabilities. In a previous work, we have shown that machine learning is
suitable for solving the issue automatically by learning features from a vast collection of realworld
code and predicting vulnerable code locations. Applying a BERT-based code embedding,
LSTM models with best hyperparameters were able to identify seven different security
flaws in Python source code with high precision (average of 91%) and recall (average of 83%).
Upon the encouraging first empirical results, we go beyond in this paper and discuss the challenges
of applying these models in practice and outlining a method that solves these issues.
Our goal is to develop a hands-on tool for developers that they can use to pinpoint potentially
vulnerable spots in their code.

Files

Readme.txt

Files (3.8 GB)

Name Size Download all
md5:d5dc8fb58768843f8639793fb0d1e729
9.8 MB Download
md5:f1654651e17cd731470757f51864f6ef
106.2 MB Download
md5:78ed828f3da363c29fca20f2e5b8a0ae
1.6 GB Download
md5:85ff7fc9485072ac75bfa2fdeb6b5a22
106.2 MB Download
md5:9dc510ef482c4e72b4b3f2376bae0ad6
106.2 MB Download
md5:2ac48ae35e7644c7763577a67ca64a37
1.6 GB Download
md5:92f69e71f6cf5f99e3d7e1d9c17365d3
1.5 MB Download
md5:3107784afdcf59c53b336ec645720b50
1.5 MB Download
md5:3edce63614a9891c1e756e0cc7662142
1.5 MB Download
md5:24cf754702eb0fb345f5db1f6f073ce2
1.5 MB Download
md5:52b8206099e9e89530a8100b9275a6ea
1.5 MB Download
md5:590a514ef6b5c56f918def46f6babee1
1.5 MB Download
md5:15547cafcc5b2b19101733f14cc3cf1d
1.5 MB Download
md5:333baef75ad22b6348021a0698265d9c
209 Bytes Preview Download
md5:dde9c4ca4ab6bf0451ba47655eafe8fd
21.7 kB Download
md5:9473db7eb3dded6e7e4057882475c497
9.0 MB Download
md5:e062056c776f818cfd079296c025821b
106.2 MB Download
md5:577315b55909922b7c6c0a11eab49ec8
106.2 MB Download