基本信息
我的世界Java版本
1.20–1.20.2
平台
Fabric
运行环境
其他链接
搬运团队
详情信息
许可证 MIT
发布于 8 months ago
更新于 9 months ago
模组检测阻止器
⚠️ 目前请停止使用此模组。已发现另一种检测模组的方法,我目前无法解决它。使用此模组可能会导致您被封禁。⚠️
一个简单的模组,可防止安全漏洞,该漏洞允许服务器检测客户端上安装了哪些模组。
虽然我会尽力保持此模组的更新,但服务器管理员可能会找到一种新的方法来访问您的模组列表。始终建议您遵守服务器规则。
漏洞
Minecraft 具有一项功能,允许通过用户设置的键绑定或翻译键来指定文本(在聊天中、标志上或在 boss 栏中)。然后,客户端将使用存储的值替换翻译键或键绑定。服务器可以通过向客户端提供带有此类占位符的标志来滥用此功能(例如 Sodium:sodium.option_impact.low
)。通过立即关闭标志屏幕,客户端会将编辑后的文本发送到服务器,而不会看到打开标志屏幕。然后,服务器可以通过检查您的客户端是否将占位符替换为相应的文本(sodium.option_impact.low -> Low
)来检测您是否安装了该特定模组。如果您没有安装 Sodium,则占位符将保留在那里(sodium.option_impact.low -> sodium.option_impact.low
)。
这在铁砧屏幕上也有效。服务器可以提示您打开铁砧屏幕,在重命名槽中有一个翻译键作为其名称的物品。然后,客户端将物品重命名为相应的值并向服务器发送更新。(非常感谢 Frog,在 discord 上的@croaak
,发现了这一点)
此检测方法适用于任何具有自定义翻译的模组。
修复
此模组通过在标志上不解析任何翻译或键绑定占位符(除了原版的)来修复此问题。这使得服务器无法使用此方法检测已安装的模组。
要验证此方法是否有效,您可以在 测试世界 中进行测试。