精华内容
下载资源
问答
  • 2022-02-24 17:21:35

    缘起

    之前写过一篇文章《我所理解的开源软件供应链安全》,当时的情况,还没有出现一些值得探讨的,堪称紧迫的热点事件,所以我也仅仅是泛泛而谈,到最后留了一句话:「我的提议是:不再提“开源供应链安全”,而是提“开源生态建设”。」

    在最近一段时间,接连出现了Log4j2事件,与Marak Squires删库事件,一时间大家都议论纷纷,我也觉得自己有责任,来更加深入的探讨一下,这个方面的问题。

    一、时代已经发生了变化

    在B站上,有一位著名的Up主:半佛仙人,发了一篇文章,后来还专门录了一期视频。因为是“外行”的缘故,所以会受到很多的批评与指责。其实我觉得他说得大致上都很有道理,作为一位热心人士,积极找程序员朋友交流,尽量深入理解开源,然后再发表自己看法,已经非常不错了。

    至少半佛的一个观点,我特别赞同:时代已经发生了变化。我们只有意识并理解这些变化,然后才谈得上“如何应对”。

    比尔盖茨的一封信

    1976年2月3日,著名的微软公司的创始人,发布了《致电脑爱好者的一封公开信》。这封信在开源社区,估计无人不知、无人不晓。关键在于下面这段话:“谁会从事专业的软件开发却分文无获。哪有业余爱好者会花费3个人年的精力去编写软件,去修正软件,编写使用手册却免费发放给别人使用?”

    在很长一段时间里,开源社区的人都视微软是开源的敌人,而且常常喜欢拿段话出来“打脸”。现在就是有那么多人,那么多技术水平高超,却不求回报的人,愿意花费极其惊人的时间,去写软件,修bug,写文档。甚至还有社区运营、技术布道等等诸多工作。

    “你们这些资本家们无法理解的事情,正在这个世界上发生着,而且越来越多”。

    早期的黑客是一群什么人?

    有一些事情,确实很难理解。尤其是像半佛这样的人,无法理解那些早期黑客的动机。因为按照“理性经济人”的假设,那些黑客完全是在做一些一味付出,不求回报的事情。

    事实上,我们可以从两个角度,来理解黑客的逻辑。

    • 关于回报:如果我们扩展经济人假设,将回报,不仅仅局限于经济上的,金钱的,直接的回报。而是按照功利主义的定义:“效用最大化”。所谓效用,包括幸福、快乐、满足等等情感体验。通过获得经济收入,当然是一种方式。但是:社会地位的提升,甚至仅仅是在社区范围内的备受尊崇,也是一种方式。更有甚至,仅仅是创造一个从未存在过的事物,这种创造的喜悦,就足以回报那些黑客的全部投入。
    • 关于未来:黑客、程序员,也许是最喜欢科幻小说的人群了吧。不仅仅是喜欢,而且他们甚至希望能够促成某种未来的早日实现。如果自己写的代码能够帮助这样的未来早日实现,如果与一群黑客一起努力,能够推动这样的世界早日降临,几乎每一个黑客都会愿意倾尽全力。

    所以,简单的总结就是:早期黑客们,在努力推动未来早日实现的过程中,已经获得了他们希望得到的回报。

    供求双方,从合一到分离

    我们可以引用一段自由软件的定义:“自由软件”尊重用户的自由,并且尊重整个社区。粗略来讲,一个软件如果是自由软件,这意味着用户可以自由地运行,拷贝,分发,学习,修改并改进该软件。

    后来在社区里有一些不同的声音,在质疑这样的定义。为什么只谈用户的自由,却不谈“作者”的自由?为了用户可以自由的运行,拷贝,分发,学习,修改并改进,就可以不管作者的利益了吗?作者为啥不能自由的定义自己的授权协议?想授予就授予?想收回就收回?

    其实,根源还是在于时代不同了。在自由软件,甚至开源软件刚刚诞生的时候。软件的供求双方,是一个紧密的整体。社区里的人,既是一些软件的开发者,也是另一个软件的使用者。所谓“尊重整个社区”就是这个意思。尊重整个社区的自由,就是为了整个社区的利益。

    在早期:开源与互联网几乎就是一对双生子,他们一起成长,互相扶持。风借火势,火借风威。但是,渐渐的,开源社区与软件产业、互联网产业,以及由互联网产业成长起来的云计算行业,不再是一体的了。在这个过程中,供应方发生了变化,需求方也发生了变化。要想再愉快的一起玩耍,就需要从新思考各自的定位了。

    所以,下面我将从分离之后的供求双方,来分析这个问题。

    二、从“礼物文化”到“注意力兑换”

    在Eric Raymond的《大教堂与集市》中,有一个最经典的比喻,就是礼物文化。我们引用其中的两段:

    在礼物文化下,其成员通过送出礼物而竞争社会地位。
    礼物文化并不是对物质稀缺的适应,而是对物质充裕的适应。
    充裕性会使命令关系难以维持,会使交换关系变成无意义的游戏。
    在礼物文化中,社会地位并不取决于你控制了什么,而是你给予了什么。

    礼物的价值,是由礼物本身决定的?

    我们来分析一下礼物这个比喻的内涵。一个人送出了一个礼物。人们根据这个礼物的贵重程度,而“赋予”这个送礼者,相应的社会地位。

    这意味着三个并未明确讲述的要素:

    • 礼物的价值是客观存在的吗?是可以被客观、准确、以公认的方式判定的吗?
    • 人们,注意这里的人们,到底是一百个人,还是一万个人?这些人的数量应该会有多少,他们如何达成共识?
    • 所谓社会地位,到底是什么?尊重,礼让,还是某种“注目礼”?

    开源软件的价值,现在是由“价值+关注度”决定的

    假设我们还是沿用“礼物”这个思路,来看现在的开源软件,我们需要如何来衡量一个人做出了多大的贡献?或者说“送出了多贵重的礼物?”

    先区分两种情况,一个人独立开发出一款开源软件,作为一个礼物。一个人参与一个开源项目,在其中贡献了一部分“代码、文档、讨论、布道等等”

    • 首先应该是软件价值本身,一个加密软件,应该比一个加法软件,更有价值。
    • 其次是这个软件究竟对多少人有价值?一个只对一百个人有用的软件,肯定不如对一百万人有用的软件,那么有价值。
    • 然后就是争夺关注度的情况了,一款对一百万人有用的软件,现在只有一百个人知道,这个软件的价值说到底也不大。

    现在来计算礼物的价值:一个人,做了一个开源软件,有多少人知道这个软件,而且知道是他做的,而且认可他的工作。这个数量,大概可以用来推算他所贡献的礼物的价值。

    如何将注意力兑换成其他事物?

    自从互联网流行以后,尤其是互联网上免费的商业模式流行起来以后,大家都会谈一个词,叫做“流量变现”。其实在开源软件领域,简单的“礼物文化”,也需要升级为“注意力兑换”。

    以前的逻辑是:一个人贡献礼物 –> 获得社会地位

    现在的逻辑是:一个人贡献礼物 –> 吸引了多少注意力 –> 这些注意力能够兑换多少社会地位

    当然,我们也可以将兑换这个词,用来描述更多的现象。

    • 兑换内心满足(有人用,我就很开心)
    • 兑换社会地位(更高的社会评价)
    • 兑换就业机会(跳槽到大厂)
    • 兑换风险投资(有投资人看中这个开源软件)
    • 兑换维护合同(有企业级用户使用,愿意找你维护)

    但是,所有的这些,还需要一个前提:注意力。如果没有足够高的关注度,你啥也兑换不了。

    事实上,早期开源那种“爱用就用,别来烦我”的态度,当然没有问题。但是:那样不够“友好”,也就会影响关注度的快速提升。无论是在社区快速响应,和蔼可亲的回答问题,快速修复bug,其实都是一种吸引更多注意力,留住更多关注度的办法。

    虽然这么说有些残忍,但是我还是想说:“Marak Squires的做法错了,一款开源软件有几千万次下载,并不能够自动兑换成社会地位,个人收入或者其他东西”。

    三、供应链、责任链与利益链

    下面再来说说需求方的问题。现在我们常常说:软件吞噬世界,开源吞噬软件。但是,我们为啥还会接着说:云计算吞噬开源呢?

    • 软件吞噬世界:全世界都运行在软件之上
    • 开源吞噬软件:几乎所有的软件,都有开源的成分,甚至完全就是开源
    • 云计算吞噬开源:云计算靠开源赚到了钱,但是并没有分给开源

    当然,这里面的每一句话,可能都有些问题。

    由开源软件的依赖关系,自然形成的供应链

    在上一篇文章中,我写了这么一段话:“我们在做软件开发时,通常会定义的一个依赖文件。一款软件,会依赖一组其他软件(包),而这些软件(包)又会进一步的依赖某些其他的软件(包)。但是,随着包依赖描述的不断改进,我们会区分:开发期(Dev)依赖与执行期(Running)依赖。”

    在那段话里,我只是希望说明“依赖不等于风险”,由软件依赖关系形成的整个网络,可以称之为:“开源供应链”或者“开源生态”,却不能简单的等同于供应链风险。

    但是,我并没有进一步分析:开源软件的供应链与一般的供应链,有何区别?以下一段文字,要特别感谢李大维老师,因为与他的交谈,让我认识到这一点。

    传统的供应链,是一级与一级之间,都签了合同的。
    
    但是在软件,尤其是开源软件的供应链,每一级之间,都有免责条款。

    免责条款

    事实上,有两种免责条款。一种是大多数开源软件的授权协议里写的。比如在GPL 2.0里。

    1. 由于本程序是免费提供的,所以在法律许可范围内,本程序是没有担保的。除非有书面说明。本程序是“AS IS”的,没有任何明示或暗示的保证,比如默认的适销性、适用性这些保证都没有,关于本程序的功能和性能导致的风险都由用户自己承担,(你单位用我作品出了事,你可别想拉我当垫背的,大公司都不背这锅,你让我一个不挣你钱的背?)如果我这作品真有缺陷,你自己想办法搞定,你可以花钱买服务,这种公司又不是没有。

    摘录自卫Sir的《人话版GPL 2.0协议

    再比如在MIT里:

    本软件是“按原样“提供的,不附带任何明示或暗示的保证,包括没有任何有关适销性、适用性、非侵权性保证以及其他保证。在任何情况下,作者或版权持有人,对任何权益追索、损害赔偿以及其他追责,都不负任何责任。无论这些追责产生自合同、侵权,还是直接或间接来自于本软件以及与本软件使用或经营有关的情形。

    摘录自卫Sir的《开源程序员绝望毁库跑路的背后

    另一种是互联网服务的免责条款、云计算服务的免责条款、商用软件的免责条款。

    这里就不再摘录了,因为那种法律文本,往往都很长很长,在你使用之前,你几乎是不会去读完的。但是:你肯定已经点过“确定”或者“接受”按钮了。

    利益断裂

    一方面是供应链的延续性,另一方面是责任的断裂(免除)。于是,我们就会发现一个实际存在的现象:因为责任链条断裂,所以利益链条也断裂了。

    因为事实上软件出现问题之后,厂商可能损失的金额并不太高,所以在平时厂商也没有任何动力,投入足够的人力与预算,去确保他所用到的开源软件的供应链安全。

    前两天听到的一个课程,在介绍影响全球互联网产业的美国《通信规范法》230条款。互联网公司被免除了涉及用户生成内容的法律责任。一方面这些内容的存在不会损害互联网厂商的利益,另一方面,互联网厂商又可以出于“出于良善的信念”自行删除或管理这些内容。

    这当然大大降低了互联网厂商的法律风险与投入成本。再加上他们所用到的开源软件,又是无需支付费用的。这才带来了互联网产业的高速发展与如今的繁荣。

    冰山现象

    与此同时,我们还在开源社区里,积极的宣传礼物文化。“充裕性会使命令关系难以维持,会使交换关系变成无意义的游戏。”

    结果就变成了:开源世界的冰火两重天

    • 一座冰山是“开源项目”,海面之上看得到的开源项目,只是开源世界里的极小部分
      • 海面之下的开源项目,不仅重要,而且是海面上的开源项目,存在的基础
      • 但是,海面之下的开源项目,几乎没有商业价值,也没有投资前景
    • 另一种冰山是“开源贡献者”,海面之上的开源开发者,只是开源社区里的一小部分人
      • 他们的确做出了极大的贡献,也因此享受到了“礼物文化”
      • 海面之下的开发者,他们的贡献甚至被忽略了,社区的尊崇地位,几乎与他们无关

    四、生态责任

    当我们来谈开源软件的供应链风险,或者开源生态的问题时,首先需要达成一个共识:现在的开源生态,的确存在问题,而且是一个亟待解决的,严重的问题。

    基于这一共识,我们才能够来讨论,在这个生态之中,有哪些角色,各自有什么责任?

    开源开发者的责任

    大家应该都能承认,开源是一种软件开发的协作方式。对于某些人来说,开源甚至是一种娱乐方式。当然,如果有公司愿意雇佣你写开源代码,开源也是一种很不错的工作方式。但是,如果你希望将开源作为自己的生活方式,要么你家里有矿,要么你非常擅长兑换注意力。否则,难免会伤心失望。

    虽然我们都认为,开源是一种纯个人的行为,但是单纯的发泄不满。最多引发同情,却未必会得到支持,更是难以获取自己真正想要的结果。

    作为一个理性行动者,知道自己想要什么,也知道自己将要付出什么,才是一种负责人的做法。

    开源使用者的责任

    “只要足够多的眼球关注,就可让所有软件缺陷浮现。”,或者说“只要有足够的测试员及共同开发者,所有软件缺陷都会在很短时间内被发现,而且能够很容易被解决。”这句话被称之为Linus定律。现在我想要告诉这些开源软件的使用者,现在的开源软件已经越来越多了,眼球已经根本不够用了。

    假设“开源软件没有质量问题,不会给你带来安全风险,完全免费,拿来就可以用。”是一种完全不负责任的冒险。

    开源软件并不是“免费”的,任何使用开源软件的企业,都需要为自己的使用负责,要留出预算,要么找到合格的员工,要么找到合格的服务商,来帮你应对这些风险。

    开源基金会的责任

    一款开源软件,如果出现安全风险,这个开源软件的社区,应该要快速解决。如果这款开源软件被捐赠给某个开源基金会,那么这个基金会也有义务,为这个开源软件的质量负责。

    为什么?因为:你的品牌与声望,为这款开源软件背书,使得更多的厂商选择了它。那么:如果它内含风险,你的品牌与声望,就放大了这些风险。

    作为一个基金会,你收到的捐款,应该更多的投入到保障软件质量的工作中去!

    开源布道师的责任

    不要只是介绍“礼物文化”,不要反复的强调“Just for Fun”。不要仅仅宣传Linus眼球定律。在布道的时候,还需要介绍更多的真实世界的情况。

    政府的责任

    2022年1月13日,白宫就Log4j漏洞与公私实体召开了开源软件安全峰会。其中一名高级官员表示:“开源软件虽然加速了创新并推动了巨大的社会和经济效益,但其广泛使用且由志愿者维护的事实是重大的国家安全风险,正如我们正在经历的 Log4j 漏洞事件。它并非新问题。本次峰会我们将讨论如何解决这个问题,生效的解决方案是什么以及我们还能采取哪些行动来保护我们都在依赖的开源软件安全。”

    引用自《白宫和科技巨头在开源软件安全峰会上说了啥?

    在我看来,各个政府,应该都会有所行动才是。

    五、结束语

    这篇文章,已经太长了,引用一段我在《2021年中国开源年度报告》中的前言,作为结尾吧。

    在开源还只是一个小众群体的业余爱好时,几乎做任何事情,都是自由的。但是,在软件吞噬世界、开源吞噬软件的今天,开源技术,已经成为整个世界的基础设施之一。能力越大,责任越大。应用越广,风险越高。我们应该如何思考与保障开源供应链安全呢?应该如何建设更加健康的开源生态呢?在这样一种生态中,各方的责任又该如何界定呢?

    愿与诸位共同探索。

    更多相关内容
  • 开源软件成熟度评估及选型指南》内容主要来自近几年我们对开源软件评估与应用选型的研究成果,以及对优秀的开源软件的筛选整理。内容主要面向那些希望将开源软件部署在其应用环境中,或利用开源软件进行二次开发的...
  • 开源软件漏洞安全风险分析

    千次阅读 2021-02-20 18:05:27
    (二)开源软件可以随便使用 每一个开源软件都需要包含开源许可证去规定开源软件的使用范围和权利义务,开源软件并非完全没有限制可以随意使用,其最基本的限制就是开源软件强制任何使用和修改该软件的人承认发起人...

     聚焦源代码安全,网罗国内外最新资讯!

    作者:冯兆文、刘振慧 / 西北工业大学、中国航空工业发展研究中心

    一、引言

    2020年2月,国家信息安全漏洞共享平台(CNVD ) 发布了关于Apache Tomcat 存在文件包含漏洞的公告,该漏洞可以造成Tomcat上所有webapp目录下的重要配置文件或源代码等敏感数据的泄露,若同时存在文件上传功能,则可以进一步实现远程代码执行(RCE),直接控制服务器。

    Tomcat是Apache软件基金会下的一个重要的开源软件,在全球范围内被广泛使用,根据FOFA系统最新的测绘数据显示全球范围内有将近300万个Tomcat服务对外开放,根据腾讯T-Sec系统提供的数据显示,国内受影响的采用AJP协议的IP数量约是4万个。近年来,随着软件开源化趋势成为主流,开源软件已经成为软件供应链的重要环节,是软件生态不可或缺的组成部分。然而,一旦具有大规模用户基础的开源软件存在安全漏洞,势必会影响整个软件行业的安全。

    二、开源软件认识误区

    (一)开源软件等于免费软件

    开源软件指源代码可以被公众使用的软件,源代码公开是开源软件的主要特点之一。虽然大部分的开源软件可以免费获得,但是开源软件并不全是免费软件,仍有大量的开源软件对用户是收费的。

    开源软件要求软件发行时附带源代码,但并不意味着它就一定是免费的;同样免费软件也只是软件免费提供给用户使用,但并不一定是开源的。

    (二)开源软件可以随便使用

    每一个开源软件都需要包含开源许可证去规定开源软件的使用范围和权利义务,开源软件并非完全没有限制可以随意使用,其最基本的限制就是开源软件强制任何使用和修改该软件的人承认发起人的著作权和所有参与人的贡献。

    开源软件的许可证比较繁多而且复杂,经常遇到的开源许可证主要有GPL和BSD两种。如果不恰当地使用开源软件,未能充分理解和研究许可证规定的权利和义务,往往会埋下知识产权的风险隐患,甚至会被强制要求公开自家产品的私有代码。

    (三)开源软件比闭源软件安全

    开源不能作为判定软件产品安全与否的指标,开源并不意味着一定安全。事实上,近年来开源软件的安全性事件频发,也打破了人们传统观念中的“开源等于安全”的认知。根据Snyk公司发布的《2019 年开源安全现状调查报告》显示,“过去两年内应用程序的漏洞数量增长了88%,仅2018年包管理器(NPM )的漏洞数量就增长了47%”。

    开源软件具有开放、共同参与、自由传播等特性,一方面由于开发者自身安全意识和技术水平不足容易产生软件漏洞,另一方面也无法避免恶意人员向开源软件注入木马程序进行软件供应链攻击等安全风险引入行为。

    三、开源软件使用现状

    (一)绕不开、躲不掉的软件开源趋势

    当前,软件代码全部自行开发的公司几乎没有,大量企业通过使用免费的开源软件创建商用软件产品。根据安全与能力管理开源平台White Source发布的《开源漏洞管理现状》,只有极少数开发人员由于公司的政策要求而没有使用开源软件,96.8%的开发人员依赖于开源软件。用户往往以为自己购买的是商业软件,但实际上很多商业软件是基于开源做二次开发后以闭源形式提供给用户的。

    另据Gartner的调查显示,99%的组织在其信息系统中使用了开源软件,如图1所示。Sonatype公司对3000家企业的开源软件使用情况展开过调查,结果表明每年每家企业平均下载5000多个开源软件。随着开源技术快速形成生态,企业用户引入开源软件已成大势所趋,绕不开、躲不掉。

    图1 开源组件的使用频率

    (二)难以分辨商业产品中的开源成分

    从软件产品的使用者角度来看,企业购买的很多商业软件往往是开源软件的商业版或者发行版。如果用户没有明确地提出要求,商业软件供应商一般不会说明其产品中是否涉及开源组件,甚至对用户宣称是完全自主研发,导致用户的信息系统中被动地引入了开源软件。例如,号称自主开发的某某浏览器,经过专业测试后却发现其内核是开源软件Chrome。

    从软件产品供应商的角度来看,当前的软件开发模式中包管理器替程序员做了很多他并没有意识到的决定,使得商业软件中引入开源软件的数量难以做到完全准确的统计。更有甚者,部分企业在软件开发过程中,对开源软件的使用比较随意,管理者常常不清楚自己的团队在开发过程中使用了哪些开源软件,就连程序员自己也无法完整地列出开源软件使用清单。等到商业软件流转到用户手中后,系统的运维人员更是无法完全知晓正在运行的软件产品中是否包含了开源软件,包含了哪些开源软件,这些开源软件是否存在安全漏洞等,这就无形中给企业的信息系统带去了安全风险。

    (三)谁该站岀来为开源软件安全负责

    随着大型软件开发过程中,开源组件的占比越来越高,加之软件开发人员往往只关注自己开发的那部分代码的安全性,忽视了采用的开源组件的安全质量,最终导致成型软件产品的系统安全问题越来越多。根据Snyk公司2019年的调查报告,81 %的用户认为开发者应负责开源软件的安全性,如图2所示。

    图2 开发者该为开源软件安全负责

    大部分开源软件的使用者认为软件代码经过了很多机构和人员的测试和审查。然而,现实情况是并没有多少人对开源软件的代码安全进行测试,“心脏滴血”漏洞就是最好的例证。软件供应商对外售卖的商业软件中采用了开源软件,但安全责任并未从开源代码提供者转移到软件供应商,导致最终还是由用户承担了软件漏洞的风险。

    四、开源软件漏洞安全分析

    由于开源软件使用与获取的便利性,加之部分软件开发人员的安全意识淡薄,可能导致忽略开源软件带来的风险。总体来看,开源软件存在的安全问题比较严重,安全漏洞是主要的问题,软件供应链攻击呈现上升趋势,同时缺少系统的安全审查机制。

    (一)开源项目维护者的安全意识和技术能力参差不齐

    Snyk公司通过扫描数以百万计的Github代码库和程序包和对超过500个开源项目的维护者进行调查发现:只有8% 的开源项目维护者自认为有较高的信息安全技术,接近半数的开源项目维护者从来不审计代码,只有11%的维护者能做到每季度审核代码。另据Linux基金会发布的《开源软件供应链安全报告》显示,大量开发人员在开发软件时并未遵守应用程序安全最佳实践。开源项目维护者对代码安全质量重视不够和技术能力水平不足,是当前造成开源软件安全漏洞的主要原因。

    奇安信代码安全实验室发起“开源项目检测计划”,通过对3000余款使用比较广泛的开源项目进行检测,发现所有检测项目的总体平均缺陷密度为14.22/ KLOC,高危缺陷密度为0.72/KLOC。路径遍历、空指针相关、密码管理、跨站脚本XSS、注入类缺陷、XML外部实体注入、缓冲区溢出、资源管理、HTTP响应截断、日志伪造等是开源软件主要的安全风险。

    2019年,Unit42安全团队分析了 24000多个公开的GitHub开源项目,共识别出2328个硬编码密码,2464个API密钥和1998个OAuth令牌。对于关系社会安全稳定的企业单位,如银行等金融机构,信息系统中如果采用了上述的开源组件将会对社会经济安全造成恶劣的影响。图3中的这段代码[5]来自一个开源系统,它硬编码了用于支付的私钥,通过反编译可以直接查看相关配置数据。

    在密钥管理中最常见的错误,就是将密钥硬编码在代码里。一旦攻击者获得密钥,再通过审计分析支付系统的加密算法就可以破译所有的加密数据。

    functiiontoSubmit( $ pay m ent) I
    
    
    Smerld- St hi s->getConf( $ pay montCM_Ord c rldl/memb or .id'); 账户
    
    
    SpKey = S th is->getConKSp ay me nt[' M _Orderl di.' PmatcKcyR}:
    
    
    Skey = SpKey=r? 'afsvq2mqwc7j0ivukqexrzdQjqBhr:$p Key;
    
    
    Sret.uri = $this-^>callhackUrl:
    
    
    Sserver.url - $this^>serverCallbackUrl;
    

    图3 用于支付的密钥被硬编码在源代码中

    (二)越来越多的黑客组织开始盯上开源软件

    软件生产过程中,代码复用程度越来越高,各种开发包、核心库的应用越来越广泛。很多黑客组织也意识到了这一点,逐渐把目光放在了开源软件上,利用开源代码植入后门。这些代码的复用度越高,其中的后门影响范围就越广,从而实现对软件供应链上游的攻击。

    2019年8月,Webmin被爆存在高风险远程命令执行漏洞,根据Webmin开发人员的说法,该漏洞不是编码错误的结果,而是“恶意代码注入受损的构建基础架构中”导致的。Webmin是一个用于管理Linux和UNIX系统的基于Web的开源软件,互联网上大约有13万台机器使用Webmin。根据Shodan搜索引擎收集到的统计数据显示,有近10万台服务器曾运行过存在“后门代码”版本的Webmin软件,对整个互联网安全造成了巨大的影响。

    (三)开源软件缺少系统的代码安全审查机制

    美国最先认识到开源软件安全问题的重要性,早在2006年美国国土安全部就开展过“开源软件代码测试计划”,对大量开源软件进行安全隐患的筛选和加固。

    根据Snyk公司的报告显示,37%的开源开发者在持续集成(CI )期间没有实施任何类型的安全测试,54 %的开发者没有对Docker镜像进行任何的安全测试。

    开源代码中不断发现新的安全漏洞,而很多项目没有查找并修复漏洞的响应机制。开源项目的安全记录方式也没有明确的标准可以遵循,GitHub上排名前40 万的公共代码库中,仅2.4%的项目有安全文档。

    开源软件在实际的流通过程中,各个环节间缺乏系统的安全审查机制,部分企业内部也缺少必要的安全检测要求和规范,导致一旦底层开源组件出现安全漏洞,这些问题组件将传染给哪些商业产品、影响哪些业务领域,没人能给出一个准确的答案。

    五、风险控制措施

    (一)国家层面组织开展开源软件源代码检测工程

    随着开源趋势的不可逆以及开源软件在商业软件中占的比重越来越高,开源软件俨然已经成为软件开发的关键基础设施,因此开源软件的安全问题应该上升到国家安全的角度来对待。

    建议国家相关部门组织有业务基础的科研机构开展开源软件源代码检测工程,并将检测的成果以一种安全可控的方式向商业软件制造商及关键岗位的企业共享,尽可能降低开源软件漏洞对社会各行各业的影响。

    (二)企业层面建设开源软件安全治理体系

    企业应该建立开源软件安全治理体系,明确开源软件使用的安全准入条件,从软件开发阶段就建立开源软件使用的统一策略,实现开源软件引入和使用的标准化、规范化和合规化。

    对于明确需要引入的开源软件,在加强版本控制的基础上,一方面开展安全风险评估检测;另一方面持续跟踪相关的漏洞情报,时刻提防软件供应链攻击。

    (三)用户侧建立软件安全渗透测试机制

    从已经发生的软件供应链攻击案例来看,非常有必要开展软件上线前的渗透检测。通过采用良性的攻防渗透的方法、思路和手段,及时发现软件系统中存在的安全漏洞和隐患,降低新软件上线给系统带来的风险。

    企业在开展软件采购时,应向供应商明确要求提供软件中包含的开源组件,“用了什么,什么版本,软件来源”,并在验收时进行细致核查。

    (四)检测机构加强对安全产品中开源组件的检测

    信息安全产品是重要信息系统安全防护的重要组成部分,其自身的安全性将影响重要信息系统的安全。检测机构应要求软件供应商准确提供产品中包含的开源组件等信息,并针对开源组件开展专门的安全检测。这样一旦某个开源软件被爆出重大的安全漏洞,产品检测机构可以及时迅速地发布安全预警,并要求相关产品厂商尽快开展修复,甚至对修补不力的产品予以禁用处置。

    六、结语

    几乎每个商业软件都使用开源软件节省开发时间、降低公司成本、避免重复造车轮,但软件公司对这些代码的品质和来源却未必都给予了足够的关注和重视。

    开源软件已经成为网络空间的重要基础设施,应积极开展开源软件源代码检测工程,推动建设开源软件安全治理体系,形成软件安全渗透测试的长效机制。

    (注:本文原载于《保密科学技术》杂志2020年2月刊)

    推荐阅读

    2020年十大开源漏洞回顾

    GitHub 发布 Octoverse 开源软件安全趋势报告(超详)

    RiskSense Spotlight:全球知名开源软件漏洞分析报告

    BCS 2019议题分享|开源软件安全实践与思考

    题图:Pixabay License

    转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。

    奇安信代码卫士 (codesafe)

    国内首个专注于软件开发安全的

    产品线。

        觉得不错,就点个 “在看” 或 "赞” 吧~

    展开全文
  • 开源软件安全检查工具

    千次阅读 2022-01-06 10:56:32
    为了有效发现开源软件存在的安全问题,避免带病上线,在投入使用或发布上线时,需要遵循以下安全要求

    0x00 安全要求

    为了有效发现开源软件存在的安全问题,避免带病上线,在投入使用或发布上线时,需要遵循以下要求:

    1. 开源软件投入使用或者集成到系统进行部署发布前,须提交开源软件的安全检测报告,若报告里面存在严重(critical)或者高危(high)漏洞,则需要由应用开发部门对其进行升级修复或者加固后,方可进行部署发布
    2. 为了有效发现开源软件存在的安全问题,可以参考以下方式对开源软件进行安全检测,并提供安全检测报告。

    0x01 发布前安全检测

    1.开发完成时

    在IDEA等研发工作台集成,建议使用Snyk Vulnerability Scanner进行开源组件漏洞或者查询附录1:常见开源软件安全版本列表进行自查。

    目前Snyk Vulnerability Scanner插件最新版支持IDEA版本2020.2-2021.1,老旧版本或最新版本不一定支持具体,请参照插件官网及其介绍:Snyk Vulnerability Scanner - IntelliJ IDEs Plugin | Marketplace

    安装成功后,需要进行激活认证,直接在IDEA 进行激活

    如未能看到以上信息,需要手动激活,在Windows里面搜索并找到找到 snyk-win.exe,运行 snyk-win.exe auth  

    看到连接后,直接跳转到或者复制连接到浏览器,使用GitHub账号或者其他账号登录授权。如下图所示

     

     

     

    代码编写完成进行测试时,建议下载依赖包进行完整性调试后,再点击Run scan

    在结果当中,可以清晰看到

    1. 哪些第三方组件存在漏洞
    2. 这些漏洞的等级如CRITICAL、HIGH、MEDIUM、LOW等
    3. 漏洞修复版本、漏洞简要情况等。

     

    2.完成调试时

    当项目完成开发后或无GitHub账号或者登录授权出现问题导致Snyk Vulnerability Scanner不可用或者不使用IDEA进行开发等情况,可单独使用DependencyCheck,因为首次使用需要下载漏洞库,耗时会比较长,需要提前部署准备环境。

    GitHub - jeremylong/DependencyCheck: OWASP dependency-check is a software composition analysis utility that detects publicly disclosed vulnerabilities in application dependencies.

    Windows 平台参考使用命令行:dependency-check.bat --project aa -s D:\code\aa -o D:\aa.html

    3.发布上线时

    系统集成发布使用Jenkins平台,请在Jenkins启用dependency-check-plugin

    OWASP Dependency-Check | Jenkins plugin

    • 安装插件

    [系统管理]-[插件管理]-[可选插件]安装OWASP Dependency-Check Plugin和Static Analysis Utilities

    • 工具安装

    [系统管理]-[全局工具配置]-[Dependency_check安装]

    • 项目使用

    生成html格式报告

     0x03 其他参考工具

    1.开源组件安全扫描(OSS/SCA)开源工具

    对于软件开发过程中,需要对第三方组件进行漏洞检查方面,可以考虑到的开源产品:
    Dependency-Check(可以结合maven、Jenkins、sonar使用);链接:GitHub - jeremylong/DependencyCheck: OWASP dependency-check is a software composition analysis utility that detects publicly disclosed vulnerabilities in application dependencies.
    陌陌安全 MOSEC-X-PLUGIN 系列插件开源;链接:源海拾贝 | 陌陌安全 MOSEC-X-PLUGIN 系列插件开源 - 安全客,安全资讯平台
    snyk 可以扫描node.js nmp、ruby、java依赖中的漏洞,协议授权安全,多平台集成;链接:Snyk | Developer security | Develop fast. Stay secure.

    2. 开源组件安全扫描(OSS/SCA)商业产品

    对于软件开发过程中,需要对第三方组件进行漏洞检查方面,可以考虑到的商业产品:
    OSS方面的商业产品:BlackDuck
    FOSSology,开源授权协议合规检查产品
    snyk,可以扫描node.js nmp、ruby、java依赖中的漏洞,协议授权安全,多平台集成;链接:Snyk | Developer security | Develop fast. Stay secure.
    JFrog Xray,安全漏洞及依赖分析平台;链接:JFrog Xray - Universal Component Analysis - JFrog

    展开全文
  • 2021 年,从 160 万到 1.5 亿美元 ,开源软件迎来融资热潮。30 家新兴开源商业公司助力开源吞噬世界的趋势,那么让我们一起来认识认识 2021 年的新兴开源商业公司吧!

    2021 年,是开源软件领域忙碌的一年。从备受瞩目的 AWS 和 Elastic 关于开源协议的大战,到“史诗级” Log4j 漏洞冲击全球互联网,足以见得 2021 年开源届的不平凡。但同时,开源在不平凡中也逐渐渗透世界,越来越多的初创公司加入开源世界中,也推出了许多新的开源产品,吸引了风险投资家 (VC) 的资金。

    这些初创公司的加入助力了开源吞噬世界的趋势,那么让我们来看一看在过去一年中获得关注的新兴商业开源公司吧!

    Polar Signals:削减云费用

    Polar Signals 是适用于应用程序和基础设施的持续分析产品。它可以帮助用户节省资金、提高性能并更好地了解事件。连续剖析是一种以系统方式获取程序剖析(如 CPU、内存、I/O 等)的行为。

    图片: https://uploader.shimo.im/f/956keWa6AiEkMA2A.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Polar Signals 官网

    Polar Signals 于 2021 年 10 月正式上市,推出了一个名为 Parca 的开源项目。Parca 收集、存储和提供配置文件,以便随着时间的推移进行查询。它具有强大的多维数据模型、存储和查询引擎,专为分析数据而设计。与此同时,Polar Signals 从 Alphabet 的风险投资部门 GV 和 Lightspeed 中筹集了 400 万美元的种子资金,以准备在 2022 年推出商业托管产品。

    网址:https://www.polarsignals.com/

    Unleash:开源功能管理

    功能管理是持续发布/持续部署 ( CI/CD ) 流程的重要组成部分,它允许开发人员与一小部分用户逐步测试新功能、打开或关闭功能以及进行 A/B 测试,以深入了解什么是最有效的,而无需发布一个全新的版本。

    图片: https://uploader.shimo.im/f/rAasyPHbBPFQjhSS.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Unleash 官网

    Unleash 是一个开源平台,它承诺对其数据和功能管理部署具有更大的灵活性和控制力。该公司去年筹集了 250 万美元,以巩固其最近的增长,同时它已拥有了联想和美国制造巨头 Generac 等客户。

    网址:https://www.getunleash.io/

    Conductor:A GUI for Kafka

    需要实时数据的公司经常使用 Kafka,这是一个事件流平台,用于处理常见的商业案例,如处理电子商务支付、管理注册、在打车应用中匹配乘客和司机等。财富 100 强企业中大约有 80% 使用 Kafka 来存储、处理和连接他们所有不同的数据流。但 Kafka 需要大量的技术知识和资源来充分利用,这正是 Conduktor 能帮助它的地方,Conduktor 通过一个一体化的图形用户界面(GUI)来帮助大众,让大家通过桌面客户端能更容易地使用 Kafka。

    图片: https://uploader.shimo.im/f/lKokvAPzxRdd6c5b.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Conduktor 官网

    Conduktor 是一个功能齐全的原生桌面应用程序,可直接插入 Apache Kafka,为 Kafka 带来可见性的集群、应用程序和微服务的管理。Conduktor 去年在 Accel (美国风投公司)领投的 A 轮融资中筹集了 2000 万美元,以用在 Kafka 平台上 “简化实时数据的工作”。

    网址:https://www.conduktor.io/

    Scarf:衡量开源软件

    尽管开源软件目前正处在一个吞噬世界的趋势,但开源项目背后的开发人员和公司往往缺乏对其项目使用和分发的有意义的洞察力,而这个问题在 Scarf 这已得到解决。

    图片: https://uploader.shimo.im/f/Z7W7sTdTrc5Or2K1.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Scarf 官网

    Scarf Gateway 是一项开源服务,可为用户分发的容器和包提供中央访问点,无论它们托管在何处。Scarf Gateway 位于用户当前的注册表前面,将用户的下载流量无缝重定向到它,同时为用户提供注册表未共享的使用数据。用户可以更好地观察软件的使用方式,将项目的分布和数据重新置于用户的控制之中。它与 Google Analytics 类似,但它适用于开源软件。该公司在 2021 年 3 月份以 200 万美元的种子轮融资脱颖而出后,又筹集了 530 万美元。

    网址:https://about.scarf.sh/

    Rudderstack:利用客户数据

    客户数据平台 (CDP) 将客户分析的效用带给非技术人员(如营销人员),让他们能够从大量数据中获得关键信息。CDP 作为一个统一的客户数据库,建立在行为、交易和人口统计等实时数据上。

    图片: https://uploader.shimo.im/f/7SNxsygl4VtrPTwz.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:RudderStack 官网

    虽然有许多 CDP 可供选择,但 RudderStack 是一种以开发人员为中心的开源替代方案,它为公司部署 CDP 方面提高了灵活性。事实上,它宣传“数据仓库优先”,这意味着用户可以完全控制他们自己仓库中的所有数据。为了加速其增长,RudderStack 去年完成了由 Kleiner Perkins 领投的 2100 万美元 A 轮融资。

    网址:https://rudderstack.com/about/

    AtomicJar:集成测试

    AtomicJar 正在着手将 Testcontainers 商业化,这是一种流行的开源集成测试框架,用于谷歌、甲骨文和 Uber 等大公司。虽然单元测试是在孤立的情况下测试单个软件组件,但集成测试关注的是检查所有组件作为应用程序的一部分连接在一起时是否能正常运行。AtomicJar 于去年 3 月成立,已邀请多家企业参与私人测试版,以试用它在 Testcontainers 中增加的各种增强功能和扩展。为了提供更多帮助,该公司去年在种子轮融资中筹集了 400 万美元。

    图片: https://uploader.shimo.im/f/ZKA5hs2wXGQTIdbs.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:AtomicJar 官网

    网址:https://www.atomicjar.com/

    Bit:将微服务带到前端

    Bit 提供开源工具和云平台,以帮助前端开发人员协作和构建组件驱动的软件。在其核心部分,Bit 使公司更容易将前端开发分割称较小的功能和代码库,且允许团队独立开发功能,同时作为统一应用程序的一部分在不断整合。该公司在 11 月完成了 2500 万美元的 B 轮融资,同时它准备推出 Ripple CI 等新产品,该产品整合了来自组织中所有应用程序和团队的组件更改。Ripple CI 计划于 2022 年晚些时候推出。

    网址:https://bit.dev/

    Cerbos:管理用户权限

    公司通常需要在他们的软件中启用不同的用户权限,这些不同的权限可能因团队、部门和地理位置而异,因此公司需要能够设置自己的用户权限规则。身份和访问管理 (IAM) 领域已经有很多工具可以实现这一点,但是一家名为 Cerbos 的年轻公司正在着手简化软件开发人员和工程师管理用户权限的方式,同时解决无数的访问控制合规性要求由 GDPR 和 ISO-27001 等法规和标准驱动。

    图片: https://uploader.shimo.im/f/k046Iz8OcqnVRnKh.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Cerbos 官网

    Cerbos 正在采用一种自托管的开源方法来解决用户权限问题,这种方法可以跨语言和框架工作,并且可以让公司全面了解它如何处理用户数据。为了帮助在开源平台上构建商业产品,Cerbos 最近在种子轮融资中筹集了 350 万美元。

    网址:https://cerbos.dev/

    Chatwoot:客户参与

    Chatwoot 建立了一个开源平台,以挑战软件领域的一些主要参与者,包括价值数十亿美元的上市公司 Zendesk。核心 Chatwoot 平台构成一个共享收件箱,允许公司在一个集中的位置连接所有不同的沟通渠道,同时它还提供即时聊天工具、原生移动应用程序和无数开箱即用的集成。与其他开源公司一样,Chatwoot 承诺对数据进行更多的控制,并表示与现有的专利公司相比具有更强的可扩展性。同时为了实现该挑战目标,Chatwoot 在 2021 年 9 月的种子轮融资中筹集了 160 万美元。

    图片: https://uploader.shimo.im/f/cLcDYbmJUgt6uaN9.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Chatwoot 官网

    网址:https://www.chatwoot.com/

    Cal.com:开源 Calendly 替代品

    Cal.com 是 Calendly 的开源替代品。与 Calendly 类似,会议组织者使用 Cal.com 分享日程安排链接给受邀者,然后受邀者从一组时间段中进行选择,每个人都可以参与的时间段被添加到每个人的日历中。作为开源产品,使用 Cal.com 的公司还可以通过自托管保留对所有数据的完全控制权。此外,他们可以通过其白标产品管理 Cal.com 部署的整个外观。如果用户不想要自托管的麻烦,Cal.com 也可以作为完全托管的服务使用。

    图片: https://uploader.shimo.im/f/h6Km49Z5M3L3FKb7.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Cal.com 官网

    最近 Cal.com 已在种子轮融资中筹集了 740 万美元,其中支持者包括 YouTube 联合创始人和前首席执行官 Chad Hurley 等众多天使投资者和机构支持者。

    网址:https://cal.com/

    PostHog:开源产品分析

    PostHog 是一个以开发人员为核心的开源产品分析平台,也是 Amplitude 等流行产品分析平台的开源替代品。它能自动收集 Web 和移动应用程序中的事件以及行为指标,通过 API 和对数据的完整 SQL 访问提供完整的产品分析。该公司去年在包括 Alphabet 的风险投资部门 GV 在内的知名支持者中筹集了 1500 万美元的 B 轮融资,同时它还推出了一项新的自托管计划,让企业在他们的基础设施上可以免费跟踪自己产品的参与情况。

    图片: https://uploader.shimo.im/f/LmAIEQulnNmEbwj1.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:PostHog 官网

    网址:https://posthog.com/

    Hoppscotch:开源 API 开发

    Hoppscotch 是一个社区驱动的开源 API 开发生态系统。API(应用程序编程接口)是将大多数现代软件结合在一起的粘合剂,它们为销售和营销团队提供数据;为银行和医疗保健应用程序提供隐私;为用户的健身追踪应用程序提供地图。

    Hoppscotch 平台包括几个集成的 API 开发工具,面向工程师、软件开发人员、质量保证 (QA) 测试人员和产品经理。为了实现商业化,Hoppscotch 最近已从包括 WordPress.com 母公司 Automattic 和 OSS Capital 在内的众多投资者那里筹集了 300 万美元的种子轮融资。

    网址:https://hoppscotch.io/tw

    Element:开源团队沟通

    Element 是 Slack 的开源替代品,由 Matrix 背后的团队,旨在将其带入主流。Matrix 类似于电话网络或电子邮件,它是一个可互操作的通信系统,不会将人们锁定在一个封闭的生态系统中。而 Element 是建立在 Matrix 之上的,所以它本质上是促进更广泛的 Matrix 网络发展的催化剂。为了帮助其进一步进入商业领域,Element 去年在 B 轮融资中筹集了 3000 万美元。

    图片: https://uploader.shimo.im/f/Pmg5cCKHqktFwrsS.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Element 官网

    网址:https://element.io/

    MindsDB:为企业数据库提供核心

    MindsDB 是一个预测平台,它使数据库变得智能并且机器学习易于使用。MindsDB 能让公司使用标准 SQL 命令直接从他们的数据库中进行机器学习驱动的预测,并在他们选择的应用程序或分析平台中将其可视化。MindsDB 有许多用例,例如预测客户行为、提高员工保留率、信用风险评分和预测库存需求等。

    图片: https://uploader.shimo.im/f/sQWD7Q3r8qGDXH7w.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:MindsDB 官网

    MindsDB 有三种不同的版本,包括一个可以在任何地方部署的免费和开源版本。为了进一步开发其产品并商业化,MindsDB 最近在种子轮融资中已筹集 375 万美元,并宣布与主要数据库品牌建立合作伙伴关系,包括 Snowflake、SingleStore 和 DataStax。

    网址:https://mindsdb.com/

    TerminusDB:开源图形数据库

    TerminusDB 是一个开源知识图谱和文档存储、用于构建协作应用程序的工具包。它用于构建版本化数据产品。它是一个在架构上类似于 Git 的原生版本控制数据库。它列在 DB-Engines 上。TerminusDB 提供了一个通过 JSON 交换格式构建的文档 API。

    图片: https://uploader.shimo.im/f/aBxFWsfIUZKdov0p.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:TerminusDB 官网

    TerminusDB 在种子轮融资中筹集了 430 万美元,用于构建所谓的互联网“知识协作基础设施”,将开源图形数据库和文档存储与商业化、基于云协作的 TerminusHub 相结合。同时该公司还在开发基于云的 TerminusDB 版本。

    网址:https://terminusdb.com/

    Firebase 的开源竞争对手

    随着后端即服务 (BaaS) 市场的蓬勃发展,一些开源新贵开始挑战像 Firebase 这种由谷歌技术驱动的大公司。

    Nhost

    Nhost 是用于 Web 和移动应用程序的无服务器后端。借助 Nhost,公司可以自动化整个后端开发和云基础架构,包括文件存储、数据库、用户身份验证、API 等。该公司去年在包括 GitHub 创始人 Scott Chacon 和 Tom Preston-Werner 在内的众多知名投资者中筹集了 300 万美元。

    图片: https://uploader.shimo.im/f/C8oNrKQcmajraAfB.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Nhost 官网

    网址:https://www.nhost.io/

    Appwrite

    Appwrite 是一种用于 Web 和移动应用程序开发的自托管 BaaS 解决方案。它包括用户身份验证、文件存储、用于存储和查询数据的数据库、API 管理、安全和隐私等。该公司去年融资了 1000 万美元,准备在 2022 年推出其云产品。

    图片: https://uploader.shimo.im/f/ryNLmLwP4W2DeUyM.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Appwrite 官网

    网址:https://appwrite.io/

    Supabase

    如 Nhost 和 Appwrite 一样, Supabase 将自己定位为开源的 Firebase 替代品,它允许开发人员在几分钟内创建一个完整的后端。该公司在 2021 年 9 月份完成了3000 万美元的 A 轮融资。
    网址:https://supabase.com/

    数据集成

    企业通常有大量数据分散在 CRM、营销、客户支持和产品分析等工具中。虽然访问数据不是问题,但从不同位置和格式的存储数据中获得有意义的分析才是问题。这意味着企业必须将所有数据组合在一个集中位置,并将其转换为一种易于分析的通用格式。

    实现这一目标的过程是:“提取、转换、加载”(ETL),这需要在数据到达中央数据仓库之前对数据进行转换。目前还有一种替代方案:“提取、加载、转换”(ELT),允许公司在原始数据进入仓库时按需转换。虽然这两种方法各有利弊,但为了解决更广泛的数据整合问题,许多开源公司开始涌现出来。

    Airbyte

    Airbyte 是一个用于构建 ELT 管道的开源数据集成平台,整合用户数据仓库、数据湖和数据库中的数据。2021 年 3 月,Airbyte 在种子轮融资中筹集了 520 万美元,而后迅速跟进了 2600 万美元的 A 轮融资和 1.5 亿美元的 B 轮融资,目前公司的估值为 15 亿美元。

    图片: https://uploader.shimo.im/f/7cymYiSyJnUr5yNa.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Airbyte 官网

    网址:https://airbyte.com/

    Dbt Labs

    Fishtown Analytics 是开源“分析工程”工具 Dbt(数据构建工具)背后的公司,该公司更名为 Dbt Labs。Dbt Labs 是开源分析工程工具的开发商,其使命是帮助分析师创建和传播组织知识。分析工程是指在原始数据进入数据仓库后获取原始数据并为分析做准备的过程,这意味着 Dbt 有效地充当了 ELT 中的“T”。同时它在 C 轮融资中以 15 亿美元的估值筹集了 1.5 亿美元。

    图片: https://uploader.shimo.im/f/M2RkXFJhpPcrSqUN.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Dbt Labs 官网

    网址:https://www.getdbt.com/dbt-labs/about-us/

    Estuary

    Estuary 是一个开源软件,允许将公共数据发送到 Filecoin 网络上,以便让任何地方的人对数据进行检索。 Estuary 加入竞争的原因是它拥有完全托管的 ELT 服务,建立在开源 Gazette 项目之上,结合了“批处理”和“流处理”数据处理管道的优势。该公司去年在种子轮融资筹集了 700 万美元。
    网址:https://www.estuary.dev/

    Meltano

    Meltano 是一个开源 DataOps 平台,它为数据生命周期汇集了一流的开源工具和技术,它拥护 Singer 的标准及其社区维护的开源提取器和加载器库,并利用 DBT 进行转化。GitLab 于 2018 年首次推出 Meltano,经过多次迭代最终成为数据集成和转换的开源平台。然而在去年,GitLab 将 Meltano 剥离为一个独立的业务,并得到了包括 Alphabet 的 GV 在内的主要投资者的支持。

    网址:https://meltano.com/

    Preset

    Preset 由 Apache Superset(和 Airflow)的创建者 Maxime Beauchemin 创立。Superset 是一个数据探索和可视化平台,Preset 在该平台上提供企业托管、安全、合规、治理等服务。该公司去年推出了完全托管的云服务测试版,并在 B 轮融资中筹集了 3590 万美元。

    图片: https://uploader.shimo.im/f/pY1JuuJtnAzN8LAq.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Preset 官网

    网址:https://preset.io/

    Treeverse

    Treeverse 是一款基于开放世界、奇幻和科幻的 MMORPG(大型多人在线角色扮演游戏),具有动感十足的 MOBA 风格战斗系统。构成不同数据集的 PB 级的数据湖可能会变得笨重且难以管理,这就是年轻的初创公司 Treeverse 开始的原因。它有一个名为 LakeFS 的开源平台,使企业能够以类似于管理代码的方式管理他们的数据湖——这包括版本控制和其他类似 Git 的操作,如所有数据和代码的分支、提交、合并、还原和完全再现性。该公司去年在 A 轮融资中筹集了 2300 万美元。

    网址:https://treeverse.io/

    Cube Dev

    Cube Dev 是一家专注于开源、分析、数据库和开发工具领域的计算机软件公司,它是开源“分析 API 平台” Cube.js 背后的公司和核心开发团队,该平台为开发人员提供后端基础设施,以将其聚合和转换的数据连接到最终用户的可视化。它有助于绕过使数据变得有用所涉及的许多技术障碍,如 SQL 生成、缓存、API 设计和安全性。在 2021 年 7 月,Cube Dev 在 A 轮融资中筹集了 1550 万美元,用于将 Cube.js 商业化,其中包括推出开源项目的云托管 SaaS 版本。

    图片: https://uploader.shimo.im/f/CmWSRDNkVdWEzIYO.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Cube Dev 官网

    网址:https://cube.dev/

    王者 Kubernetes

    自 2014 年谷歌开源该项目以来 ,Kubernetes 的兴起凸显了更多行业对容器化应用程序的推动。这一趋势一直持续到去年,最近发布的云原生开发状况报告显示,目前 31% 的后端开发人员使用 Kubernetes,同比增长 67%。与几乎所有其他热门开源项目一样,Kubernetes 正在催生许多商业公司。

    Nirmata

    Nirmata 是一个企业级 Kubernetes 运营和管理平台,旨在降低复杂性并推动 DevOps 敏捷性,它为基于云的应用程序容器化的 Kubernetes 管理和部署提供了完整的解决方案。该公司是 Kubernetes 的开源政策引擎 Kyverno 的创建者和主要贡献者,去年它筹集了 360 万美元的前 A 轮融资,以“充分利用 Kubernetes 原生政策管理的全部潜力”。

    图片: https://uploader.shimo.im/f/KDrQKZPPLlu9glg2.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Nirmata 官网

    网址:https://nirmata.com/

    Rafay Systems

    Rafay Systems 是一个统一 Kubernetes 基础设施和应用程序生命周期管理的平台,汇集了跨越自动化、安全性、可见性和治理的能力。该公司去年在 B 轮融资中筹集了 2500 万美元。

    图片: https://uploader.shimo.im/f/byZpayVXLfskj8CW.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Rafay Systems 官网

    网址:https://rafay.co/

    Loft Labs

    Loft Labs 承诺为公司中的所有开发人员提供自助式 Kubernetes 访问权限。该公司去年在种子轮融资中筹集了 460 万美元,目前已开源了几个 Kubernetes 项目,其中最重要的是其商业产品 Loft,它使企业能够在整个工程人员中 "扩大自助访问 "Kubernetes。

    网址:https://loft.sh/

    Kubermatic

    与 Loft Labs 类似,Kubermatic 面向具有自助服务 Kubernetes 平台的开发人员,用于在任何基础设施中部署他们的集群,并使他们能够从单个仪表板集中管理所有工作负载。该公司去年在种子轮融资中筹集了 600 万美元。

    图片: https://uploader.shimo.im/f/IJS1Pj0M3PfYnyDs.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Kubermatic 官网

    网址:https://www.kubermatic.com/

    Akuity

    Akuity 去年以 450 万美元的种子资金脱颖而出,成为“用于 Kubernetes 应用程序交付的 Argo 企业”。Akuity 由 Argo 的共同创建者创立,Argo 是一个流行的开源项目,用于协调 Kubernetes 原生应用程序的交付,使用者包括 Google、Tesla、GitHub 和 Intuit 在内。

    图片: https://uploader.shimo.im/f/0Mvhgzs9LDSqW9BC.png!thumbnail?accessToken=eyJhbGciOiJIUzI1NiIsImtpZCI6ImRlZmF1bHQiLCJ0eXAiOiJKV1QifQ.eyJhdWQiOiJhY2Nlc3NfcmVzb3VyY2UiLCJleHAiOjE2NDIwNjUzNjgsImciOiJxWUpxS3FRclBnVDZkZ3dLIiwiaWF0IjoxNjQyMDY1MDY4LCJ1c2VySWQiOjc0MjE1Mzg0fQ.r1briAz8vA-a3Byn-zJZA0EaiNbNVH5zWGNqLnQ5I5I

    图片来源:Akuity 官网

    网址:https://akuity.io/

    参考链接:https://venturebeat.com/2022/01/03/30-startups-that-show-how-open-source-ate-the-world-in-2021/

    展开全文
  • Qt编写的知名的开源软件汇总

    千次阅读 2021-10-30 11:56:55
    用于可视化和医学图像计算的免费开源软件。 AcetoneISO 镜像文件挂载软件。 Adobe Photoshop Album 图像组织应用程序。 Arora 跨平台的开源网页浏览器。 Autodesk MotionBuilder 专业3D角色动画软件。 Autodesk ...
  • 开源软件

    千次阅读 2016-07-10 15:13:44
    简述开放源代码软件(Open Source Software),简称:OSS或开源软件。这种“公开”正是促使人们使用它的原因,因为这意味着用户可以自由的使用、复制、散发以及修改源码(补充漏洞,按具体需求定制功能)。与其相对...
  • 第1篇 了解开源软件 第1章 开源软件概述 1.1 开源软件的理解 1.2 开源软件的定义 1.3 开源软件定义的意义 1.4 开源软件和其他类型软件的比较 第2章 开源软件的历史与未来 2.1 开源软件的历史 2.2 开源运动背后的...
  • 自由软件、开源软件、免费软件之间的区别

    万次阅读 多人点赞 2019-07-27 20:00:29
    很多人经常把开源软件和自由软件混为一谈,也常常会有人把开源软件和免费软件这两个概念混淆在一起,其实当我第一此站在HUSA的讲台上的时候,自己对开源的了解,也只是狭隘的定位为:免费的,公开源代码的。...
  • 自由软件、开源软件、免费软件,这三个业内最常见出现的软件术语,想必您很难用一句话就说出它们之间的区别。本文将重点和您讨论这三个术语之间的主要区别,以便您在构建技术类产品时,能够做出正确的选择。 自由...
  • 为了更好地展示国内开源现状,探讨国内开源趋势,激励国内开源人才,促进国内开源生态完善,开源中国每年会在年底举办一年一度的最受欢迎中国开源软件评选活动,该活动目前已成功举办五届。 由...
  • 知乎高赞:中国有什么拿得出手的开源软件产品? 在知乎上,有个问题问“中国有什么拿得出手的开源软件产品(在 GitHub 等社区受欢迎度较好的)?” 事实上,还不少呢~ 本人于2019.7.6进行了较为全面的回答,对...
  • PART ONE序言2021年12月19日,云启资本合伙人、腾源会导师陈昱在由腾讯云 TVP 联合腾源会发起的闭门会上进行了《开源软件商业化路径和投资策略》的主题演讲。云启资本曾成功发掘并...
  • 好汉一问:什么是开源软件?什么是自由软件?他们就是免费软件? 很多人经常把开源软件和自由软件混为一谈,也常常会有人把开源软件和免费软件这两个概念混淆在一起,其实当我第一此站在HUSA的讲台上的时候,自己对...
  • 什么是开源软件

    千次阅读 2021-07-25 08:47:38
    什么是开源软件开源软件就是把软件程序与源代码文件一起打包提供给用户。用户既可以不受限制地使用该软件的全部功能,也可根据自己的需求修改源代码,修改完之后再发布出去。 用户具有使用自由、修改自由、重新...
  • 由于对参选项目设置了分类竞争,可以看到今年获得年度最受欢迎中国开源软件的项目更加多元化,涵盖了基础软件、开发框架和基础组件、开发工具与应用软件等领域,下边来看看每一个获奖项目。... 基于参数服务器理念的...
  • 1开源软件安全现状 2开源软件安全实践 3思考与展望;1开源软件安全现状 2开源软件安全实践 3思考与展望;开源软件数量飞速增长;Gartner99%的组织在其IT系统中使用了开源软件 Gartner现代软件大多数是被组装出来的不是...
  • 开源软件 安全风险Open source software is very popular and makes up a significant portion of business applications. According to Synopsys, 99% of commercial databases contain at least one open source ...
  • 开源软件管理调研报告

    千次阅读 2020-04-03 15:08:54
    开源软件管理调研报告 作者微信:stray_bird_holy 开源一方面可以突破技术壁垒,推动技术创新,另一方面也面临知识产权、安全、技术运维等一系列与开源相关的风险问题。商业开源软件的模式其实并不难理解,也就是...
  • The Architecture of Open Source Applications(开源软件架构),其中包含了中文和英文版,整理之后免费分享给大家,中文版由图灵社区翻译http://www.ituring.com.cn/minibook/19 本书是开源应用的必读资料之一,介绍...
  • 似乎提到开源软件,往往给人一种错觉——我拿到了软件源代码,接下来我是不是可以大刀阔斧为所欲为?其实非也!开源软件不等于免费软件,开源也不等于免费。“Ctrl+C/V 撸起键盘就是干,开源协议要先看”,在你决定...
  • 开源软件的法律风险及防控

    千次阅读 2019-08-21 14:01:03
    什么是开源? 如果企业需要开发一款软件产品(如App)应该怎么办? 是程序员们从零开始一行一行的编写代码吗?这听起来似乎不现实。 大部分企业在开发软件时,通常会选择对他人已经编译好的代码进行修改,最后形成...
  • IaaS开源软件之zstack(OSC中国开源项目的TOP30) 全新的开源IaaS国产开源软件—zstack曾于2020年在OSC(中国最权威,最大的开源项目评选中斩获TOP30。 IaaS(基础设施即务)提供传统的计算能力服务以及存储服务,是最...
  • ——软件开源与软件专利保护》一文中,介绍了开源软件与相关软件专利权可以并行不悖,开发者将发布或改进的技术方案申请专利是其权利,但专利权的实施因不同的开源许可证可能存在不同。如GPL规定了存在专利权的情况...
  • Log4j2危情分析之浅谈开源软件安全、软件供应链安全与DevSecOps实践
  • 开源软件如何赚钱?

    万次阅读 2017-11-14 08:43:54
    所谓开源就是开放源代码。源代码是软件的本质,所有程序都有源代码,就像人类的语言一样,有词汇和语法。源代码可以说是一个作者的主要命脉了。一般软件作者将软件的源代码开放出来,以保障软件用户自由使用及接触源...
  • 开源软件的几种版权

    千次阅读 2018-03-15 15:16:25
    自由/开源软件是一种有版权的软件,自由/开源软件是一种得到许可的软件。自由/开源软件许可协议(或许可证)是其版权实施的延伸。  自由/开源软件采用“左版”(CopyLeft)的概念,虽然其“版权”也应考虑到保护“作者...
  • 开源软件使用的风险和应对方法

    千次阅读 2021-05-25 20:13:17
    随着软件系统研发速度的日益敏捷,世界上出现了大量可复用的开源软件。对于个人来说,使用开源软件构建一个非商业的软件系统是没有太多限制的,但对于一个企业或公司来说,软件系统是对外售卖或者对外提供服务的,是...
  • 开源软件是提高生产力和软件质量的关键因素,正确的使用开源软件,可以提高产品的竞争力,但是在产品功能不断更新、开发周期不断缩短的压力下,很多公司难以有效的对代码中的开源软件进行有效的识别和管理。...
  • 2022年,你还要做开源软件么?

    千次阅读 2022-01-17 09:29:30
    「关注」并「星标」我们, 每天接收关于亚马逊云科技的最新资讯! 不平凡的2021已经悄悄走远:依旧蔓延的疫情一直...你可能会好奇,既然这么多人用,为什么开源软件仍旧没有获得资金?目前开源环境的生态是怎么样...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 857,431
精华内容 342,972
关键字:

开源软件