【解读】Synopsys发布2024年开源安全和风险分析报告OSSRA

软件供应链管理中,许可证和安全合规性至关重要。开源组件和库可降低风险,但需了解许可证内容。Synopsys 2023年审计发现,超过一半的代码库存在许可证冲突。MIT许可证是最常用的宽松许可证,但也与其他许可证存在不兼容风险。点此获取报告原文(中文翻译版本,访问密码:6277)。

在这里插入图片描述

1. 一些关键发现

1.1. 绝大多数开源软件使用者并没有更新他们使用的组件

2022至2023年间,高风险漏洞增加了54%(26个百分点),造成这种情况的原因可能不止一个。例如,有可能是经济衰退和随之而来的裁员导致用于寻找和修补漏洞的人员数量减少。此外,审查发现,91%的代码库包含了比最新版本落后10个或更多版本的组件,由此
可以得出一个简单的结论:绝大多数开源软件使用者并没有更新他们使用的组件。

在这里插入图片描述

1.2. Top 10 的漏洞中,有8个都可以映射到同个CWE

CWE-707CWE 20、79、80、97、937的支柱。CWE-707涉及从上游组件读取数据或发送数据到下游组件之前,没有满足安全需求。不能正确地净化输入可能会带来跨站脚本(XSS) 和SQL注入等漏洞利用攻击。

CWE项目将“支柱缺陷”定义为最高级别的缺陷,是与之相关的所有类别/变体缺陷的基础。如果想深入理解CWE,可以参阅博主文章《「 网络安全常用术语解读 」通用缺陷枚举CWE详解》

在这里插入图片描述

1.3. 其他关键数据

  • 在扫描的1,000多个代码库中,有96%包含开源代码
  • 77%的源代码和文件来自开源
  • 53%的代码库存在开源许可证冲突
  • 84%的代码库在安全风险评估中发现了漏洞;74%有高风险漏洞
  • 91%的代码库中包含比最新版本落后10个或更多版本的组件

2. 为什么开源软件供应链安全如此重要?

开源软件供应链安全是指确保开源软件在开发、分发和使用过程中的安全性。随着开源软件的广泛使用,开源软件供应链安全变得越来越重要。如果开源软件供应链存在安全漏洞,可能会导致严重的安全风险,例如数据泄露、系统崩溃等。因此,保护开源软件供应链的安全性对于确保软件供应链的安全性和可靠性至关重要。

3. 为什么开发者需要保持开源组件的持续更新?

使用商业软件的组织都知道,他们的软件会被自动“推送”补丁和更新,或者至少会收到供应商的通知,告诉他们有更新可以下载(通常是非常重要的更新)。但这种情况在开源软件中很少出现,开源软件的使用者需要自己关注组件的状态,自己去下载可用的新版本。

过时的开源组件可能包含已知漏洞,这些漏洞可能会被攻击者利用。此外,过时的开源组件可能不再得到维护,这意味着开发者无法获得安全更新和补丁。因此,开发者需要定期更新和维护其使用的开源组件,以确保其应用程序的安全性和可靠性。

4. 为什么软件供应链管理需要软件物料清单 (SBOM) ?

SBOM 是一份详细的清单,列出了软件中使用的所有组件、依赖项和许可证信息。通过使用 SBOM,组织可以更好地了解其软件中的组件来源、许可证合规性和安全漏洞,从而更好地管理其软件供应链。此外,SBOM 还可以帮助组织遵守法规要求,例如美国国家标准与技术研究院 (NIST) 的软件供应链安全指南。

美国第14028号行政命令 (EO) “提升国家网络安全”规定,软件供应商必须直接向采购方提供SBOM,或者在公共网站上公开其SBOM,并且政府和非政府方面可能都需要查看SBOM,以确保软件产品符合SBOM的最低要求。

