到这周末,很多企业网络安全人员都忙不过来了。Log4j漏洞还有另外一个攻击向量,它利用底层的JavascriptWebSocket连接,通过基于驱动的破坏来触发本地服务器的远程代码执行(RCE)漏洞。换句话说,攻击者可以利用此漏洞攻击在本地主机上运行且未暴露给任何内部网络系统的服务。Blumira的研究人员指出,这一发现反驳了Log4Shell攻击仅限于暴露的、易受攻击的Web服务器的观点。研究人员周五在评论中表示:“这种最新攻击媒介的出现意味着任何使用易受攻击版本的Log4j的人都可以通过他们机器上的监听服务器路径或浏览本地网络来触发该漏洞。”“这意味着恶意攻击的新方法比仅仅使用一行代码获得外壳以将恶意软件投放到面向互联网的服务器上要多得多。使用WebSockets攻击WebSockets可以实现Web浏览器和Web应用程序之间的通信,例如聊天以及网站上的各种警报。它们通常允许浏览器向这些类型的应用程序发送数据,但它们也常用于主机指纹识别和端口扫描。研究人员在帖子中解释说,WebSockets也充满了各种安全风险。WebSockets是不像普通的跨域HTTP请求那样受到同源策略的限制。”他们希望服务器本身能够验证请求的来源。虽然它们有时很有用,但它们也会带来相当大的风险,因为没有安全控制来限制它们的使用,”他解释说。在Log4j的情况下,攻击者会通过WebSockets向本地主机或可能包含漏洞的本地Web服务器发送恶意请求.但那些目标不必暴露在互联网上。”WebSockets以前被用于端口扫描内部系统。BreachQuest的联合创始人兼首席技术官在一封电子邮件中说:“企业应该为他们的应用程序打补丁,并防止可能存在漏洞的服务外出。建立联系。”Log4Shell的本地攻击场景研究人员在帖子中详细分解了他的攻击概念验证(PoC);以下是研究人员的解释。第一步:在安装了Log4j2漏洞的服务器上,攻击者会通过WebSocket连接从浏览器触发一个文件路径的URL。Blumira在PoC中使用了基本的JavascriptWebSocket连接,但研究人员指出,这不一定是本地主机;WebSockets允许连接到任何IP,这很容易在私有IP空间内被利用。第2步:当页面加载时,它将启动一个本地WebSocket连接到易受攻击的侦听服务器,并通过基于Java命名和目录接口(JNDI)的连接字符串进行连接。这种技术类似于用于主机指纹识别的WebSockets的本地主机端口扫描。第3步:一旦受害者的主机连接到本地服务的开放端口或主机本身可访问的服务,攻击者就可以在文件路径或参数中放置漏洞利用字符串。当这种情况发生时,易受攻击的主机会连接到易受攻击的服务器,加载攻击者的类,并以java.exe为父进程执行。漏洞检测和处理但坏消息是,据分析,这是一种非常隐蔽的攻击方式。主机内WebSocket连接可能难以深入扫描,增加了这种攻击检测的复杂性。这是因为WebSocket会在网页加载时悄悄连接,客户端没有办法直接控制。然而,安全研究人员指出,有办法绕过这一点。为了检测可能的攻击,研究人员建议寻找“.*/java.exe”被用作“cmd.exe/powershell.exe”的父进程的实例。“由此产生的检查可能会非常混乱,”研究人员说。最后,组织还应确保他们拥有适当的设备来检测CobaltStrike、TrickBot和相关的常见攻击工具。研究人员指出,为了及时检测本地环境中使用Log4j的位置,现在有公开可用的扫描脚本。为彻底避免这些风险,企业应尽快更新所有本地开发工作、内部应用程序和面向互联网的网络环境。到Log4j2.16,包括任何自定义应用程序。同时,用户也可以采取流量出口过滤措施,也可以限制实际漏洞利用过程中需要的回调,也可以在不受信任的外部网站上使用NoScriptJava拦截器等工具来阻止Javascript触发WebSocket连接。“这个消息确实意味着依赖网络应用程序防火墙或其他网络防御系统不再是一种有效的攻击缓解措施。补丁仍然是组织可以采取的唯一步骤,”Netenrich的安全专家通过电子邮件说。.本文翻译自:https://threatpost.com/new-log4shell-attack-vector-local-hosts/177128/如有转载请注明出处。
