log4j Log4Shell允许远程执行代码,这是否可用于远程修补漏洞?

zpqajqem  于 2022-11-06  发布在  Shell
关注(0)|答案(2)|浏览(149)

当前的log 4shell问题(著名的CVE-2021-44228)为攻击者提供了一个在易受攻击的面向互联网的机器上执行不受信任代码的媒介。
通过在目标机器上放置修补有漏洞的库的代码,这是否可以用于修补漏洞?

**编辑:**为了澄清这个问题,本文仅针对是否可以通过此shell访问向量远程修补运行的Java代码这一技术问题。

qgzx9mmu

qgzx9mmu1#

似乎至少有一个概念验证级别的项目尝试就地修补漏洞,因此在技术上是可行的:https://github.com/Cybereason/Logout4Shell
作者在一个blog post中详细描述了他们的方法,从中可以看出,利用-修复-组合(他们称之为“疫苗”)也是他们公司的一个广告。在评估它时请记住这一点。

kokeuurv

kokeuurv2#

从法律上讲,这是一个明确的否定。
由于你仍然在未经拥有者授权的情况下在不属于你的系统上执行代码。虽然这是为了防止恶意黑客攻击系统,但这种解决问题的方法仍然是非法的。
技术上是的。
正如您正确理解的那样,您可以完全控制系统执行任意代码,包括安装“修复程序”。
实际上,这取决于您希望如何实现修复,以及您是否找到了一种可扩展的通用解决方案,可以使用相同的方法“修复”不同配置的系统。
更新库需要确定易受攻击的文件log4j-core.jar的位置,并将其替换为修复的版本,但随后还需要使用库重新启动服务,因为易受攻击的版本可能已加载到内存中。对磁盘上文件的更改不会反映在运行的程序中。
文件和运行服务的位置将因系统而异,这使得实现通用解决方案变得更加困难。
该漏洞已经是5天前公开报告的漏洞,非常容易被利用。如果您还没有修补它,您可能已经被利用。攻击者可能已经安装了另一个恶意软件,该软件能够在未来通过远程控制加载或执行任何新代码,并且不再需要log4j漏洞。
如果你还没有修复log4j漏洞,更新log4j是不够的,你必须假设你的系统已经被休眠木马破坏了,你应该重置整个系统来摆脱它。
我的建议是不要这样做。试着联系系统的所有者,告诉他们更新并重置整个系统。

相关问题