墨菲安全是一家专注于软件供应链安全管理的科技公司,能力包括代码安全检测、开源组件许可证合规管理、云原生容器安全检测、软件成分分析(SCA)等,丰富的安全工具助您打造完备的软件开发安全能力(DevSecOps)。公司核心团队来自百度、华为等企业,拥有超过十年的企业安全建设、安全产品研发及安全攻防经验。

一、墨菲安全受邀参加腾讯安全云鼎实验室公开课分享

2022年4月27日,墨菲安全受腾讯安全云鼎实验室邀请为腾讯的工程师们分享软件供应链安全解决方案,软件供应链由多方、多流程、多角色构成,供应者所带来的威胁可以直接间接的影响使用者和企业,因此软件供应链安全与每一个环节的参与者息息相关。

从Log4j漏洞到node-ipc组件投毒,供应链安全事件爆发的频次和影响面都在持续扩大,供应链安全已经成为企业开展经营活动不得不面对的一个隐患,也是所有安全厂商致力于要解决的问题。开源是更安全还是更不安全?

本次分享内容由墨菲安全联合创始人欧阳强斌、腾讯安全云鼎实验室高级安全研究员王福维,以“软件供应链安全威胁的前线观察与行业方案”为主题,分享了来自软件供应链的典型安全威胁,要解决这些问题面临着哪些挑战,以及业界不同组织在试图解决这些安全威胁中作出的解决方案。

二、软件供应链安全威胁的前线观察与行业方案的分享概述

王福维老师从以下几个方面分享了来自软件供应链的真实威胁:
软件供应链的相关角色包括软件的供应者、软件的消费者、平台方,三个角色之间没有绝对的界限并相互作用,其实漏洞真实的威胁远远不止0day这么简单,而软件供应链对于开源组件的漏洞造成的风险具有增强效应,即随着时间的延长会造成漏洞难以确认、修复起来费时费力、影响受众翻倍且难以分析和管理。

软件供应链安全的核心问题在于要破除一切无条件信任,同时具备对“意图”的感知;要审视一切信任,对所有依赖的上游、使用的平台工具,以攻击者视角分析,及至假定面对的是国家对抗力量。需要加入可控可信平台,后门检测技术要基于一切三方不可信原则;开源协作建设要以生态的方法解决生态的问题,在自主可控平台上打造自主接入、可复制的扫描能力共建,并共享信息。

最后,面向供应链威胁,预判更多攻击来向、研究解决方案,整合创造新技术,腾讯安全一直在探索,生态问题期望更多生态声音、行业力量,期望更多具备创新思维和商业化目标的参与方发声。

欧阳强斌从以下几个方面详细分享了安全威胁背后的挑战与行业解决方案 :
随着软件行业以及开源生态的发展,开源软件已经成为了整个数字世界的基石。软件供应链升级使开发过程越来越简单和低成本,有数据统计从2015年到2019年,开源代码的使用占比增长了一倍,现在已经到了78%的水位。平均每一个项目可能会引入超过100个开源组件,这其中可能有20%-30%的组件都存在不止一个漏洞,63%的开源项目如果直接拿来商用,会存在许可证侵权的风险。

而在过去的两年时间,从软件的生产到使用各个环节都已经出现了各种各样的安全事件。由于开源技术应用广泛、国际形势复杂、软件供应链的多样化,软件供应链攻击次数急剧上升,危害急剧加大。而黑客针对通用软件供应链的攻击成本低,攻击覆盖效果好,可通过窃取数据、勒索、挖矿等多种获利方式 。因此国家对软件供应链安全的治理力度也在不断增强。

综合来看,供应链安全目前主要面临如何准确识别资产、风险如何检测或预防、企业治理低成本落地三大挑战。从业界来看,huntr、debricked等初创公司推出了创新的产品,openSSF基金会在积极推进sigstore、scoreboard等解决方案,NPM、docker等包管理增强管控机制,CVE、SPDX这些标准也在不断演进。总体来说开源软件供应链是处在一个安全风险高、来自攻击者和国家监管的关注度都很高的状态。

一个好的解决方案,需要完善的工具链支持,以及丰富的组件、漏洞等知识数据才能够实现。不管是组件还是漏洞,都在走向标准化,在未来可能会做得非常标准化。但是,现实到未来还有很长的一段路需要走,在软件供应链安全这个领域,其实也没有任何的一个解决方案能够解决所有的问题,在当前我们仍然需要做大量的非常细致、琐碎的工作,争取取得一个更好的成果。

基于以上的分享,希望大家对软件供应链安全有更深刻的理解和思考,非常感谢这次交流分享的机会,在未来解决方案上我们也会继续探索和前进,欢迎大家有问题一起交流。
可观看视频查看完整内容:https://www.bilibili.com/video/BV18Y411P7bQ?spm_id_from=333.999.0.0

三、墨菲安全提供了哪些能力

墨菲安全旗下开源组件安全检测产品——苏木,为帮助每一个开发者更安全的使用开源代码。其能力包括

  • 代码安全检测:识别代码项目中存在的开源组件安全漏洞,并快速修复它
  • 许可证合规评估:识别代码项目中使用的开源组件许可证,检查合规的风险
  • 软件成分分析识别:代码和基础环境中的三方组件依赖资产,并进行有效管理


CLI 工具
可用于在命令行检测指定目录代码的依赖安全问题,也可以基于 CLI 工具实现在 CI 流程的检测,
可参考文档墨菲安全 CLI 与 Jenkins CI 的集成:murphysec.com/docs/integrations/jenkins/

目前项目已开源:https://github.com/murphysecurity/murphysec

支持功能及语言

  1. 分析项目使用的依赖信息,包含直接和间接依赖
  2. 检测项目依赖存在的已知漏洞信息
    目前支持 Java、JavaScript、Golang、Python、PHP 语言项目的检测。

JetBrains IDE 插件
该插件让开发者在 IDE 中即可检测代码依赖的安全问题,轻松识别代码中使用了哪些存在安全缺陷的开源组件,通过准确的修复方案和一键修复功能,快速解决安全问题。
在 JetBrains IDE 插件市场搜索“murphysec” 即可快速安装使用。

支持功能
目前 Murphysec Code Scan 支持的功能如下:

  • 漏洞检测:检测Java(Maven)、JavaScript(npm)、Go(gomod)、Python(pip)代码中引入的缺陷组件
  • 一键修复:不仅有清晰的修复方案,还可以通过此功能快速修复
  • 实时检测:代码的依赖发生变化导致了安全问题,不用担心,插件会及时给您提醒进行处理

如果您有任何问题欢迎反馈和联系我们~


墨菲安全
22 声望2 粉丝

让每一个开发者更安全的使用开源代码!