OWASP 发布开源软件OSS的十大风险,已知漏洞排名第一,首次汇齐了10大类型的攻击案例

尽管软件供应链严重依赖开源软件,但业界缺乏一致的方法来理解和衡量开源软件的风险。 OSS(Open Source Sofware,开源软件)的风险管理从许可证管理开始,然后发展到CVE,但我们仍然缺乏涵盖安全、法律和运营方面的整体OSS风险管理方法。OWASP通过发布开源软件的十大安全风险,可调动行业专家和领导者合作来实现这一目标。

在这里插入图片描述

1. 概览

在过去十年对 OSS 的依赖中,授予为 CVE 编号的已知漏洞已成为安全的关键指标。已知漏洞虽然是一个重要信号,但通常会涵盖善意的开发人员所犯的错误。这些错误可能会被攻击者利用,应该予以修复,但它们很难涵盖依赖 OSS 所包含的全部风险

CVE 无法捕获运营风险(例如由过时或未维护的软件引入的风险)或下一代供应链攻击(例如名称混淆攻击)。正如 Synopsys 最近的开源安全和风险分析报告所强调的那样,这些风险是巨大的:

  • 89% 的代码库包含已过时 4 年以上的 OSS
  • 91% 的代码库包含两年多没有新开发的组件

若想了解更多关于Synopsys 2024年开源安全和风险分析报告的细节可以参阅博主前期文章《解读】Synopsys发布2024年开源安全和风险分析报告OSSRA》

Endor Labs的Station 9研究团队在The State of Dependency Management上发现,95%的漏洞存在于传递依赖(开发者选择的OSS自动引入的软件包)中。其中,许多实际上无法访问,或者如果更新,将导致不兼容的毁灭性连锁反应。该列表经过同行评审并由 20 多名 CISO 和 CTO 贡献,团队力求找到安全和开发团队应做好应对的最高风险(包括运营和安全)。

2. 开源软件十大安全风险

序号名称描述
OSS-RISK-1已知漏洞组件版本可能包含由其开发人员意外引入的易受攻击的代码。漏洞详细信息是公开披露的,例如通过 CVE、GitHub 安全公告或其他更非正式的沟通渠道。漏洞和补丁可能可用,也可能不可用。
OSS-RISK-2合法软件包的泄露攻击者可能会损害现有合法项目或分发基础设施的资源,以便将恶意代码注入到组件中,例如通过劫持合法项目维护者的帐户或利用漏洞在包存储库中。
OSS-RISK-3名称混淆攻击攻击者可能会创建名称与合法开源或系统组件名称相似的组件(抢注)、建议值得信赖的作者(品牌劫持)或使用不同语言或生态系统中的常见命名模式(组合蹲)
OSS-RISK-4未维护的软件组件或组件版本可能不再被积极开发,因此,原始开源可能无法及时(或根本不)提供功能性和非功能性错误的补丁项目。
OSS-RISK-5过时的软件项目可能使用旧的、过时的组件版本(尽管存在较新的版本)
OSS-RISK-6未跟踪的依赖关系项目开发人员可能根本不知道对组件的依赖关系,例如,因为它不是上游组件的 SBOM 的一部分,因为 SCA 工具未运行或未检测到它,或者因为依赖关系不是使用包管理器建立的。
OSS-RISK-7许可证风险组件或项目可能根本没有许可证,或者与预期用途不兼容,或者其要求没有或无法满足。
OSS-RISK-8不成熟软件开源项目可能不应用开发最佳实践,例如,不使用标准版本控制方案、没有回归测试套件、审查指南或文档。因此,组件可能无法可靠或安全地工作。
OSS-RISK-9未经批准的更改组件可能会在开发人员无法注意到、审查或批准此类更改的情况下进行更改,例如,因为下载链接指向未版本化的资源、因为版本化的资源已被修改或篡改或由于不安全的数据传输。
OSS-RISK-10依赖性过小/过大组件可能提供很少的功能(例如 npm 微包)或很多功能(可能只使用其中的一小部分)。

3. 案例介绍

Sonatype的研究人员2022年报告了一个通过恶意Python包pymafka(pymafka软件包包含一个Python脚本,用于监视主机并确定其操作系统)进行的供应链攻击,该包被上传到流行的PyPI代码源。该软件包试图通过名称仿冒感染用户,希望寻找合法的"pykafka"软件包的受害者可能会打错查询语句而下载恶意软件。

