Links
Tags
Creators
Details
1.21.11-b2
Compatibility
Required content
Changes
VeryMcProto 1.21.11-b2(C2S 接收链安全修复)
以纯 Paper 插件形式移植 Fabric 端协议 Mod(Servux / JEI / Syncmatica),面向 Minecraft 1.21.11 / Paper 1.21.11(Java 21)。本线为冻结维护线(ver/1.21.11 / ver/1.21.11-dev)。
⚠️ 安全修复(必更)
修复与上游 Servux 安全公告(2026-07-05 披露)同源的路径穿越任意文件写入漏洞(Critical Arbitrary File Write → RCE 向量):
- 漏洞:实验性 C2S schematic 文件接收链中,服务端直接用客户端网络包的
FileName字段构造落盘路径(Path.of/dir.resolve,零净化)——恶意客户端可用../或绝对路径逃逸plugins/VeryMcProto/schematics目录,在服务器任意位置写入 / 删除 / 读回解析文件;另有new Slice[客户端控长]的 OOM 向量。该线收包入口无注册名册门,任何在线玩家可直接触发。 - 修复(对齐上游 servux 0.9.5 判定:实验性接收功能超出核心范围,整体禁用移除):
Litematic-Transmit*服务端接收分流、receiveFileTransmit、SchematicBufferManager、handleClientPasteRequestPair整链物理删除;上传重组完成后无条件走handleClientPasteRequest(上游 0.9.5:139-153字面同构),任何玩家的 Transmit 帧均落入 paste 路径静默忽略SchematicBuffer保留仅作BUFFER_SIZE(16KiB)S2C 分片常量载体/servux litematic transmit命令加目录包含性守卫(Path.startsWith(Path)逐名元素比较,逃逸拒绝)——附带收口(该入口文件名为 op 命令参数,非网络输入)
- 不受影响:投影粘贴主路(
LitematicaPaste,内存 NBT + 权限/创造模式双门)、实体/方块实体查询、S2C 投递命令、Syncmatica、JEI 均不变。
验证
./gradlew build全绿(含 reobf 与版本注入);产物开箱终验:jar 内plugin.yml/version.properties= 1.21.11-b2,SchematicBufferManager类零残留- test 19/19 全绿(新增
LitematicaTransmitCommandGuardTest6/6:../逃逸 / 绝对路径 / 兄弟目录前缀 / 合法名 / 内部归一 / 空名)
产物
VeryMcProto-1.21.11-b2-reobf.jar—— 标准 Paper 1.21.11 服务器用此件(放入plugins/直接加载)VeryMcProto-1.21.11-b2.jar—— Mojang 映射版(开发用)
同日发布的 26.1 线同源修复:v26.1.2-b5;上一版本:v1.21.11-b1。
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:tyOxCfUJ:cGL9KGqu"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:tyOxCfUJ:cGL9KGqu"
}

