首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果没有安装JavaCVE-2021-44228,您是否安全?

如果没有安装JavaCVE-2021-44228,您是否安全?
EN

Stack Overflow用户
提问于 2021-12-14 17:50:58
回答 2查看 1.9K关注 0票数 4

我读了很多关于这个问题有多糟糕的文章,并且理解了我们公司生产和更新使用易受攻击版本的服务器的代码中有哪些选项可以找到它。

我无法找到的是,如果某个特定的服务器没有安装Java,也就是说,如果我以root用户身份登录并运行java -version并获取java: command not found,该服务器是否完全安全,因此我可以继续前进?

我最初的直觉是:没有Java -没有问题。然而,GitHub发布了对其企业服务器的更新,声明:

关键:库中的一个远程代码执行漏洞,标识为CVE-2021-44228,在3.3.1之前影响到GitHub企业服务器的所有版本。Log4j库用于运行在GitHub企业服务器实例上的开放源代码服务中.GitHub企业服务器3.0.22、3.1.14、3.2.6和3.3.1版本中修复了此漏洞。有关更多信息,请参见GitHub博客上的这篇文章。

但是Java并没有安装在他们的企业服务器上。

我猜这个冒犯性的服务一定是Java运行在一个码头容器中。因此,我认为我需要考虑机器上的Java或容器中运行的Java。

我是否考虑过其他隐藏的方式来运行这个log4j进程?

EN

回答 2

Stack Overflow用户

发布于 2021-12-14 20:46:07

log4j2是一个库,它必须由运行中的java进程使用,才能使人感到粗俗。但是您是对的,检查java命令是否安装到命令行是不够的。

这里有两个选项(不打算完成),您的系统如何在没有命令行可用的java命令的情况下仍然容易受到攻击。

可以将

  • 下载到目录中,而无需将java命令或目录添加到可执行路径。通过使用.bash (或.bat)脚本,仍然可以启动指向下载的java版本的java进程。但是,当目录没有添加到路径中时,您将无法找到启用的java命令。
  • Java可能在停靠器容器中运行。java命令只能在您的docker容器中使用,但在外部不可见。我不确定是否需要额外的漏洞才能脱离容器,如果这不需要额外的努力就很容易做到的话。
票数 1
EN

Stack Overflow用户

发布于 2021-12-15 11:23:28

我还没有一个完整的答案,但非常明确的是,没有--即使没有安装,也没有安装Docker,也没有在进程列表中运行Java,而且Java也不在yum/apt安装的应用程序列表中。

我没有考虑过的一个明显情况是Java作为JRE添加到应用程序中。

我们拥有的Coverity服务器不安装Java,但是Java正在运行,例如ps -ax | grep java

代码语言:javascript
复制
/home/coverity/cov_platform-2021.9.0/jre/bin/java -Djava.awt.headless=true -Djdk.tls......

确定JRE中是否包含了易受攻击的Log4j版本要困难得多。

此外,仅仅检查流程列表也是不够的。在这种情况下,包含java的进程列表只有在由另一个进程(如cronnginx等)触发时才能运行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70353435

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档