BiblioRCEFix
基本信息
修复 BiblioRCE 远程代码执行漏洞。配置开关 biblioRceExploitFix
(默认 true,分组 bugfixes)。
目标
| 项 | 值 |
|---|---|
| 补丁名 | BiblioRCEFix |
| 目标类 | jds/bibliocraft/FileUtil |
| 目标方法 | null |
| 目标描述符 | null |
整类生效
super(name, targetClassName, null, null) —— 方法名与描述符都是 null,
基类 patchClassNode 的条件
(targetMethodName == null || ...) && (targetMethodDesc == null || ...)
两个分支都短路,因此对目标类的所有方法应用补丁。
与 LinuxGuiChatBrowsePatch 的
""哨兵是两种不同的 「整类生效」写法:前者用null走基类逻辑,后者用""+ 覆写patchClassNode。
⚠️ 第三方 mod 目标类
jds.bibliocraft.FileUtil 是 Bibliocraft 的类,而 FoamFix 的
@Mod 注解没有 dependencies 字段,不声明对 Bibliocraft 的依赖。
字节码补丁按类名匹配,Bibliocraft 未安装时该类不存在、
补丁不会命中,因此不会导致启动失败 —— 但这是隐式行为。
若将来补丁加入了对已存在类的破坏性改写,则需要在
@Mod(dependencies = "required-after:Bibliocraft") 上补声明。
相关条目
源码
src/main/java/pl/asie/foamfix/coremod/patchers/FileRCEPatcher.java