简体   繁体   English

Log4J 漏洞是否会在内部安全网络中打开原本不会存在的漏洞?

[英]Does the Log4J vulnerability open up vulnerabilites in an internal secure network that would not be present otherwise?

Is there an "internal secured application" scenario where software is more vulnerable because of earlier Log4J versions than it would be without it?是否存在“内部安全应用程序”场景,因为较早的 Log4J 版本比没有它时软件更容易受到攻击?

I've outlined some detail about this question below.我在下面概述了有关此问题的一些详细信息。

I'm doing some work to mitigate the risks from the recent Log4J vulnerability.我正在做一些工作来减轻最近的 Log4J 漏洞带来的风险。 I am aware of approaches that involve removing all traces of earlier Log4J jar files from all the organisation's computers, servers, remote desktops, everything, with the organisation considered "at risk" until this has been done.我知道一些涉及从组织的所有计算机、服务器、远程桌面等所有东西中删除早期 Log4J jar 文件的所有痕迹的方法,在完成此操作之前,该组织被视为“处于危险之中”。 However, I'm also wondering if such a large expenditure of effort across the board is proportionate [edit 22-Dec-21 12:15 - apologies: to be clear what I'm trying to understand by "proportionate" is whether we will get better outcomes by focusing a lot of effort towards some Log4J code uses with less effort into others, considering that there may be other non-Log4J vulnerabilities that we can address during this same organisational workload].然而,我也想知道如此大的全面努力是否是相称的[编辑 22-Dec-21 12:15 - 道歉:要清楚我试图通过“相称”来理解的是我们是否会通过将大量精力集中在一些 Log4J 代码使用而对其他代码使用较少的精力来获得更好的结果,考虑到在相同的组织工作负载中可能存在我们可以解决的其他非 Log4J 漏洞]。

I have a basic understanding of the vulnerability, for example from https://www.microsoft.com/security/blog/2021/12/11/guidance-for-preventing-detecting-and-hunting-for-cve-2021-44228-log4j-2-exploitation/ where a bad actor sends an HTTP message containing a JNDI command, which then gets executed when the program next attempts to write to the log.我对该漏洞有基本的了解,例如来自https://www.microsoft.com/security/blog/2021/12/11/guidance-for-preventing-detecting-and-hunting-for-cve-2021- 44228-log4j-2-exploitation/恶意攻击者发送包含 JNDI 命令的 HTTP 消息,然后在程序下一次尝试写入日志时执行。 The risks there seem obvious for public-facing applications and put me in mind of well-understood SQL Injection attacks (the classic surname: SMITH;DROP TABLE CUSTOMERS comes to mind).对于面向公众的应用程序来说,那里的风险似乎很明显,这让我想起了众所周知的 SQL 注入攻击(我想到了经典的姓氏:SMITH;DROP TABLE CUSTOMERS)。

But an "across the board" solution is seeking to mitigate risks to software such as但是一个“全面”的解决方案正在寻求减轻软件的风险,例如

  • internal Java web applications that are protected from the outside world (both in and out) by techniques such as firewalls and DMZs内部 Java web 通过防火墙和 DMZ 等技术保护免受外部世界(进出)的应用程序
  • internal Java batch programs that I'd expect to be immune to tampering with anyway during execution内部 Java 批处理程序,我希望在执行期间无论如何都不会被篡改
  • Citrix virtual desktops that can indeed run in administrator mode, depending on the user, but that I would expect to be totally inaccessible from the outside world. Citrix 虚拟桌面确实可以在管理员模式下运行,具体取决于用户,但我希望外界完全无法访问。

The only justification I've heard so far for "across the board" is that a bad actor might be able to tunnel into the network and cause the Log4J vulnerability to be executed, but in that scenario it seems that a bad actor tunnelling into a network could just go right ahead and execute malware themselves and not bother trying to find programs that use earlier versions of Log4J.到目前为止,我听到的“全面”的唯一理由是,不良行为者可能能够通过隧道进入网络并导致 Log4J 漏洞被执行,但在这种情况下,不良行为者似乎通过隧道进入网络网络可以直接执行 go 并自行执行恶意软件,而无需费心寻找使用早期版本 Log4J 的程序。

Having considered the comments from @f1sh and @hfontanez and spoken to a couple more people, I'm happy that I have an understanding of the distinctive aspects of this vulnerability that suggest internal apps should be considered vulnerable despite running in a secured environment.在考虑了来自 @f1sh 和 @hfontanez 的评论并与更多人交谈后,我很高兴我了解了此漏洞的独特方面,这些方面表明尽管在安全的环境中运行,内部应用程序仍应被视为易受攻击。

  1. I think the significant feature of this vulnerability is that the problems are manifested during the act of logging, and logging is ubiquitous.我认为这个漏洞的显着特点是问题在日志记录的行为中表现出来,并且日志记录无处不在。 Logging even takes place in code that is itself trying to deal with attempted intrusions and this aspect potentially opens up new lines of attack from bad actors.日志记录甚至发生在本身试图处理企图入侵的代码中,这方面可能会开辟来自不良行为者的新攻击线。

  2. With regard to running internal code in a secure organisation, I understand there is the prospect of a chain of events starting outside the organisation that might eventually lead to the Log4J vulnerability being exploited inside the organisation.关于在安全的组织中运行内部代码,我知道有可能在组织外部开始一系列事件,最终可能导致 Log4J 漏洞在组织内部被利用。 At this point in time, this is maybe more a possibility than a reality, but given the unique nature of this vulnerability then it may make such an attack easier to execute.在这个时间点上,这可能是一种可能性,而不是现实,但鉴于此漏洞的独特性,它可能会使此类攻击更容易执行。

  3. One point to take away from this vulnerability is the importance of ensuring that internal applications cannot make network calls outside the organisation if they have no need to do so, and any valid calls to outside are restricted to what is needed.要消除此漏洞的一点是,确保内部应用程序在不需要时无法在组织外部进行网络调用非常重要,并且对外部的任何有效调用都仅限于需要的情况。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM