整理 |郑丽媛、禾木木
出品|CSDN
这几天,Apache Log4j 2 绝对是众多 Java 程序员提到的高频词之一:由于 Apache Log4j 2 引发的严重安全漏洞,令一大批安全人员深夜修 Bug、打补丁。此次漏洞更是因为其触发简单、攻击难度低、影响人群广泛等特点,被许多媒体形容为“核弹级”漏洞。
自 12 月 9 日 Apache Log4j 2 漏洞曝光以来,尽管各大企业都为此紧急引入了保护机制,但黑客依旧在想法设法绕过限制利用漏洞。
据研究人员称,著名的勒索软件团伙 Conti 已经扩大了利用 Apache Log4j 漏洞的力度,很可能将这一广泛存在的缺陷视为新一波攻击的基础。
网络安全公司 Qualys 和 AdvIntel 的研究人员称,他们观察到 Conti 最近几天利用 Log4j 日志记录软件中的关键漏洞而进行的活动。
Qualys 的恶意软件威胁研究主管 Travis Smith 在一封邮件中表示,Qualys 已经观察到试图进行的勒索软件攻击,并且其中有一些已经成功了,袭击的细节还没有透露。
与此同时,调查结果表明 Conti 已经围绕 Log4Shell 漏洞组装了完整的攻击链,并发起了初步攻击尝试。目前为止,还没有公开披露由 Log4j 漏洞引起的成功勒索软件漏洞。
然而,不仅仅是一波又一波的漏洞,被勒索软件团伙的高度关注,就是前一波漏洞还没忙完,新的漏洞又出现了!据云安全供应商 Wiz 报告,微软 Azure 应用服务中存在一个名为“NotLegit”的漏洞——该漏洞将影响所有通过“本地 Git”部署的 PHP、Node、Ruby 和 Python 应用。
漏洞自 年 9 月便一直存在
微软旗下的 Azure 应用服务是一个基于云计算、用于托管网站和 Web 应用的平台,因其易于使用,颇受企业及开发者的欢迎:用户需先选择支持的编程语言和操作系统,再使用 FTP、SSH 或通过从 Git 服务(如 GitHub 或私有 Git 存储库)中提取源代码在 Azure 托管的服务器上部署即可。部署成功后,所有人都可以在 . 域中访问该应用。而本次 Wiz 研究团队发现的漏洞就是在部署这一步。
一般而言,当开发者将 Git 存储库部署到 Web 服务器和存储桶时,是不会上传 .git 文件夹的,因为其中包含源代码、开发者邮件和其他敏感数据。但 Azure 应用服务有个奇怪的设定:当应用通过“本地 Git”(在 Azure 应用服务容器内启动本地 Git 存储库,即可将代码直接推送到服务器)部署至 Azure 应用服务时,其 Git 存储库是在所有人都可以访问的公开访问目录(/home/site/wwwroot)中创建的。为了保护其敏感数据不会暴露,微软会在限制公共访问的 .git 文件夹中添加一个“web.config”文件,只可由微软的 IIS 网络服务器处理。
但 Wiz 研究团队发现,这一措施只对同样用 IIS 部署的 C# 或 应用有效,对部署在不同 Web 服务器(如 Apache、Nginx、Flask 等)中的 PHP、Node、Ruby 和 Python 应用则有一个 Bug:这些 Web 服务器无法处理“web.config”文件,导致攻击者只要从目标应用中获取“/.git”目录,就可以检索其源代码,应用开发者也就面临信息泄露的风险。
Wiz 方面将该漏洞称为“NotLegit”,自 年 9 月以来便一直存在,很可能已被利用。Wiz 指出,唯一不受“NotLegit”漏洞影响的是基于 IIS 的应用,具体影响范围包括:
自 年 9 月以来,在 Azure 应用服务中使用“本地 Git”部署的所有 PHP、Node、Ruby 和 Python 应用;
从 年 9 月起,在应用容器中创建或修改文件后,使用 Git 源代码部署在 Azure 应用服务中的所有 PHP、Node、Ruby 和 Python 应用;
为了评估“NotLegit”暴露的可能性,Wiz 研究团队还为此创建了一个具有该漏洞的 Azure 托管网站进行测试,结果在 4 个小时内发现了 5 个不同的攻击者访问了暴露的源代码和 .git 文件。Wiz 对此表示:“这种漏洞的利用方法极其简单、常见,且正被积极利用。”
(Wiz 还放了个小彩蛋:微软的 web.config 文件其实有一处拼写错误,使配置标记未正确关闭,导致 IIS 无法解析。巧的是,这个错误正好阴差阳错地阻止了攻击者对整个目录的访问......)
微软已采取相关措施
发现“NotLegit”后,Wiz 在 年 10 月 7 日向微软报告此事,而微软在了解问题严重性后很快便采取了相关必要措施。Azure 应用服务团队进行深入调查找到了根结所在,随后为大部分受影响客户修复应用,并在 年 12 月 7 日至 15 日之间通过邮件通知所有仍然暴露的客户。微软为此采取的具体措施包括:
更新了所有 PHP 图像,禁止将 .git 文件夹作为静态内容提供,以作为深度防御措施。
通知因激活本地部署而受到影响的客户,并提供有关如何缓解问题的具体指导,还通知了将 .git 文件夹上传到内容目录的客户。
更新了安全建议文档,增加了有关保护源代码的部分,还更新了本地部署的文档。
“并非所有本地 Git 用户都受到影响。”微软补充道:“只有部署在基于 Linux 的 Azure 服务器上的应用会受到影响,那些托管在 Windows Server 系统上的应用,因为在基于 IIS 的环境中运行,所以不会受到漏洞影响。”
为感谢 Wiz 发现这一漏洞,微软还向 Wiz 提供了 7500 美元的赏金——Wiz 计划将其全额捐赠。
最后,如有近期收到微软邮件通知的 Azure 用户,最好尽快根据指导修复漏洞,以避免造成信息泄露。
参考链接:
https://msrc-//12/22/azure-app-service-linux-source-repository-exposure/
https://www.wiz.io/blog/azure-app-service-source-code-leak
//12/22/log4j-flaw-gets-big-attention-from-ruthless-ransomware-gang/