摘要:近来供应链攻击频发,供应链攻击和勒索软件攻击正成为黑客谋利的重要手段,照成的社会危害巨大。如何才能有效的防范供应链攻击,正成为软件供应商需要思考的问题,Google的SLSA供应链完整性框架,给了我们很多有益的参考。

本文分享自华为云社区《供应链攻击的防范》,原文作者:Uncle_Tom 。

1. 历史上最大的勒索软件攻击

7月2日勒索组织REvil,攻击了一家来自瑞典的IT管理服务提供商(managed service providers(MSP)) – Kaseya。

Kaseya的VSA(虚拟系统管理)是一个基于云的管理服务提供商(MSP)平台,该平台为客户提供了一套基于Web的新一代自动化IT系统管理解决方案。MSP通过建立自己的网络运作中心(Network Operating Center(NOC))来为企业提供 24×7×365 的系统管理服务的业务。MSP可以实现对客户的IT系统的进行远程的管理、实时的监控、对企业系统运作情况进行统计,以及执行补丁管理等。

Kaseya在全球已经拥有了超过10000家客户,其中包括50%以上的全球100强IT管理服务提供商及各大龙头企业,分别来自银行业、金融业、零售业、贸易业、教育机构、政府机构、医疗机构和交通运输业等领域。全球有超过1300万台以上的终端和设备通过Kaseya的软件进行管理。

REvil利用零日漏洞(CVE-2021-30116)攻陷MSP平台之后,向VSA内部推送了恶意更新,在企业网上部署了勒索软件,导致Kaseya遭受工具链攻击。REvil宣称锁定了超过一百万个系统,并愿意就通用解密器进行谈判,起价为7000万美元,这是迄今为止开价最高的赎金。

  • REvil频繁作案:

    • 2020年5月,REvil声称破译了唐纳德·特朗普公司用于保护其数据的椭圆曲线密码术,并为他们盗窃的数据索要4200万美元的赎金。
    • 2021年3月18日,REvil附属公司在网络上声称,他们已从跨国硬件和电子公司宏碁安装勒索软件并盗取大量数据,并为此索取5000万美元的赎金。
    • 2021年3月27日,REvil攻击哈里斯联盟,并在其博客上发布了联盟的多份财务文件。
    • 2021年4月,REvil窃取了广达电脑即将推出的苹果产品的计划,并威胁要公开发布这些计划,除非他们收到5000万美元作为赎金。
    • 2021年5月30日,全球最大肉类供应商JBS受到REvil勒索软件的攻击,该公司不得不将所有美国牛肉工厂暂时关闭,并中断了家禽和猪肉工厂的运营。最终,JBS还是向REvil支付了1100万美元的比特币赎金。
    • 2021年6月11日,全球再生能源巨擘Invenergy证实其作业系统遭到了勒索软件的攻击,REvil声称对此事负责。

