机器学习库中软件安全漏洞的特征刻画与理解
软件工程
2022-03-15 v1
摘要
机器学习(ML)库的应用在自动驾驶系统、医疗及关键工业等诸多领域大幅增长。此类库的漏洞会导致不可挽回的后果。然而,软件安全漏洞的特征尚未得到充分研究。本文为弥补这一空白,首次对五个知名 ML 库(包括 Tensorflow、PyTorch、Sickit-learn、Pandas 和 Numpy)的安全漏洞进行特征刻画与理解。为此,我们共收集了 596 个安全相关提交,探究五大因素:1)漏洞类型,2)根本原因,3)症状,4)修复模式,以及 5)ML 库中安全漏洞的修复工作量。本研究结果可帮助开发人员更好地理解不同 ML 库中的软件安全漏洞,并深入认识其薄弱环节。为使发现具可操作性,我们进一步开发了自动化变异测试工具 DeepMut,作为本研究发现的概念验证应用。DeepMut 旨在基于从本研究漏洞中提取的安全感知变异算子,评估 ML 库现有测试套件的充分性。我们将 DeepMut 应用于 Tensorflow 内核模块,发现现有测试套件未覆盖的逾千个存活变异体。结果证明了我们发现的有效性。
引用
@article{arxiv.2203.06502,
title = {Characterizing and Understanding Software Security Vulnerabilities in Machine Learning Libraries},
author = {Nima Shiri Harzevili and Jiho Shin and Junjie Wang and Song Wang},
journal= {arXiv preprint arXiv:2203.06502},
year = {2022}
}