Bowser
本帖最后由 Bowser 于 2021-12-11 12:44 编辑

警告: 本插件作为插件安装时只能防御服务端,玩家的客户端依然会成为攻击目标。
你需要让你的玩家 在客户端进行修复/更新forge版本至latest(针对无客户端整合包的服务器),
或将本插件jar放入客户端的mods文件夹然后推送客户端更新(针对使用客户端整合包的1.12.2forge服务器)

修复近日发现的Log4J安全漏洞。下载插件,拖入plugins文件夹,即可起到修复效果。
理论上JRE可运行,无需安装JDK。

效果图:


可以看到 jndi 字符串没有被执行,而是被正常地打印了出来。
(注:服务端核心的版本实际上是1.16.5,因为测试的时候发现没装高版本Java,于是直接拿那个文件夹装了1.16.5核心)


命令:无,权限:无,配置文件:无。


下载地址:Github 或 Fix4Log4J-1.2.3.jar (10.43 KB, 下载次数: 817)
源代码:https://github.com/ChloePrime/fix4log4j


本插件所用代码部分来自 Apache Common Lang3 (根据 Apache-2.0 协议开源)











xiaoxu333
谢谢大佬!!!!!

KazuhaAyato
感谢大佬,话说不是大型服务器没人会有空搞吧

蛋壳666
WDN2MD 发表于 2021-12-10 19:31
感谢大佬,话说不是大型服务器没人会有空搞吧

bug只要大家知道了总有玩家想去尝试的,主要能崩服

清风送爽
为啥没有1.7.10的呀

寂寞冰凌
牛逼啊大佬,今天的BUG这么快

轩|Xuan
WDN2MD 发表于 2021-12-10 19:31
感谢大佬,话说不是大型服务器没人会有空搞吧

不,我这种小破服不知道咋的后台被人连的都。。东西都被翻了

Bowser
WDN2MD 发表于 2021-12-10 19:31
感谢大佬,话说不是大型服务器没人会有空搞吧

会的,这个漏洞可以用把你的服务器 / 玩家的客户端变成矿机,非常危险。
客户端也很关键,即使服务器修复了这个bug,玩家的客户端依然会被攻击。

优酷恐龙
是否可转载插件,原帖会做相关标注并指引

MossCG
本帖最后由 MossCG 于 2021-12-10 21:40 编辑

很好用 不过测试发现paperspigot-1.8.8核心会找不到类
[21:32:30 INFO]: [Fix4Log4J] Loading Fix4Log4J v1.1.4
[21:32:30 ERROR]: org/apache/logging/log4j/core/net/JndiManager initializing Fix4Log4J v1.1.4 (Is it up to date?)
java.lang.NoClassDefFoundError: org/apache/logging/log4j/core/net/JndiManager
        at chloeprime.fix4log4j.Fixer.disableJndiManager0(Fixer.java:52) ~[?:?]
        at chloeprime.fix4log4j.Fixer.disableJndiManager(Fixer.java:44) ~[?:?]
        at chloeprime.fix4log4j.bukkit.Fix4Log4JBukkitPlugin.onLoad(Fix4Log4JBukkitPlugin.java:14) ~[?:?]
        at org.bukkit.craftbukkit.v1_8_R3.CraftServer.loadPlugins(CraftServer.java:298) [PaperSpigot-1.8.8.jar:git-PaperSpigot-"4c7641d"]
        at net.minecraft.server.v1_8_R3.DedicatedServer.init(DedicatedServer.java:202) [PaperSpigot-1.8.8.jar:git-PaperSpigot-"4c7641d"]
        at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:563) [PaperSpigot-1.8.8.jar:git-PaperSpigot-"4c7641d"]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_301]
