赛事介绍
全国大学生信息安全竞赛是由教育部高等学校信息安全类专业教学指导委员会发起,面向高校大学生举办的全国性大赛。该赛事为国内面向大学生的信息安全系统设计领域最硬核、参赛人数最多、业界与学界最认可的比赛。全国大学生信息安全竞赛已连续举办十四届,赛程安排紧凑。参赛队伍需要在4个月的时间内完成一个安全系统的设计,包括功能实现、测试、文档撰写等工作。4月至6月期间完成初赛作品,并在6月21日提交。进入决赛的队伍于8月20日至21日参加决赛。决赛分数由网络评审与在线答辩两部分共同决定,综合考虑了作品的原创性与创新性、作品完成程度、作品的性能、作品的应用价值、相关文档的规范性等以及参赛队伍的应变和表达能力。本年度共有300支队伍进入总决赛,竞争激烈。
作品介绍
软件已成为当今社会运转的基本要素之一。软件开发者需要搭建构建环境,对源代码进行编译、测试和发布/部署。构建环境一般由持续集成(CI)和持续部署(CD)工具管理。持续集成和持续部署(CI/CD)脚本通过将应用程序的编译、测试和部署自动化,可显著地减轻开发者繁琐的维护负担,提升了软件开发效率,因此在诸如 Gitee、GitHub 这样的开源代码共享平台上被广泛使用,大大提高了软件测试和发布的效率。然而,现有的 CI/CD 脚本和流水线安全性弱,易受恶意代码和安全漏洞的影响。安全研究人员主要关注代码中的安全问题,忽视了构建环境的安全性,当前对 CI/CD 流水线中的安全问题缺乏大规模、系统性地研究。
为理解 CI/CD 脚本和流水线存在的安全问题,提升开源代码共享平台的安全水平,增强软件供应链的整体安全性,浙江大学网络空间安全学院参赛小组在院长任奎的大力支持下,深入研究构建环境对软件供应链安全的影响,对其安全性进行了大规模和系统性的分析,设计实现了面向构建环境的软件供应链安全性分析系统。
系统整体架构
本作品的创新性体现在以下四个方面。
大规模持续集成脚本收集
设计了一个自动化 CI/CD 脚本/用例爬取和分析工具 CIAnalyser ,收集了 GitHub 上所有的配置 CI/CD 流水线的代码仓库,构建了当前最大规模的 CI/CD 数据集,包含 258 万个代码仓库,3.3 万个 CI/CD 脚本和 1,570万个 CI/CD 脚本用例。
系统化的安全敏感操作分析
CIAnalyser 对 1,570 万个 CI/CD 流水线用例进行解析,提取有关安全的关键信息,包括持续集成脚本的运行时环境、敏感操作、脚本使用情况和已知漏洞影响范围。我们的工具识别出了 368 个代码仓库依然在使用包含已知漏洞的CI/CD 脚本。
新型的持续集成脚本漏洞挖掘工具
我们开发了一个名为 CIQuerier 的分析工具用来扫描持续集成脚本中存在的漏洞,共在收集到的持续集成脚本中发现 9 个新的零日任意代码执行漏洞,其中 6 个获得了确认,影响超过 1,100 个代码仓库。
基于持续集成脚本漏洞的新型软件供应链攻击
我们从脚本使用情况、输入、运行时和输出等各个方面分析持续集成脚本的攻击面。我们针对 GitHub 代码仓库设计了 6 种针对 CI/CD 流水线的新型攻击。这些攻击揭示出攻击者可以很容易地在脚本中隐藏恶意代码、泄露密钥、侵入编译环境以及在软件中植入后门。
结语
在本次比赛,参赛队员付出了大量的时间,同时也获益良多,和真实的软件开发环境,集成开发部署脚本,软件供应链安全有了最真实的接触,增强了对真实系统的认识、理解和实践能力,也挑战了自我,超出预期地完成了作品。最后,再次向获奖的老师和同学们表示祝贺!希望今后同学们可以再接再厉、突破自我、再创佳绩!
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...