Black Duck审计团队发现,在2023年审计的代码库中,超过一半 (53%) 包含存在许可证冲突的开源软件。下图为常用的Top 10开源软件许可,关于开源软件许可证的详情介绍可参阅博主文章《带你正确认识开源软件》。

在这里插入图片描述

在美国及其他国家,创造性的工作(包括软件)默认会受版权的保护。未经创作者授权,任何人对该软件的使用、复制、分发或修改均不合法。即使最友好的开源许可证(如MIT、BSD)也会规定用户在使用软件时需要承担的义务。如果代码库中包含的开源代码许可证与该代码库的总体许可证存在冲突,就可能存在潜在的许可证风险。

5. 参考

[1] Synopsys 2024年开源安全和风险分析报告(访问密码:6277)


在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/747847.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI新工具(20240315) 用户通过点击图像的特定部分实现域区图像动画; 先进的机器人操作框架

✨ 1: Follow-Your-Click 用户通过点击图像的特定部分实现域区图像动画 Follow-Your-Click 是一个开放领域的区域性图像动画创作工具,它可以通过简短的提示语实现图像中特定区域的动画效果。这种功能允许用户通过点击图像的特定部分并输入简短的指令(例…

ViT学习笔记

一、Embedding层 对于标准的Transformer 模块,要求输入的是 token (向量 ) 序列,即二维矩阵 [num_token, token_dim] 在代码实现中,直接通过一个卷积层来实现以ViT- B/16为例,使用卷积核大小为 16x16 , stride 为 16 …

【Streamlit学习笔记】实现包含多个sheet的excel文件下载

1、什么是Streamlit Streamlit是一个免费的开源框架,用于快速构建和共享漂亮的机器学习和数据科学Web应用程序,官网链接 Streamlit Streamlit API链接 API reference 实际项目中遇到的问题:包含多个sheet的excel文件下载,下面将给…

传输层的UDP协议

1. UDP协议报文格式 1.1 16位端口号 UDP协议报文中,端口号占2个字节,包括 源端口号 和 目的端口号。 1.2 16位UDP长度 UDP报文长度为2个字节 ,即UDP数据报长度为0~65535,也就是64kb。 1.3 16位UDP检验和 数据在网络传输的…

k8s helm 删除 tiller

kuberneter 上面装了 helm 想卸载还并不是那么简单, 参考 stackoverflow 回复 kubectl get -n kube-system secrets,sa,clusterrolebinding -o name|grep tiller|xargs kubectl -n kube-system delete kubectl get all -n kube-system -l apphelm -o name|xargs kubectl dele…

DHCP在企业网的部署及安全防范

学习目标: 1. DHCP能够解决什么问题? 2. DHCP服务器如何部署? 3. 私接设备会带来什么问题以及如何防范? 给DHCP服务器配置地址: 地址池: DHCP有2种分配模式:全局分配和接口分配 DHCP enable

element el-table 表格限制多选个数

本次的功能的要求是: 原本的引入的elment 的表格,去除全选框,版本对比的按钮,需要在选择版本,并且版本个数为2的时候,可点击,进行版本对比操作每次选择版本的时候,目前已有两个选择…

酷轻松气囊按摩护膝全新上线,科技呵护膝部健康

在快节奏的现代生活中,膝部健康问题逐渐引起人们的重视。长时间的站立、行走或运动,都可能对膝部造成不同程度的压力和损伤。 特别是家里有老人一直被老寒腿、关节发凉疼痛困扰的,经常一遇到下雨天,膝盖就不舒服;尤其到…

鸿蒙-自定义组件的生命周期

目录 自定义组件的生命周期 1.aboutToAppear 2.aboutToDisappear 3.onPageShow 4.onPageHide 5.onBackPress 日志输出 1.显示页面 2.页面点击返回按钮 3.页面跳转 4.页面返回 自定义组件的生命周期 先来一段列子 import router from ohos.router Entry Component…

虚拟机VMware上 centos7 的网络配置

第一步:权限的切换 由普通用户切换到超级用户 用户名为:root 密码为:自己安装 linux 时第一次设置的密码 su -root超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。当看到你的命令提示符为“$”时,证明切…

pytorch之诗词生成6--eval

先上代码: import tensorflow as tf from dataset import tokenizer import settings import utils# 加载训练好的模型 model tf.keras.models.load_model(r"E:\best_model.h5") # 随机生成一首诗 print(utils.generate_random_poetry(tokenizer, model)…

WRF模型教程(ububtu系统)-WPS(WRF Pre-Processing System)概述

一、WPS简介 WRF 预处理系统 (WRF Pre-Processing System,WPS) ,集成了基于Fortran和C编写的程序,这些程序主要用于处理输入到real.exe的数据。WPS主要有三个程序和一些辅助程序。 二、各程序介绍 主要的程序为geogrid.exe、ungrib.exe、met…

paddle ocr识别文字

paddle使用 # pip install paddlepaddle2.5.2 -i https://mirror.baidu.com/pypi/simple # pip install paddleocr2.7.0.3 -i https://mirror.baidu.com/pypi/simplefrom paddleocr import PaddleOCR from PIL import Image import numpy as npimage Image.open(./2.png) ocr…

Spring Boot Actuator介绍

大家在yaml中经常见到的这个配置 management: endpoints: web: exposure: #该配置线上需要去掉,会有未授权访问漏洞 include: "*" 他就是Actuator! 一、什么是 Actuator Spring Boot Actuator 模块提供了生产级别…

微信小程序--分享如何与ibeacon蓝牙信标建立联系

ibeacon蓝牙设备 iBeacon是苹果公司2013年9月发布的移动设备用OS(iOS7)上配备的新功能。其工作方式是,配备有 低功耗蓝牙(BLE)通信功能的设备使用BLE技术向周围发送自己特有的ID,接收到该ID的应用软件会根…

Laravel Class ‘Facade\Ignition\IgnitionServiceProvider‘ not found 解决

Laravel Class Facade\Ignition\IgnitionServiceProvider not found 问题解决 问题 在使用laravel 更新本地依赖环境时,出现报错,如下: 解决 这时候需要更新本地的composer,然后在更新本地依赖环境。 命令如下: co…

19113133262(微信同号)【征稿进行时|见刊、检索快速稳定】2024年区块链、物联网与复合材料与国际学术会议 (ICBITC 2024)

【征稿进行时|见刊、检索快速稳定】2024年区块链、物联网与复合材料与国际学术会议 (ICBITC 2024) 大会主题: (主题包括但不限于, 更多主题请咨询会务组苏老师) 区块链: 区块链技术和系统 分布式一致性算法和协议 块链性能 信息储存系统 区块链可扩展性 区块…

微信小程序将高德地图转为腾讯地图的自行车路线规划

微信小程序后台首页开发设置 相关文档 腾讯后台 微信小程序接入JDK JDK腾讯地图文档 腾讯路线规划文档 核心代码 <map id"myMap" ref"myMap" style"width: 100%; height: calc(100vh - 80px)":latitude"latitude" :scale&qu…

Vue项目中使用ECharts构建交互式中国地图的详细指南

&#x1f31f; 前言 欢迎来到我的技术小宇宙&#xff01;&#x1f30c; 这里不仅是我记录技术点滴的后花园&#xff0c;也是我分享学习心得和项目经验的乐园。&#x1f4da; 无论你是技术小白还是资深大牛&#xff0c;这里总有一些内容能触动你的好奇心。&#x1f50d; &#x…

ASP.NET-Server.UrlEncode

目录 背景: Server.UrlEncode作用: 1.URL 编码&#xff1a; 2.避免冲突&#xff1a; 3.安全性&#xff1a; 4.规范化&#xff1a; 实例说明: 不使用Server.UrlEncode 使用Server.UrlEncode 总结: 背景: Server.UrlEncode方法在ASP.NET中主要功能是对URL中的参数进行编…