Liberty - 客户端安全与隐私

Liberty - 客户端安全与隐私

一个面向Fabric的客户端安全、隐私及防恶意破坏工具包。阻止遥测,过滤危险网络载荷,保护主播信息,并在本地限制数据包泛滥。

Liberty 横幅

Liberty 是一款用于 Minecraft 的客户端安全、隐私和防破坏工具包。作为一款仅限客户端的 Fabric 模组,Liberty 保护你的客户端免受基于网络的漏洞利用、私人数据泄露、服务器端追踪以及聊天或数据包形式的恶意破坏——且无需任何服务器端组件。

无论你是在公共多人网络上游玩、向观众直播,还是审计服务器行为,Liberty 都能让你对客户端发送、接收和显示的内容进行精细控制。


反作弊与规则合规

Liberty 被设计为对多人网络和反作弊系统(例如 GrimAC、Vulcan、Matrix 等)100% 安全:

  • 仅本地处理: 诸如用户名/皮肤遮蔽、坐标覆盖层和 F3 信息修订等功能元素纯粹是装饰性的,并在你的客户端本地处理。
  • 无数据包欺骗: Liberty 不会修改发往服务器的游戏或移动数据包。你不会因移动作弊或无效交互而触发误判封禁。
  • 安全的速率限制: 数据包速率限制仅过滤传入流量(如声音、粒子或记分板数据包刷屏),以防止你的游戏客户端冻结。它不会改变你的传出连接状态。

展示 / 截图

游戏内配置界面 直播模式 HUD 遮蔽
配置界面 HUD 遮蔽
通过 Cloth Config 实现的精细配置菜单 经过修订的 F3 界面,显示坐标已被遮蔽
自定义资源包提示 服务器信息检查器
自定义资源包提示 服务器信息检查器
在接收服务器资源前显示资源包大小探测的提示 右键点击服务器诊断面板,显示已解析的 IP 和连接审计

主要功能领域

Liberty 将其 60 多个可配置选项组织为五个核心领域:

1. 数据隐私与遥测控制

  • 阻止遥测: 停止所有发送至 Microsoft 和 Mojang 的传出遥测流量。
  • 日志与崩溃报告修订: 自动从日志和崩溃报告中清除个人身份信息(PII)(包括你的操作系统用户名、主目录和本地 IP 地址)。
  • 草稿保护: 防止在键入时向服务器发送草稿消息(包括以 # 开头的命令草稿)。
  • 悬停时 Ping: 仅在鼠标悬停时才 Ping 服务器列表中的服务器,以减少被动追踪。
  • Cookie 隔离: 防止在服务器转移时共享 Cookie 数据。

2. 网络与资产安全

  • SSRF 沙箱: 扫描资源包 URL,并阻止源自私有、本地或回环 IP 地址的下载。
  • 安全玩家皮肤: 将皮肤下载限制在受信任的 Mojang 域名,并通过严格的 HTTPS 连接,阻止通过自定义资产服务器进行的潜在网络追踪。
  • 确认与提示: 拦截服务器发起的转移、聊天链接和命令执行,在采取行动前提示你征求同意。
  • 聊天签名: 在聊天消息中添加彩色指示器,以显示消息是否由 Mojang 的认证系统正式签名。

3. 防破坏与速率限制

  • 刷屏限制器: 对过量的声音、粒子、标题和记分板传入数据包进行速率限制,以防止性能下降或客户端崩溃。
  • 界面清理: 对重复的连续聊天行进行分组(例如 [x5]),并聚合相同的 Boss 血条(例如 Boss 名称 (x3)),以保持屏幕清晰可读。
  • 地图与界面保护: 丢弃地图数据刷屏产生的冗余 GPU 纹理上传,并忽略容器打开数据包刷屏。

4. 直播者保护

  • 坐标与系统信息遮蔽: 限制 F3 调试信息仅显示 Y 轴(高度)或完全隐藏。隐藏 FPS、硬件规格和基础坐标。
  • 基岩隐藏: 自动将基岩纹理替换为石头或深板岩,以防止通过自然地形图案泄露坐标。
  • 身份混淆: 在所有渲染路径(包括玩家 Tab 列表、记分板、告示牌、书本和聊天)中,用可自定义的假身份来替换你的用户名、皮肤和聊天提及。

5. 诊断与服务器审计

  • 服务器检查器: 在服务器列表中添加右键点击诊断面板,显示已解析的服务器 IP、Ping 行为和活动的安全覆盖规则。
  • Cookie 审计日志: 将多人游戏服务器设置的 Cookie 的键(而非载荷)记录到本地 JSON 日志中。
  • 转移审计日志: 以 CSV 格式记录所有服务器间转移的历史。

命令与配置

游戏内命令速查表

Liberty 配备了一个 /liberty 命令行界面,用于管理设置、日志和诊断:

命令 作用
/liberty status 查看按类别分组的所有选项的当前状态。
/liberty toggle <option> 启用或禁用特定功能。
/liberty log 查看最近 100 条安全事件(例如,被阻止的链接、SSRF 标志)。
/liberty override add <server> <option> <value> 定义加入时自动应用的每服务器配置规则。
/liberty friend add/remove <name> 管理允许白名单私聊的玩家白名单。
/liberty diag 运行客户端诊断以验证 Mixin 完整性,并检查是否强制启用了安全聊天。

配置界面

  • 图形界面: 如果你安装了 Mod Menu 和 Cloth Config,你可以通过标准的游戏内 GUI(主菜单 > 模组 > Liberty > 配置)配置所有选项。
  • 预设: 使用内置预设快速配置 Liberty(例如,直播者最大保护、隐私最大化 和 防破坏防御),可在配置菜单中找到。
  • 本地 JSON 文件: 在游戏关闭时直接编辑 <游戏目录>/config/liberty.json。

安装与依赖

Liberty 是一个客户端模组。请勿将其安装在专用服务器上。

  1. 安装 Fabric Loader (>= 0.19.3)。
  2. 下载 Fabric API 的 jar 文件并将其放入你的 mods/ 目录。
  3. (推荐)安装 Mod Menu 和 Cloth Config 以启用游戏内设置界面。
  4. 将 liberty-1.0.0.jar 放入你的 mods/ 文件夹并启动游戏。

版本兼容性

  • Minecraft 版本: 26.2
  • 所需 Fabric Loader: >= 0.19.3
  • 所需 Fabric API: >= 0.153.0+26.2
  • 推荐 Cloth Config: >= 26.2.155
  • 推荐 Mod Menu: >= 20.0.0-beta.4

本地数据与透明度

Liberty 遵循本地优先的理念。它不会向外部服务器发送任何数据,并主动阻止原版遥测。所有数据都保存在本地:

  • config/liberty.json:你的选项和运行时统计信息。
  • config/liberty-cookie-audit.json:由服务器设置的、经过审计的 Cookie 键(不包含载荷)。
  • config/liberty-transfers.csv:服务器转移重定向的审计日志。
  • config/liberty-backups/:自动生成你的设置备份。

注意:如果启用了 显示资源包大小,Liberty 会在你下载资源包之前向其主机发出一个轻量的 HTTP HEAD 请求来计算文件大小。