Caused by: java.lang.ClassNotFoundException: org.apache.logging.log4j.core.net.JndiManager
        at java.net.URLClassLoader.findClass(Unknown Source) ~[?:1.8.0_301]
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:102) ~[PaperSpigot-1.8.8.jar:git-PaperSpigot-"4c7641d"]
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:87) ~[PaperSpigot-1.8.8.jar:git-PaperSpigot-"4c7641d"]
        at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_301]
        at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_301]
        ... 7 more[21:39:51 INFO]: This server is running CraftBukkit version git-PaperSpigot-"4c7641d" (MC: 1.8.8) (Implementing API version 1.8.8-R0.1-SNAPSHOT)


林鹿�_KkgGg
大佬 paper1.17的服务端可以用吗

dsyq乌合之众
找到修复了,感谢楼主

隔壁老帅比
所以没有17以上版本吗

Bowser
隔壁老帅比 发表于 2021-12-10 23:12
所以没有17以上版本吗

1.17 以上使用了 Java16,这个版本的 Java 大概会使这个插件无法工作 0.0
不过 1.17 相对比较新,等各个核心的官方更新吧

隔壁老帅比
Bowser 发表于 2021-12-10 23:17
1.17 以上使用了 Java16,这个版本的 Java 大概会使这个插件无法工作 0.0
不过 1.17 相对比较新,等各个 ...

我还是没搞懂黑客是怎么用这个漏洞是怎么工作的

名副其实
隔壁老帅比 发表于 2021-12-11 00:02
我还是没搞懂黑客是怎么用这个漏洞是怎么工作的

远程执行代码
很简单但也很致命

BGCGenom
MCBBS有你更精彩~

许小尘
万分感谢!!!paper官方好像已经发布最新构建了,据说已经修复了这个漏洞。我想问问大佬写的插件原理,我在使用最新服务端时能否为了保险起见使用您的插件呢,会不会有冲突或者导致其他一些可能的情况呢qwq(服务端1.16.5)

Bowser
许小尘 发表于 2021-12-11 08:59
万分感谢!!!paper官方好像已经发布最新构建了,据说已经修复了这个漏洞。我想问问大佬写的插件原理,我 ...

原理是利用反射将Log4J的JndiManager无效化,
另外,我的插件加载时会在控制台进行一个简单的漏洞测试,欢迎使用哦~

许小尘
本帖最后由 许小尘 于 2021-12-11 10:29 编辑
Bowser 发表于 2021-12-11 10:15
原理是利用反射将Log4J的JndiManager无效化,
另外,我的插件加载时会在控制台进行一个简单的漏洞测试, ...

谢谢大佬,我用此插件加载时的测试代码试了下,似乎并没有什么反应,看来有一定作用...

你恁碟
谢谢大佬的修复插件!!

4lzz_bigger
感谢感谢。。。

bdhbhvbjxhvbjvb
谢谢大佬!!!!!

夏逆520
1.7.10U端报错
  1. [16:02:11] [Server thread/INFO]: [Fix4Log4J] Loading Fix4Log4J v1.1.4
  2. [16:02:11] [Server thread/ERROR]: org/apache/logging/log4j/core/net/JndiManager initializing Fix4Log4J v1.1.4 (Is it up to date?)
  3. java.lang.NoClassDefFoundError: org/apache/logging/log4j/core/net/JndiManager
  4.         at chloeprime.fix4log4j.Fixer.disableJndiManager0(Fixer.java:52) ~[?:?]
  5.         at chloeprime.fix4log4j.Fixer.disableJndiManager(Fixer.java:44) ~[?:?]
  6.         at chloeprime.fix4log4j.bukkit.Fix4Log4JBukkitPlugin.onLoad(Fix4Log4JBukkitPlugin.java:14) ~[?:?]
  7.         at org.bukkit.craftbukkit.v1_7_R4.CraftServer.loadPlugins(CraftServer.java:328) [CraftServer.class:1.7.10-R0.1-SNAPSHOT]
  8.         at net.minecraft.world.storage.SaveHandler.initBukkitData(SaveHandler.java:460) [ayq.class:?]
  9.         at net.minecraft.world.storage.SaveHandler.func_75757_d(SaveHandler.java:136) [ayq.class:?]
  10.         at net.minecraft.world.World.<init>(World.java:348) [ahb.class:?]
  11.         at net.minecraft.world.WorldServer.<init>(WorldServer.java:163) [mt.class:?]
  12.         at net.minecraft.server.MinecraftServer.func_71247_a(MinecraftServer.java:363) [MinecraftServer.class:?]
  13.         at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:356) [lt.class:?]
  14.         at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:627) [MinecraftServer.class:?]
  15.         at java.lang.Thread.run(Thread.java:748) [?:1.8.0_282]
  16. Caused by: java.lang.ClassNotFoundException: org.apache.logging.log4j.core.net.JndiManager
  17.         at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:617) ~[PluginClassLoader.class:1.7.10-R0.1-SNAPSHOT]
  18.         at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:343) ~[PluginClassLoader.class:1.7.10-R0.1-SNAPSHOT]
  19.         at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[?:1.8.0_282]
  20.         at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_282]
  21.         ... 12 more