pymakfa包如此命名是希望用户能将其与pykafka混淆,后者是一个在企业中广泛使用的Python的Kafka客户端。Kafka是一个开源的分布式事件流平台,被成千上万的公司使用。

若想了解更多开源软件攻击案例和攻击细节,可以参阅https://owasp.org/www-project-open-source-software-top-10/。

在这里插入图片描述

4. 参考

[1] https://owasp.org/www-project-open-source-software-top-10/
[2] https://www.sentinelone.com/labs/use-of-obfuscated-beacons-in-pymafka-supply-chain-attack-signals-a-new-trend-in-macos-attack-ttps/


在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java请求第三方接口的一些步骤

一、前言 Java请求第三方接口的一些步骤。 在Java中请求第三方接口通常涉及以下步骤。这些步骤涵盖了从准备请求到处理响应的整个过程。 1. 确定接口详情 接口URL:你要请求的URL。请求方法:如GET、POST、PUT、DELETE等。请求参数:包括URL…

git tag 相关操作

文章目录 前言一、git里面的Tag二、Tag 类型1. 轻量级标签&#xff08;Lightweight Tag&#xff09;2. 注释标签&#xff08;Annotated Tag&#xff09; 其他常用操作git taggit show <tagname>git push origin <tagname>删除tag使用 gitk 查看效果 总结 前言 一般…

SparkSQL编程入口和模型与SparkSQL基本编程

SparkSQL编程入口和模型 SparkSQL编程模型 主要通过两种方式操作SparkSQL&#xff0c;一种就是SQL&#xff0c;另一种为DataFrame和Dataset。 1)SQL&#xff1a;SQL不用多说&#xff0c;就和Hive操作一样&#xff0c;但是需要清楚一点的是&#xff0c;SQL操作的是表&#xf…

Day_1

1. 环境搭建 技术选型 后端项目结构 sky-take-out maven父工程&#xff0c;统一管理依赖版本&#xff0c;聚合其他子模块 sky-common 子模块&#xff0c;存放公共类&#xff0c;例如&#xff1a;工具类、常量类、异常类等 sky-pojo 子模块&#xff0c;存放实体类、VO、DTO…

【UE5学习笔记】编辑及运行界面:关闭眼部识别(自动曝光)

自动曝光&#xff0c;也就是走进一个黑暗的环境&#xff0c;画面会逐渐变量&#xff0c;以模拟人眼进入黑暗空间时瞳孔放大&#xff0c;进光量增加的一种真实视觉感受&#xff1a; 制作过程中是否关闭自动曝光&#xff0c;取决于游戏的性质&#xff0c;但是个人认为&#xff0c…

力扣每日一题115:不同的子序列

题目 困难 给你两个字符串 s 和 t &#xff0c;统计并返回在 s 的 子序列 中 t 出现的个数&#xff0c;结果需要对 109 7 取模。 示例 1&#xff1a; 输入&#xff1a;s "rabbbit", t "rabbit" 输出&#xff1a;3 解释&#xff1a; 如下所示, 有 3 种…

遥遥领先们赚钱的路子,被香飘飘找到了……?

刚刚结束了的五一长假&#xff0c;中文互联网上可以说满是各种对立、冲突。 让人惋惜的胖猫及遭万人唾弃的捞女谭竹之外&#xff0c;曾经卖奶茶杯子绕地球几圈&#xff0c;如今却被多数人遗忘的香飘飘&#xff0c;一通操作下来&#xff0c;让不少吃瓜群众小刀剌屁股开了眼了……

自动化运维工具-Ansible

一、Ansible概述 Ansible是一种基于python开发的自动化运维工具&#xff0c;它只需要在服务端安装ansible&#xff0c;无需在每个客户端安装客户端程序&#xff0c;通过ssh的方式来进行客户端服务器的管理&#xff0c;基于模块来实现批量数据配置、批量设备部署以及批量命令执…

《Video Mamba Suite》论文笔记(4)Mamba在时空建模中的作用

原文翻译 4.4 Mamba for Spatial-Temporal Modeling Tasks and datasets.最后&#xff0c;我们评估了 Mamba 的时空建模能力。与之前的小节类似&#xff0c;我们在 Epic-Kitchens-100 数据集 [13] 上评估模型在zero-shot多实例检索中的性能。 Baseline and competitor.ViViT…

