编者按
7月27日,由InForSec主办、复旦大学系统软件与安全实验室、 中国科学院软件研究所可信计算与信息保障实验室、百度安全、奇安信集团、蚂蚁集团、阿里安全协办的“软件供应链安全”的学术交流会在线上成功召开。复旦大学计算机科学与技术学院谈心博士、复旦大学软件学院戴嘉润博士、清华大学(网络研究院)-奇安信联合研究中心谷雅聪、浙江大学&蚂蚁集团潘高宁博士、浙江大学计算机科学与技术学院付丽嫆博士、香港中文大学计算机科学与工程学系李卓华博在会上作了精彩的报告。本次会议由清华大学(网络研究院)-奇安信联合研究中心应凌云主持。北京大学、上海交通大学、中国科学技术大学、浙江大学、北京理工大学、四川大学、华中科技大学、信息工程大学、上海大学、西安邮电大学、中科院软件所、中科院信工所等高校和科研院所以及企业界7900余人在线参与了论坛,并通过视频会议与演讲嘉宾互动。
InForSec将对会议精彩报告进行内容回顾,本文分享的是谈心博士的报告——《基于漏洞-代码提交关系排序的开源软件漏洞补丁定位研究 》。
谈心博士首先介绍了该工作的研究背景和动机。安全补丁对防御开源软件面临的漏洞威胁具有重要的作用,是一种重要的安全资产。尤其从软件供应链的角度,很多软件供应链下游厂商会使用上游开源软件,那么一旦上游开源软件被披露出一些安全漏洞,下游厂商需要及时地搜索上游开源软件披露的漏洞对应的补丁进行修补。但目前并没有一个完善的安全补丁信息共享平台,且工业界和学术界已有的安全补丁定位工作均无法较为全面和准确地收集漏洞对应的安全补丁。
谈博士总结了学术界现有的补丁定位工作,主要有三种主要收集方式,(1)从开源软件代码仓库中搜索目标漏洞的CVE-ID,如有commit包含,则认为该commit即是漏洞对应的安全补丁;(2)检测NVD/CVE网站提供的参考链接中是否有符合commit格式的URL,认为URL指向的commit即是对应的安全补丁;(3)将NVD/CVE中提供的参考链接中打上了”patch”标签的URL认为是对应的安全补丁链接。谈博士团队收集了6628个CVE作为漏洞数据集,评估了现有方案效果,发现已有方案覆盖率和准确性不高,存在较大的局限性。
针对这些问题,谈博士团队深入研究了漏洞披露信息和补丁信息之间的关联性,最终选取4个维度共22个特征设计了基于排序的补丁收集方案。这四个维度分别是:漏洞标识符、漏洞类型、漏洞位置和漏洞描述文本。
谈博士总结该方案有以下两个优势:
(1)相对比现有方案可以定位到更多的安全补丁,且因为该方案采用了多维度信息,可以一定程度上容忍和矫正某些维度不够准确的信息,取得更高的准确率和覆盖率。此外,采用排序的方案,在首选项不准确的情况下,可以从备选项中继续查找,取得更高的覆盖率。
(2)可以在定位补丁和人工需要付出的代价之前取得较好的平衡。
此外,谈博士介绍了该检测方案的具体流程。首先对commits和NVD/CVE数据库中漏洞信息分别提取原始信息:对于commit,主要提取commit message和code diff;对于漏洞则提取漏洞描述,标识符,相关文件/函数以及该漏洞会造成的影响描述文本等信息。之后对提取的信息做漏洞-commit之间的特征关联计算。最后并使用RankNet网络模型预测关联度最高的commits。
随后,谈博介绍了该补丁定位方案的效果。实验表明,PatchScout方案在漏洞覆盖率方面显著优于现有方案,且消耗的人力较少,平均仅需人工检查1.86个补丁便可以达到85.40%的召回率。最后,谈博也进一步测试了四个维度的特征的重要性,发现Vulnerability Identifier和Vulnerability Location的特征最为重要。
演讲者简介
谈心,复旦大学计算机科学与技术学院博士研究生,师从教育部长江学者特聘教授,国家973项目首席科学家杨珉教授,研究方向为系统安全。博士在读期间,主要研究领域有缺陷检测,内核模糊测试,补丁分析等。以第一作者身份发表4篇CCF-A类论文,包括USENIX SECURITY,CCS等。同时担任复旦大学白泽战队队长。参与多项国内顶级CTF竞赛,带队获得过第十三届全国大学生信息安全竞赛创新实践能力赛(国赛)冠军,XCTF2021总决赛冠军,2019TCTF腾讯信息安全争霸赛-新星赛冠军等奖项。
报告内容详情视频请点击上方的小程序观看。欢迎小伙伴们在哔哩哔哩关注「InForSec学术社区」解锁更多精彩视频。
我们会定期邀请国内外安全领域知名专家学者开展报告,交流相关领域最新技术以及进展。