复制代码

Bowser

不支持1710 :(

乔治a
Paper1.8.8 提示以下消息楼主看一下这是啥意思




1660367824
谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢

托雷斯马蒙
请问fabric端能用这个吗

HGVFDJH
谢谢大佬!我服务器刚好就是1.12.2

我是小孩纸
服务器版本1.16.5,java版本1.8.0_292,paper端
这是没加载成功吗?


[00:45:14] [Server thread/ERROR]: Could not load 'plugins/log4j-core-2.15.1-20211209.191737-4.jar' in folder 'plugins'
org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml
        at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:162) ~[patched_1.16.5.jar:git-Paper-520]
        at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:148) ~[patched_1.16.5.jar:git-Paper-520]
        at org.bukkit.craftbukkit.v1_16_R3.CraftServer.loadPlugins(CraftServer.java:389) ~[patched_1.16.5.jar:git-Paper-520]
        at net.minecraft.server.v1_16_R3.DedicatedServer.init(DedicatedServer.java:206) ~[patched_1.16.5.jar:git-Paper-520]
        at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:941) ~[patched_1.16.5.jar:git-Paper-520]
        at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:175) ~[patched_1.16.5.jar:git-Paper-520]
        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_292]
Caused by: java.io.FileNotFoundException: Jar does not contain plugin.yml
        ... 7 more
[00:45:15] [Server thread/WARN]: Initializing Legacy Material Support. Unless you have legacy plugins and/or data this is a bug!
[00:45:18] [Server thread/WARN]: Legacy plugin NametagEdit v4.4.10 does not specify an api-version.



堕入深渊
听说log4j的问题可以绕开插件防御,这个真的假的

咱好好踢球
谢谢楼主分享

KZBBYCM
大佬,想问下这个插件支持1.7.10版本吗

Bowser
KZBBYCM 发表于 2021-12-16 18:36
大佬,想问下这个插件支持1.7.10版本吗

并不支持1.7.10 :(

lolololoRPG
谢谢大佬

KZBBYCM
Bowser 发表于 2021-12-16 21:07
并不支持1.7.10 :(

找到1710的解决方法了,谢谢大佬

老學校
很不错的一个插件

小羊不到啊
才发现 有这个bug的修复插件了,感谢开发者们为我们这种小辅助小白提供修复,支持

As丶肥宅
支持一下大佬

mefi
谢谢大佬分享

mefi
谢谢大佬分享

YteNice
大佬真快 拿走了

1123714557
是前几天java出现的那个BUG吗 paper好像没更新了

哈纸SaMa
感谢大佬的分享!!

血腥收割者233
大佬这个Mohist端能用吗

Bowser
血腥收割者233 发表于 2021-12-31 21:04
大佬这个Mohist端能用吗

可以的 0.0,建议打mod版的补丁

副耳机
插件不错感谢

IGOBB
感谢分享!

多次拒玺
这插件很不错,支持作者

超甜的布丁
很不错的插件,支持一下

下一页 最后一页