练习题(2024/5/5)

1左叶子之和 给定二叉树的根节点 root &#xff0c;返回所有左叶子之和。 示例 1&#xff1a; 输入: root [3,9,20,null,null,15,7] 输出: 24 解释: 在这个二叉树中&#xff0c;有两个左叶子&#xff0c;分别是 9 和 15&#xff0c;所以返回 24示例 2: 输入: root [1] 输…

【Web漏洞指南】XSS漏洞详细指南

【Web漏洞指南】XSS漏洞详细指南 概述XSS的三种类型执行任意 JS 代码的方式在原始HTML中注入绕过手法在 HTML标记内注入绕过手法在JavaScript代码中注入绕过手法其他绕过手法XSS常见有效载荷检索Cookies窃取页面内容键盘记录器查找内部IP地址端口扫描器自动填充密码捕获窃取 Po…

基于Spring Boot的大学生社团活动平台设计与实现

基于Spring Boot的大学生社团活动平台设计与实现 开发语言&#xff1a;Java框架&#xff1a;springbootJDK版本&#xff1a;JDK1.8数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/idea 系统部分展示 前台首页功能界面图&#xff0c;学生在大学生社团…

Android11 InputManagerService启动流程分析

InputManagerService在systemserver进程中被启动 //frameworks\base\services\java\com\android\server\SystemServer.java t.traceBegin("StartInputManagerService"); inputManager new InputManagerService(context);//1 t.traceEnd(); //省略 //注册服务 Servi…

某东抢购某台脚本-低调

某东抢购某台脚本 小白操作-学习使用 注意&#xff1a; 本文部分变量已做脱敏处理&#xff0c;仅用于测试和学习研究&#xff0c;禁止用于商业用途&#xff0c;不能保证其合法性&#xff0c;准确性&#xff0c;完整性和有效性&#xff0c;请根据情况自行判断。技术层面需要提…

尊享面试100(272.最接近的二叉树搜索值|| python)

刚开始想着用最小堆&#xff0c;把每个元素都加进去&#xff0c;然后找出最小的k个值&#xff0c;复杂度应该是&#xff08;nklogn) import heapq as pq class Solution:def __init__(self):self.h []pq.heapify(self.h)def closestKValues(self, root: Optional[TreeNode], …

WINDOWS配置IIS

1.安装IIS 1.1.打开启用Windows功能 打开“控制面板” > “程序和功能” > “启用或关闭 Windows 功能”。 1.2.启用IIS功能 打开“控制面板” > “程序和功能” > “启用或关闭 Windows 功能”。 勾选“Internet Information Services”&#xff0c;然后点击“确定…

《21天学通C++》(第十一章)多态

为什么需要多态&#xff1f; 为了最大限度地减少代码&#xff0c;提高可读性 1.虚函数 虚函数是C中的一种特殊成员函数&#xff0c;它允许在派生类&#xff08;也称为子类&#xff09;中重写&#xff08;覆盖&#xff09;基类的实现&#xff0c;使用virtual进行声明 在C中&am…

【GameFi】链游 | Seraph | 区块链上的动作角色扮演 NFT 装备收集和掠夺游戏

官网下载 新赛季公告&#xff1a;https://www.seraph.game/#/news/357 开始时间&#xff1a;2024年4月19日 11:00 (UTC8&#xff09; discard会有人发送一些激活码&#xff0c;或者有一些活动&#xff0c;只需要填表格关注账号&#xff0c;参与了就会将激活码发到你的邮箱 …

Remix框架实现 SSR

SSR SSR是一种网页渲染方式&#xff0c;它与传统的客户端渲染&#xff08;CSR&#xff09;相对&#xff0c;在日常的项目中我们更多是使用 CSR 的方式进行前端分离开发&#xff0c;渲染会在浏览器端进行。然而在SSR中&#xff0c;当用户请求一个网页时&#xff0c;服务器将生成…

U盘提示“被写保护”无法操作处理怎么办?

今天在使用U盘复制拷贝文件时&#xff0c;U盘出现“U盘被写保护”提示&#xff0c;导致U盘明明有空闲内存却无法复制的情况。这种情况很常见&#xff0c;很多人在插入U盘到电脑后&#xff0c;会出现"U盘被写保护"的提示&#xff0c;导致无法进行删除、保存、复制等操…