恰当地管理开源,让软件更加安全
创始人
2024-03-01 13:59:39
0

越来越多的公司意识到,要想比对手率先开发出高质量具有创造性的软件,关键在于积极使用开源项目。软件版本更迭要求市场推广速度足够快,成本足够低,而仅仅使用商业源代码已经无法满足这些需求了。如果不能选择最合适的开源软件集成到自己的项目里,一些令人称道的点子怕是永无出头之日了。

然而,使用开源软件也要面对新的挑战。一方面,你的团队从开源软件中汲取力量变得更快更灵活,另一方面,开源代码在传播过程中是否经历了不可控修改、安全性该如何保障的问题也日益凸显了出来。

OpenSSL Heartbleed 漏洞已经证实。如果你不了解你的应用程序或者已发布的产品中到底运行着什么代码,那你就可能面临需要大量时间才能解决的潜在安全威胁。相反,如果对项目里什么地方使用了什么版本的开源组件都了如指掌,一旦遇到漏洞,响应速度和解决速度都会是千金不换的。

安全性藏在代码内部

Heartbleed bug 让开发人员和企业知道了软件安全性有多重要。专利软件和开源软件哪个更安全?这场广泛受到关注的讨论并没有一个简单的结论。现实情况是,不论是专利软件还是开源软件,它们绝大部分都有缺陷,其中一些缺陷还威胁到软件的安全性。

如果开源软件被内部代码、专利代码引用了,那开发人员将不得不面对更复杂的安全性挑战。要是管理授权许可的手段再不恰当,那想追溯一段代码的来源和引用就得把相关人员全都牵连进来,难度必然急剧增加。

要想切实了解你软件的潜在漏洞,首先你得理解以下三件事儿:

  1. 你的产品和应用程序里现在跑着什么代码?
  2. 那些开发前期使用的代码,开发人员是从哪儿弄来的?
  3. 开发后期使用了哪些组件,这些组件有哪些地方要在部署之前充分测试?

现状怎么样

所有企业都应该对比常见漏洞数据库——比如美国国家标准与技术学会的国家漏洞数据库(NVD)——来检查他们的代码。NVD 等组织追踪并收集了各种安全漏洞的信息以及排名,这些数据可以协助企业确保代码及时更新,规避安全风险。

如果你从没对照漏洞数据库检查过你的代码,那你可有的忙了。好在我们有个可以利用这些数据库定期自动识别开源安全漏洞的工具,这个工具还可以警示和追踪项目中使用的受影响的开源组件并提供必要的解决方案。

持续监控你的代码库能保证及时发现未知代码、了解代码来源、授权信息不会过时、安全漏洞一旦出现就能第一时间掌握并寻求解决方案。如果你的公司有详细的代码清单,你就能轻而易举地找到漏洞所在并及时修复,确保你的业务和客户不会面临危险。

预防未来的问题

相当多开发人员青睐开源软件是因为开源软件易于获得且免费,他们不用为此再走采购流程。目前来看,尽管很多开源组织都有自己的使用策略或使用指引,他们却并没有强制使用者遵守,也没有追查使用者是否遵守。知道你的组织将会使用哪些开源代码、这些代码是否有授权、你的组织中什么地方引用了它们是非常重要的。

你知道你用了什么代码之后,就该好好整理它们了。你可以实现一个贯穿整个开发流程的管理框架,这样你可以掌握每段代码的详细信息,不用再在诸如代码更新了没有、什么时候更新的以及在哪儿更新的这类问题上浪费时间。手工管理这些信息不大可能,所以一流公司都使用自动化代码管理和审查工具。

虽然每个公司、每个开发团队都面临各不相同的问题,但实践证明下面几条安全管理经验对使用开源软件的任何规模的组织都有意义:

  • 自动批准和分类 - 捕捉并追踪开源组件的相关属性,评估许可证合规性,通过自动化扫描、批准和使用过程来审查可能出现的安全漏洞。
  • 维护最新代码的版本 - 评估代码质量,确保你的产品使用的是最新版本的代码。
  • 评估代码 - 评估所有在使用的开源代码;审查代码安全性、授权许可、列出风险并予以解决。
  • 确保代码合法 - 创建并实现开源政策,建立自动化合规检查流程确保开源政策、法规、法律责任等符合开源组织的要求。

关键是,要让管理流程运作起来

随着软件飞速渗入各行各业,开放源代码将在创新发展的道路上扮演越来越重要的角色。为了规避安全问题给日益复杂的环境带来的风险,企业必须运行起一套管理其组织中开源代码使用情况的流程,构筑一个定期对照漏洞数据库检查代码并快速消除风险的流程。

作者 Bill Ledingham 是 Black Duck Software 公司的首席技术官(CTO)兼工程执行副总裁

*作者 Bill Ledingham 是 Black Duck Software 公司的首席技术官(CTO)兼工程执行副总裁。在这之前,Bill 是 Verdasys 的首席技术官,领导信息和网络安全团队为全球顶尖的 2000 家公司和政府机构提供敏感信息的安全保障。 Bill 曾经与人合伙创办过四家公司,现在活跃于波士顿创业社区,作为 CommonAngels 的合作伙伴和投资人迄今已有 6 年历史。


via: http://www.linux.com/news/software/applications/782953-how-to-achieve-better-security-by-proper-management-of-open-source

作者:Bill Ledingham 译者:sailing 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

相关内容

名雕股份成立科技新公司,含...
企查查APP显示,近日,深圳市鲸跃云科科技有限公司成立,注册资本1...
2026-05-27 21:47:16
华为星河AI网络,重构酒店...
文/乐居财经 许淑敏 站在2026年数智化发展的关键节点,AI技术...
2026-05-22 15:16:59
Fedora决定停用Dee...
IT之家 5 月 20 日消息,Fedora 工程与指导委员会(F...
2026-05-20 18:27:51
让企业安全用好AI,中国移...
作者:闫滟 来源:科技最前线 (kejizqx) 大模型落地政企市...
2026-05-10 17:06:50
教育部支持高校辅导员在职攻...
日前,教育部启动2026年高校思想政治工作骨干在职攻读博士学位专项...
2026-05-09 16:19:30
美政府考虑下达AI安全行政...
钛媒体App 5月9日消息,相关报道援引知情人士透露,美国政府准备...
2026-05-09 16:16:28

热门资讯

为什么计量 IT 的生产力如此... 在某些行业里,人们可以根据一些测量标准判定一个人的生产力。比如,如果你是一个零件制造商,可以通过一个...
硬核观察 #885 苹果 AR... 苹果 AR 眼镜被无限期推迟据报道,由于技术上的挑战,苹果公司已经无限期推迟了其轻型增强现实(AR)...
8 个提升你的隐私防护的开源密... 使用一些顶级开源密码管理器,确保你的登录凭证安全无虞。密码管理器是一项非常有用的实用程序。在你想寻找...
8个有趣的Linux提示与技巧... 我们时不时给你带来关于Linux的提示与技巧。和这个系列保持一致,这里有8个我们从读者收到最有趣的提...
PHP最佳实践(译) 简介PHP是一门复杂的语言,经过多年折腾,使其不同版本之间高度不一致,有时还有些bug。 每个版本都...
值得收藏的 27 个机器学习的... 机器学习 ( Machine Learning ) 有很多方面,当我开始研究学习它时,我发现了各种各...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
2020 年的 GitHub ... 距离 2020 年结束只剩下区区 24 天,我们即将结束魔幻的 2020 ,迎来新的一年,新的一年或...
开源新闻速递:openSUSE... 今日关注openSUSE 项目组的 Dominique Leuenberger 在他的周报中说:“这...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...