2. 近来供应链攻击频繁

  • 2020/12,SolarWinds旗下软件被用于供应链攻击
    SolarWinds公司创办于1999年,总部位于美国德克萨斯州奥斯汀,在多个国家设有销售和产品开发办事处,主要生产销售网络和系统监测管理类的软件产品,为全球30万家客户服务,覆盖了政府、军事、教育等大量重要机构和超过9成的世界500强企业,知名客户清单包括:《美国财富》500强企业中的425家;美国十大电信公司;美军所有五个分支;五角大楼,美国国务院,NASA,NSA,美国邮政局,NOAA,美国司法部和总统办公室;美国前五名会计师事务;全球数百所大学等。
    据析大约有超过250 家美国联邦机构和企业受到影响,其中包括美国财政部、美国NTIA,美国安全公司FireEye等,可以算得上是2020年最具影响力的供应链攻击事件了。
  • 2020/12,黑客组织FIN11利用AccellionFTA服务器的多个0day漏洞攻击全球上百家企业
    黑客利用4个安全缺陷攻击AccellionFTA服务器(FTA服务器是一款在2000年时代开发的文件共享工具,可使企业以简单的方式和员工以及客户共享文件),安装了一个名为“DEWMODE”的webshell,之后用于下载存储在受害者FTA设备上的文件。Accellion公司在新闻稿中指出,”在约300个FTA客户端中,受害者不到100人,而其中不到25个人遭受严重的数据盗取事件。在这25个客户中,某些客户的FTA文件分享服务器遭攻击后收到了勒索留言。攻击者发送邮件要求支付比特币,或者在由Clop勒索团伙运营的网站上公开受害者数据。
  • 2021/03,国际航空电信公司(SITA)受到供应链攻击
    国际航空电信公司(SITA)占据全球90%航空份额的通信和IT厂商,存储在该公司位于美国服务器中的乘客信息遭“高度复杂的攻击”。受攻击的服务器位于亚特拉大,属于SITA乘客服务系统(SITAPSS)。SITAPSS运营该系统是为了处理航空乘客信息,为SITA多家总部位于欧盟的企业所有。星空联盟(国际航空公司联盟)的航空公司成员包括汉莎航空、新西兰航空和新加坡航空以及OneWorld成员国泰航空、芬兰航空、日本航空和马来西亚航空公司已经开始和受影响用户通信,并表示,韩国航空公司济州航空的乘客数据也遭攻陷。

3. 供应链攻击

供应链攻击是一种以软件开发人员和供应商为目标的一种威胁, 攻击者通过感染合法应用来分发恶意软件来访问源代码、构建过程或更新机制从而达到对开发人员和供应商进行攻击的目的。

软件供应链可划分为开发、交付、运行三个大的环节,每个环节都可能会引入供应链安全风险从而遭受攻击,上游环节的安全问题会传递到下游环节并被放大。

黑客往往通过攻陷某知名官网的服务器,篡改其服务器上所提供的软件源代码,使得这些软件在被用户下载后安装时触发恶意行为。这些携带恶意代码的软件来自受信任的分发渠道,携带着相应的供应商数字签名,使得恶意程序的隐蔽性大大增强,安全检测难度加大。

当攻击者通过供应链攻击散播的恶意软件是以加密技术锁住系统资料,并藉此勒索企业,就构成了勒索软件攻击。通常当供应链攻击和勒索软件攻击被一起使用时,会造成更大的危害。

例如,对于Kaseya的攻击,安全公司Huntress Labs在Reddit上发布了一篇帖子,详细介绍Kaseya VSA入侵的工作原理,该木马软件以Kaseya VSA Agent Hot-fix的形式发布,通过Kaseya的MSP管理平台,将补丁分发到Kaseya用于客户管理的虚拟机VSA上,从而完成恶意软件对客户关键信息的加密和勒索。

  • 供应链攻击的典型攻击方法

《2020年中国网络安全报告》称供应链攻击已成为2020年最具影响力的高级威胁之一。

4. 供应链攻击的防范

4.1. Google的SLSA供应链完整性框架

6月16日,Google在安全博客上发表了一篇《Introducing SLSA, an End-to-End Framework for Supply Chain Integrity》博客,介绍了一个叫SLSA(莎莎(读音salsa))的用来检测端到端供应链完整性的框架。

  • SLSA解决的问题:

    • 软件生产商想要保护他们的供应链,但不知道具体如何;
    • 软件消费者希望了解并限制他们遭受供应链攻击的风险,但没有办法这样做;
    • 单独的工件签名只能防止我们关心的攻击的一个子集
  • SLSA制定的标准是软件生产者和消费者的指导原则:
    • 软件生产者可以遵循这些准则来使他们的软件更加安全;
    • 软件消费者可以根据软件包的安全状况做出决定。

