国内刊号:11-2560/TP
国际刊号:1000-9825
发布日期:
作者:胡明哲,丁秋然,张子涵,谢金言,于乐,韩丽萍
单位:胡明哲,南京邮电大学 计算机学院、软件学院、网络空间安全学院, 江苏 南京 21002311,丁秋然,南京邮电大学 计算机学院、软件学院、网络空间安全学院, 江苏 南京 21002302,张子涵,南京邮电大学 计算机学院、软件学院、网络空间安全学院, 江苏 南京 21002303,谢金言,南京邮电大学 计算机学院、软件学院、网络空间安全学院, 江苏 南京 21002304,于乐,南京邮电大学 计算机学院、软件学院、网络空间安全学院, 江苏 南京 21002305,韩丽萍,南京邮电大学 计算机学院、软件学院、网络空间安全学院, 江苏 南京 210023;计算机软件新技术国家重点实验室(南京大学), 江苏 南京 21009306
关键词:软件供应链分析;跨语言互操作;漏洞检查;程序分析;漏洞基准库
基金:国家自然科学基金(62502226, 62202406); 计算机软件新技术国家重点实验室(南京大学)开放课题(KFKT2025B66); 江苏省高等学校基础科学(自然科学)研究面上项目(25KJB520029); 南京邮电大学引进人才科研启动基金项目(自然科学)(NY224026, NY224023, NY224001, NY223164); 南京邮电大学校级自然科学基金(NY224143)
软件包库的安全性是软件供应链分析的重要一环,但是现有研究和工具往往缺乏对软件包库中外部语言调用的有效分析. PyPI是Python语言的官方软件包库,其中存储海量不同应用领域的Python软件包.这些软件包除了包含Python语言编写的程序,还常常包含通过Python的外部接口Python/C API调用的C/C++外部语言程序.分析Python软件包库中外部语言调用的安全性对于保障软件供应链的安全可靠具有重要意义.通过分析互操作官方文档,以及互操作程序分析的相关方法和工具,构建Python-C/C++互操作程序的漏洞基准套件,其中包括9小类行为共计15种漏洞模式的基准测试程序,覆盖内存、类型、异常、并发和数值5大类语言特性,以及安装量最大的16个包含C/C++外部调用的Python软件包中的互操作程序漏洞.通过在漏洞基准套件上评估已有的先进Python-C/C++互操作漏洞检查工具,对比分析现有研究和工具的可靠性、完备性和可扩展性,分析总结Python-C/C++互操作安全分析的现状和不足.通过分析超过700个漏洞警告,确认在6个PyPI库中新发现3种共计21个实际漏洞.
来源:2026年第7期
《软件学报》期刊编辑部