-
题名面向PyPI生态系统的漏洞影响范围细粒度评估方法
- 1
-
-
作者
王梓博
贾相堃
应凌云
苏璞睿
-
机构
中国科学院软件研究所
中国科学院大学
奇安信技术研究院
-
出处
《软件学报》
EI
CSCD
北大核心
2024年第10期4493-4509,共17页
-
基金
国家自然科学基金(62232016,62102406)
中国科学院青年创新促进会项目。
-
文摘
Python语言的开放性和易用性使其成为最常用的编程语言之一.其形成的PyPI生态系统在为开发者提供便利的同时,也成为攻击者进行漏洞攻击的重要目标.在发现Python漏洞之后,如何准确、全面地评估漏洞影响范围是应对Python漏洞的关键.然而当前的Python漏洞影响范围评估方法主要依靠包粒度的依赖关系分析,会产生大量误报;现有的函数粒度的Python程序分析方法由于上下文不敏感等导致存在准确性问题,应用于实际的漏洞影响范围评估也会产生误报.提出一种基于静态分析的面向PyPI生态系统的漏洞影响范围评估方法PyVul++.首先构建PyPI生态系统的索引,然后通过漏洞函数识别发现受漏洞影响的候选包,进一步通过漏洞触发条件验证漏洞包,实现函数粒度的漏洞影响范围评估.PyVul++改进了Python代码函数粒度的调用分析能力,在基于PyCG的测试集上的分析结果优于其他工具(精确率86.71%,召回率83.20%).通过PyVul++对10个Python CVE漏洞进行PyPI生态系统(385855个包)影响范围评估,相比于pip-audit等工具发现了更多漏洞包且降低了误报.此外,在10个Python CVE漏洞影响范围评估实验中,PyVul++新发现了目前PyPI生态系统中仍有11个包存在引用未修复的漏洞函数的安全问题.
-
关键词
PyPI生态系统
漏洞影响范围
函数粒度评估
静态分析
-
Keywords
PyPI ecosystem
vulnerability impact scope
function granularity assessment
static analysis
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-