从宇宙级漏洞Log4Shell看软件供应链安全

从宇宙级漏洞Log4Shell看软件供应链安全
文章图片

出现漏洞并不可怕 , 关键是如何以最快的速度发现并修补漏洞 。 抢在攻击者之前发现并修补漏洞便是胜利 。
李伟辰
2021年12月9日 , 对大多数人来说只是个普通的周四 , 但对信息安全圈里的人来说 , 却是个彻夜难眠的日子 。 一个名为Log4Shell的漏洞开始在网络中肆虐 , 苹果、腾讯、推特、百度、滴滴、京东、网易、亚马逊、特斯拉、谷歌等无一幸免 , 甚至大名鼎鼎的美国国家安全局也没能逃脱 。
更可怕的是 , 该漏洞的影响范围超出了地球 , 因为美国国家航空航天局用来探索火星的“机智”号无人直升机也使用了含有此漏洞的软件 。 由此 , Log4Shell可以当之无愧地被称为“宇宙级”漏洞 。
一个漏洞引发的“核爆”
Log4Shell漏洞所针对的是一个极为常用的Java日志库组件Log4j2 。 企业级应用 , 如电子商务网站、社交平台等 , 需要长期持续地稳定运行 , 并且要服务海量客户 。 为了确保企业应用的服务质量 , 开发人员通常利用日志 , 将企业应用的重要行为、关键事件记录下来 , 方便监控企业应用的状态、性能和安全 。 因此 , 日志功能是所有企业级应用所必须具备的基础功能 。 Log4j2正是这样一个支持企业应用日志功能的开源组件 。
Log4j2是阿帕奇软件基金会(专门为支持开源软件项目而办的一个非营利组织)下的一个开源项目 , 它可以灵活控制日志的生成过程 , 控制每一条日志的输出格式和输送的目的地 。 拥有如此强大的功能 , 它自然受到众多基于Java的企业级软件系统的青睐 。
随着Log4j2被广泛应用 , 它的功能也应广大开发人员的需求不断膨胀 。 从Log4j2的2.0版本开始 , 在生成每条日志的过程中 , 它允许访问远程对象的信息 , 甚至调用远程对象来向日志中插入动态信息 。 这一特性极大地丰富了Log4j2的功能 , 但也悄悄打开了潘多拉的盒子 。 因为 , 只要攻击者向Log4j2组件传入一个精心构造的指向恶意软件的地址 , 便可将恶意软件下载到本地并执行 , 导致之前精心设计的安全防护体系被轻松绕过 , 服务器完全落入攻击者的掌控中 。
是漏洞就迟早会被发现 。 北京时间2021年11月25日16时15分 , 中国安全厂商知道创宇的统一云防御平台第一次捕捉到利用该漏洞的实际攻击行为 。 美国云网络安全服务公司(Cloudflare)的首席执行官马修·普林斯之后也在推特上宣布 , 他们于世界时(UTC)2021年12月1日4时36分50秒发现了Log4j2漏洞被利用的最早证据 。 随着2021年12月9日Log4Shell漏洞的验证方法被正式公布 , 针对此漏洞的网络攻击迅速在全球蔓延 , 进而引发了网络安全界的“核爆” 。
破坏力巨大
在网络安全界 , 漏洞几乎每天都被爆出 。 为何Log4Shell具有如此大的破坏力?
一是因为其影响范围广 。 绝大部分企业级应用都是基于Java语言开发的 , 而Log4j2是应用最广泛的Java日志组件 , 为数百万基于Java的应用程序、网站和服务所使用 , 且Log4Shell可影响该组件2.0以上的任何版本 。
二是因为其危害性大 。 攻击者可利用该漏洞 , 向目标服务器发送恶意数据 , 当服务器将数据写入日志时 , 触发Log4j2组件解析缺陷 , 进而在未经授权的情况下 , 实现远程执行任意代码 。 这就相当于攻击者利用此漏洞 , 可以绕开防护体系 , 构建一条恶意通道来做任何坏事 。 安全厂商已经发现有黑客利用该漏洞植入僵尸网络程序、勒索软件、挖矿软件、木马程序等 。 微软也证实 , 其旗下《我的世界》(Minecraft)游戏平台 , 已经遭勒索软件Khonsari利用该漏洞进行攻击 。

特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。