12月10日凌晨,作为全球使用最广泛的java日志框架之一的Apache开源项目Log4j2的远程代码执行漏洞细节被公开。该漏洞影响了众多全球使用率最高的开源组件,如ApacheStruts2、ApacheSolr、ApacheDruid、ApacheFlink等。并且由于该漏洞利用容易,一旦攻击者利用该漏洞,任意代码可在目标服务器上执行,对受害者造成极大的伤害。漏洞公布后,厂商立即发布新版本log4j-2.15.0-rc1修复漏洞,随后更新log4j-2.15.0-rc2进一步修复漏洞。然而,祸不单行。虽然大家可能急于修复Log4j2,但大家还是要抽出时间来看看这个新消息:MicrosoftAzureAppService存在一个名为“NotLegit”的漏洞。使用本地Git部署的PHP、Node、Ruby和Python应用程序。漏洞详情Azure是一个用于托管网站和Web应用程序的平台。用户只需选择支持的编程语言和操作系统,然后使用FTP、SSH或从Git服务中提取源代码,即可在Azure托管的服务器上完成部署。访问.azurewebsites.net域上的应用程序。因为它易于使用,所以在开发人员中颇受欢迎。并且这个漏洞出现在部署步骤中。通常,当开发人员将Git存储库部署到Web服务器和存储桶时,不会上传.git文件夹,因为它包含敏感数据。但是Azure是这样设置的,如果应用程序通过本地Git部署到Azure,那么你的Git仓库就变成了一个公共目录,每个人都可以访问。当然,为了保护敏感数据不被暴露,微软在.git文件夹中加入了一个“web.config”文件,限制公众访问,让数据只能由微软的LLSweb服务器处理。此处出现此漏洞是因为这仅适用于使用LLS部署的C#或ASP.NET应用程序。由于web服务器无法处理“web.config”文件,如果是部署在不同web服务器的PHP、Node、Ruby、Python应用,攻击者只需要从目标应用组获取/.git目录即可得到对应的源码。漏洞响应针对该漏洞,微软做出如下响应:更新所有PHP镜像,禁止将.git文件夹作为静态内容提供服务,作为纵深防御措施。更新了安全建议文档,添加了有关保护源代码的部分,并更新了本地部署的文档。微软已在2021年12月7日至15日期间通过电子邮件通知受影响的用户,提供缓解问题的具体指导。如果您没有收到电子邮件,则无需立即担心,因为您可能不会受到该漏洞的影响。不受漏洞影响的范围如下:自2017年9月起,在AzureAppService中使用“本地Git”部署.从2017年9月开始,在应用容器中创建或修改文件后,使用Git源代码在Azure应用服务中部署所有PHP、Node、Ruby和Python应用。并且微软还指出,该漏洞仅影响部署在基于Linux的Azure服务器上的应用程序。如果您的应用程序托管在WindowsServer系统上,则不会受到该漏洞的影响。该漏洞由云安全提供商Wiz发现并提供,微软悬赏7,500美元。最后,如果你已经收到微软的邮件通知,你应该根据邮件指导尽快完成漏洞修复~推荐阅读如何快速获取生产环境中的Ansible项目布局?服务器端渲染基础