SLSA是一套可逐步采用的安全指南,由行业共识建立。SLSA是用来防止普通供应链攻击,明确列举了开发过程中各个环节可能受到的攻击,并将这些攻击点标注为A到H共8个攻击点;同时对开发过程中的三个输出中间件:原码(source)、依赖(dependency)和包(package)通过安全等级的划分来体现供应链的完整性强度。SLSA的四个级别旨在增量和可操作,并防止特定的完整性攻击。SLSA 4代表理想的最终状态,较低的级别代表具有相应完整性保证的里程碑。

4.2. 开发过程供应链威胁

  • 开发过程供应链威胁图

  • 图中的相关定义

  • 特例:

    • 包含源码的zip包是一个包,不是源。因为这个文件是由其他源码构建产生的。例如一个git提交的zip文件.
  • 开发过程供应链威胁描述

4.3. SLSA的安全级别

中间件的SLSA级别描述了其直接供应链的完整性强度,主要有四个SLSA级别。SLSA 4是当前最高级别,代表理想的终极状态。SLSA 1–3提供较低的安全保证,但更容易满足要求。根据Google的经验,实现SLSA 4可能需要很多年和大量的努力,因此中间里程碑是重要的。

  • 级别定义

4.4. SLSA安全级别的要求

SLSA给达到每个级别定义了实现要求,具体如下:

4.5. 应用举例

下图是SLSA给出的应用举例,可以看到每个交付的中间件都有一个自身的hash值和出处的定义,从而保证整个中间件的可追溯和可验证。

5. 总结

  • 供应链攻击正成为危害最大的网络威胁之一,且发生的频率正在上升;
  • 供应链攻击由于拥有上游的正式发布渠道和有效的签名,作为下游的使用者防范困难;
  • 作为软件的开发者,在做好开源软件缺陷的管理之外,还要提高自身的风险管理能力,能够识别开发过程中恶意的变动,并触发追查和防范措施;
  • Google的SLSA供应链完整性框架,全面的考虑了供应链的各个环节可能引入的安全威胁,提供了防止供应链攻击的一种有效的方法;
  • Google的SLSA供应链完整性框架,可以成为我们开发过程中防范供应链攻击的一个很好的借鉴;

6. 参考

  • 微软安全供应链攻击
  • Google:IntroducingSLSA,anEnd-to-EndFrameworkforSupplyChainIntegrity
  • 2021-07-05勒索组织REvil发起供应链攻击,索要7000万美元赎金
  • 2021-03-07大规模供应链攻击攻陷了数家航空公司
  • 2020-12-16SolarWinds旗下软件被用于供应链攻击事件分析
  • 洞见RSA2021|备受热捧的“供应链攻击”如何防御?
  • 5-ways-your-software-supply-chain-is-out-to-get-you-part-5-hostile-takeover
  • rsa创新沙盒盘点-apiiro-代码风险平台
  • top-5-tips-to-prevent-the-solarwinds-solorigate-attack
  • 解读6种最常见的软件供应链攻击类型

点击关注,第一时间了解华为云新鲜技术~

