今天的演讲主题是Google的开源供应链安全。首先,让我们了解一下“供应链安全”到底是什么意思。通常,当我们谈论供应链安全时,是指针对供应链攻击的工程防御。现在,我们需要定义什么是供应链攻击。 译者备注: XcodeGhost源码地址[4] 相关报道[5] 苹果手机病毒感染事件——震惊业界的 XcodeGhost[6] XcodeGhost风波[7] 再进一步的例子包括 瞻博网络[8](Juniper copay是开源的,但事件流是开源的,所以这是一个开源供应链攻击。代码在两个半月的时间里都没有被发现,你知道攻击者是如何开展行动的? xpdf 中的问题是一项错误,log4j中的问题是一个功能,他们都不是恶意的,但是都是供应链的重要组成部分.因此让我们扩大供应链漏洞的定义,将开源供应链漏洞定义为由开源组件引起的可信软件中的可利用弱点。 现在我们可以将开源供应链安全定义为防御开源供应链攻击和开源供应链漏洞的工程。
概述悬镜供应链安全情报中心通过持续监测全网主流开源软件仓库,结合程序动静态分析方法对潜在风险的开源组件包进行分析和监测,捕获大量开源组件恶意包投毒攻击事件。 2024 年 1 月份,悬镜供应链安全情报中心在 Npm 官方仓库(https://www.npmjs.com/)和 Pypi 官方仓库(https://pypi.org/)上共捕获 675 个不同版本的恶意投毒包 ex=656e50c4&is=655bdbc4&hm=cca58d210eaf8cee1ba47b9d92f9ce5814998a785e827885331ab77ab5c6d587&") if 详细分析请参考:供应链投毒预警 | 恶意 Py 包仿冒 tensorflow AI 框架实施后门投毒攻击DNS 查询外传敏感信息该攻击方式是一种较为隐蔽的信息窃取手法,通常在包管理器安装或者加载投毒包时自动执行用于收集受害者系统敏感数据的 悬镜供应链安全情报中心将持续监测全网主流开源软件仓库,对潜在风险的开源组件包进行动态跟踪和溯源,实现快速捕获开源组件投毒攻击事件并第一时间提供精准安全预警。
事实上,它与现代开发那么交织在一起,以至于代码所有者通常不知道自己软件中的开源组件。" 唉。 正如Synopsys报告的那样,"确保软件供应链安全的第一步是管理应用程序中的开源和第三方代码。 如果您无法有效管理和确保开源和第三方软件的安全性,那么为确保供应链安全所做的任何其他努力都将失效 - 或者坦率地说,甚至无关紧要。" Synopsys没有说错。 虽然2023年的大部分主要安全改进都是针对软件供应链的,但还有其他重大进展。其中之一是漏洞利用可能性交换(VEX)及其开源实现OpenVEX的兴起。 开发者安全公司Snyk在其2023年软件安全调查中发现,尽管针对开源代码的网络攻击数量创历史新高,但40%的受访者仍然不使用关键的供应链安全技术。 当然,公司知道存在问题,但Synk发现他们正在特殊的基础上解决供应链安全问题。只有一半的公司有正式的供应链安全策略。 我们在2024年的安全任务很清晰。
去年发生了一些令人震惊的攻击,这使得开源软件供应链的安全性备受质疑。 那么,这是否意味着开源软件可以安全地再次使用? 答案是不完全是,企业为了更好地保护自己,需要了解开源软件供应链的工作原理,我们生活中几乎所有的设备都包含一个嵌入式开源软件和运行时库的复杂系统。 不幸的是,要理解别人上传的软件非常困难,人们可能会恶意地改变供应链中的数据包或库。 无论你在开源供应链中的角色如何,如果我们要防范未来的攻击,必须对安全性给予更多的关注。安全专业人员通过默默无闻的方式熟悉安全性,他们错误地认为,如果软件很难理解,就很难发起攻击。 去年的攻击表明,通过滥交(将开放源代码无管理地纳入软件供应链)带来的不安全感是我们面临的新的问题。
如果你是一个开源维护者,当你了解了项目的攻击面以及项目整个供应链的威胁载体,你可能会感到不知所措,甚至觉得无法克服。好消息是,2021 年也是供应链安全解决方案年。 虽然还有很多工作要做,现有的解决方案也有很大的改进空间,但已经可以对项目进行预防性控制,以强化供应链,免受安全威胁。 本文最初发表于谷歌开源博客,由 InfoQ 中文站翻译并分享。 本文介绍了相关问题、答案和预防选项,如果你想保护自己的开源项目免受供应链攻击,那么这是一份不错的初级指南。 问题 6:在引入依赖项前如何对其进行评估? 1. 答:使用像 Scorecards 和 deps.dev 这样的工具来评估风险和传递性变更 2. 检查包 url 旁边的小“锁”图标 3. 开源项目安全性的相关资源: SLSA:一个供应链安全等级框架 Scorecards:安全最佳实践应用评价工具 Allstar:一个确保采用安全最佳实践的 GitHub 应用 Open Source Insights
现代软件供应链由多个组件组成,这些组件在开发过程的每个阶段采用不同的形式。在开发阶段,将开源包、容器镜像、IaC 模块等第三方软件组件集成到代码库中。 这些软件供应链组件中的任何一个弱点都可能是软件供应链攻击中使用的入口点或支点。当你考虑到我们的软件供应链已经变得很复杂时,2021 年软件供应链攻击增加了 51%也就不足为奇了。 交付管道和软件供应链安全 为了支持快速、迭代和高质量的部署,托管 VCS 和 CI/CD 管道已成为云原生组织的命脉。 在这篇文章中,我们将研究 VCS 和 CI/CD 管道中一些最常见的安全漏洞,这些漏洞可能会使供应链受到攻击。然后,我们将介绍安全专业人员可以实施以减轻供应链攻击的几个最佳实践。 再加上它们处于软件供应链的中心,这使得它们很容易成为黑客的目标。
10月20日,Google宣布正在为名为Graph for Understanding Artifact Composition(GUAC)的开源项目寻找感兴趣的贡献者,以此进一步强化软件供应链安全。 谷歌Brandon Lum、Mihai Maruseac 和 Isaac Hepworth称,GUAC开源项目将可以解决整个生态系统中迅速发展的工作所产生的需求,以生成软件构建、安全和依赖元数据。 GUAC旨在让每个组织都可以只有访问和调用这些信息,正在发挥开源的共享和民主的特性。 谷歌多手段强化供应链安全 在启动GUAC开源项目之前,谷歌在供应链安全方面已经有了多个动作。 支撑此架构的数据来自Sigstore、GitHub、开源漏洞( OSV )、Grype和Trivy等,以在漏洞、项目、资源、开发人员、工件和存储库之间建立有意义的关系。
概述悬镜供应链安全情报中心通过持续监测全网主流开源软件仓库,结合程序动静态分析方式对潜在风险的开源组件包进行动态跟踪和捕获,发现大量的开源组件恶意包投毒攻击事件。 在2024年4月份,悬镜供应链安全情报中心在NPM官方仓库(https://www.npmjs.com/)和Pypi官方仓库(https://pypi.org/)上共捕获772个不同版本的恶意组件包,其中 投毒案例分析本节将从4月份捕获的开源组件恶意包中选取部分具有代表性的投毒样本进行分析、还原投毒攻击细节。 这些恶意包具有相同的攻击代码以及相同的高版本号(99.0),可推断攻击者尝试进行包依赖混淆(Dependency Confusion)供应链投毒。 Part6 数字钱包app窃密劫持4月9号,攻击者在Pypi官方仓库投放包名为useragent-api的恶意包(涉及版本3.1.1、3.1.4及3.1.5)。
美国网络安全和基础设施安全局(CISA)的安全研究人员报告称,一个受广泛使用的开源Java框架中存在严重漏洞并被攻击者利用,以向未打补丁的服务器部署后门。 专家表示,这种情况可能会对未打补丁的软件构成重大供应链威胁。 供应链面临风险 当Huntress对该漏洞进行分析时,没有证据表明存在主动利用的情况。 这对攻击者来说无疑是利好的,同时这可能给供应链带来重大风险。
GitHub 地址 :https://github.com/fastai/fastai 这是 Fast.ai 发布的一个免费开源 Pytorch 库,最初是为 Fast.ai 课程的学生创建的,于 18 github.com/facebookresearch/Detectron Detectron 是 Facebook AI 的成果,基于 Python 和 Caffe2 而构建,于 18 年 1 月正式开源 GitHub 地址: https://github.com/facebookresearch/fastText 它也是来自于 Facebook AI 的资料库,于 16 年开源。 GitHub 地址:https://github.com/jhfjhfj1/autokeras Auto-Keras 是一个用于自动机器学习( AutoML )的开源软件库。
软件供应链安全包括两部分,一是引入的开源组件包中存在漏洞,二是引入的开源组件包中存在攻击者精心制作的恶意代码。 开源软件供应链安全攻击风险点 开源软件除了引入漏洞等不安全因素,在使用的过程中还包含人为攻击的各种风险点。 开源软件供应链安全防护措施 目前这两年针对软件供应链的产品逐渐完善,形成针对各个流程的安全防护手段,下面主要概述针对开源软件供应链攻击的防护措施。 对所有引入代码、开发人员不可信,对依赖的开源代码、开发代码多次扫描,防止投毒、漏洞的引入,甚至是内部人员的恶意攻击。 6. 使用者应从官网下载代码,并根据自己需求,审查许可信息。 参考文献 1. 开源软件供应链安全研究综述. *软件学报*, 0-0. 3. CodeWisdom.技术科普:浅谈开源软件供应链风险.
我在 1993 年首次使用并贡献了免费和开源软件,从那时起我一直是一名开源软件的开发人员和布道者。 尽管我被记住的一个项目是 FreeDOS 项目,这是一个 DOS 操作系统的开源实现,但我已经编写或者贡献了数十个开源软件项目。 我最近写了一本关于 FreeDOS 的书。 这本书几乎完全是用开源软件制作的。我想分享一下对用来创建、编辑和生成《使用 FreeDOS》的工具的看法。 Google 文档 Google 文档是我使用的唯一不是开源软件的工具。 我确信有开源协作工具,但 Google 文档能够让两个人同时编辑同一个文档、发表评论、编辑建议和更改跟踪 —— 更不用说它使用段落样式和能够下载完成的文档 —— 这使其成为编辑过程中有价值的一部分。
本项目为基于Hyperledger Fabric区块链的供应链资产跟踪解决方案,项目主要包括链码和Web应用两部分。 6、最后,对等节点将验证收到的区块,然后写入自己维护的账本,交易现在就生效了,任何之后 发生的账本读取操作都可以反应账本的变化。
作者 | 赵钰莹 如今,所有热爱开源的开发者可能都心怀担忧:开源软件的供应链安全问题如何解决? 关于开源代码维护者因反俄给 node-ipc 库添加恶意代码、GitHub 封停部分俄罗斯开发者账号的讨论还未结束,10 万 npm 用户账号信息被窃再登 HN 热搜,开源软件供应链的安全性成为业界关注的焦点话题 具体为: 《软件供应链安全保障基本要求》 中国通信标准化协会标准 开源软件合规性问题解答 InfoQ:开源协议及其基金会在整个开源软件供应链中扮演着一个什么样的角色,他们具体能解决哪些问题? Gavin:站在软件供应链安全的角度,开源只是其中一部分,但目前绝大多数安全事件都是因为开源软件导致的,所以大家潜移默化会把软件供应链安全与开源软件漏洞紧密结合起来。 InfoQ:目前在整个开源软件供应链里面最常见的法律合规性的问题是什么?企业应该怎么应对这些问题?
); event->accept(); } else { event->ignore(); } } 三、效果图 [videowidget.gif] 四、开源主页 以上作品完整源码下载都在开源主页,会持续不断更新作品数量和质量,欢迎各位关注。
功能截图 项目地址:https://gitee.com/y_project/RuoYi-Cloud 6.open-capacity-platform 介绍 简称ocp是基于layui+springcloud
原作者 William Belk 编译 CDA 编译团队 本文为 CDA 数据分析师原创作品,转载需授权 2017 年哪些开源项目值得关注?让我们来看看 2017 年的 6 大热门开源项目。 企业必须依赖于脆弱的开源项目、昂贵的专有平台或广泛的内部工具来管理它们的虚拟集群容器。 虽然 Lab41 本身不是一个开源项目,但是它提出了一些有趣的问题,这些问题导致了开源代码,并对社区做出了贡献。它揭示了开源原则,风险投资和政府优先事项的交集。 原文链接: https://hackernoon.com/top-6-open-source-projects-in-2017-db34b9d034a2
Kit 可用于修复损坏数据库 针对占用空间大小优化的数据库备份/恢复功能 日志输出重定向以及性能跟踪接口 内建用于全文搜索的 mmicu FTS3/4 分词器 WCDB(WeChat Database)于6月 9日在GMTC全球移动技术大会上正式对外开源 官方开源地址: https://github.com/Tencent/wcdb 来给Github给WCDB一个star吧!
在“聚焦开源安全”分论坛中,悬镜安全COO董毅进行了以“基于代码疫苗技术的开源软件供应链安全治理”为题的主题分享,围绕“代码疫苗技术”给出了一套覆盖治理与运营全流程的开源安全解决方案。 Gartner认为,到2025年,全球45%的组织会受到软件供应链攻击,比2021年增长三倍。近几年,重大的软件供应链攻击事件很多都与开源漏洞相关。开源供应链面临着严峻的安全风险。 站在供应链安全的角度,软件在开发、供应、使用这三大环节中都面临相应的安全风险。因此,每个环节都需要技术抓手来协助解决安全问题。悬镜安全核心的代码疫苗技术正是企业进行供应链安全治理的技术切入点。 包括但不限于: 基于真实攻击事件生成数据,您需要的所有内容均包含在同一条日志记录中 提供多种维度的图、表协助您的团队进行数据分析 对接至其他SIEM平台或自研风险度量平台与您的其它数据汇总分析 3.落地方案 开源软件供应链安全治理痛点 悬镜从以下三个方面提出一体化的应用安全落地要点,将基础环境、代码和安全能力进行整合,共同打造供应链安全场景下的应用防护能力。 1.
6、LoonAndroid 项目地址:https://github.com/gdpancheng/LoonAndroid 主要有以下模块: 自动注入框架(只需要继承框架内的APP既可) 图片加载框架 (多重缓存,自动回收,最大限度保证内存的安全性) 网络请求模块(继承了基本上现在所有的http请求) eventbus(集成一个开源的框架) 验证框架(集成开源框架) Json解析(支持解析成集合或者对象