剖析供应链攻击的防范相关推荐

  1. DDOS学习笔记(《破坏之王-DDOS攻击与防范深度剖析》)

           最近花了点时间把<破坏之王-DDOS攻击与防范深度剖析>看了一遍,坦白来说,这本书比较浅显,可以说是入门书,当然对于我这种对DDOS一知半解的人来说,也是一本不错的书,起码我 ...

  2. 《破坏之王—DDoS攻击与防范深度剖析》

    2019独角兽企业重金招聘Python工程师标准>>> <破坏之王-DDoS攻击与防范深度剖析> 在竞争激烈的互联网领域,总有一些组织和个人利用DDoS攻击进行破坏,从而 ...

  3. 破坏之王-DDoS攻击与防范深度剖析

    破坏之王-DDoS攻击与防范深度剖析 下载:链接:https://pan.baidu.com/s/1bzVT6YkZGGg7anpQWDknjA 提取码:j7ns 网际空间的发展带来了机遇,也带来了威 ...

  4. 破坏之王:DDOS攻击与防范深度剖析

    原文链接 链接 1. 笔者序 这篇Blog记录了笔者对<破坏之王: DDoS攻击与防范深度剖析>的学习记录,贡献出来和大家一起学习. 为什么学这个,笔者的服务在2021年9月4日晚上遭受了 ...

  5. PHP包管理器PEAR 中爆多个缺陷可发动供应链攻击,已潜伏15年

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士团队 专栏·供应链安全 数字化时代,软件无处不在.软件如同社会中的"虚拟人",已经成为支撑社会正常运转的最基本元素之一,软件的 ...

  6. FIN7 正在转向密码重置和软件供应链攻击

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士团队 专栏·供应链安全 数字化时代,软件无处不在.软件如同社会中的"虚拟人",已经成为支撑社会正常运转的最基本元素之一,软件的 ...

  7. 攻击者“完全自动化”发动NPM供应链攻击

     聚焦源代码安全,网罗国内外最新资讯! 专栏·供应链安全 数字化时代,软件无处不在.软件如同社会中的"虚拟人",已经成为支撑社会正常运转的最基本元素之一,软件的安全性问题也正在成为 ...

  8. 200多个恶意NPM程序包针对Azure 开发人员,发动供应链攻击

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 专栏·供应链安全 数字化时代,软件无处不在.软件如同社会中的"虚拟人",已经成为支撑社会正常运转的最基本元素之一,软件的安全 ...

  9. 哪些NPM仓库更易遭供应链攻击?研究员给出了预测指标

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 专栏·供应链安全 数字化时代,软件无处不在.软件如同社会中的"虚拟人",已经成为支撑社会正常运转的最基本元素之一,软件的安全 ...

最新文章

  1. mysql集群2台linux_安装配置基于两台服务器的MySQL集群(2)
  2. T-SQL笔记6:GO
  3. 解决Maven工程中报 Missing artifact jdk.tools:jdk.tools
  4. 【转】J2ME开发环境的建立
  5. OpenCV_(Fit Line with points)用直线拟合一组点
  6. 软考信息系统项目管理师真题及答案之案例分析
  7. USB转串口驱动(支持各平台)
  8. word文档设置不同的页眉页脚
  9. JD如何获取cookie
  10. 圆排列公式推导_数学广角早在公元三世纪,我国数学家刘徽为推导圆的面积公式而发明了 爱问知识人...
  11. 如何打开.pos文件
  12. 必备的 6 大计算机网络基础知识点!会 3 个以上就很牛逼了
  13. Idea 使用YapiUpload上传接口到Yapi
  14. cosh()函数以及C ++中的示例
  15. echart图表(自定义提示框) 鼠标移动到数据展示区自定义展示提示框 天/时/分/秒
  16. 【JavaWeb】客户关系管理系统
  17. linux给音乐添加封面,linux系统获取MP3的专辑封面图片
  18. 手把手教你搭建Traccar:开源免费的GPS定位追踪系统【社工】
  19. opencv入门:支持向量机,K均值聚类
  20. 机器学习:分类模型的评估精确率Presicion和召回率Recall

热门文章

  1. 前端:JS/32/form对象(表单)(form对象的属性,方法和事件),受返回值影响的两个事件(onclick事件,onsubmit事件),获取表单的元素对象的三种方式,表单的提交和验证方法总结
  2. 实践 + 理论 | API 接口安全性设计
  3. Vrep 中的运动规划1(主要是基于RRT算法)
  4. ROS笔记(28) Setup Assistant
  5. matlab ga函数,matlab遗传算法ga函数
  6. 学习笔记 vs19 报错:E1696 C++ 无法打开 源 文件
  7. android 自定义特效,Android自定义FloatingText仿点赞+1特效
  8. java不能打开串口_java打不开串口,我已经放入那两个文件了,但是报错了,调用不了...
  9. 上海教育系统计算机职称考试报名,2008年第二季度上海市教育系统职称计算机考试报名的通知...
  10. python怎么用圆周率_Python语言中,如何使用圆周率?