a1cnore/HackedGlory

GitHub: a1cnore/HackedGlory

针对 Vainglory 手游最终版本的逆向工程研究归档,涵盖二进制静态分析、协议解密还原、MITM 流量拦截、UI 解锁恢复和游戏资产提取的完整工具链与详细技术文档。

Stars: 22 | Forks: 2

# HackedGlory HackedGlory 是一个针对最终版 Vainglory 客户端的逆向工程归档与工具工作区,主要关注 **GameKindred v4.13.4 / build 147219**。它结合了 Ghidra 项目、反编译输出、静态分析报告、运行时拦截、协议解码、资产提取,以及用于 iOS 和 Android 实验的定向解锁库。 社区更新:[EU Discord](https://discord.gg/5Y3q7cTH) 这是一个研究仓库,而不是一个完善的 mod 发行版。大多数结果之所以有用,是因为它们解释了社区版客户端是如何被门控的、二进制文件中仍然存在什么,以及在受控测试条件下哪些部分可以被安全地检查或重新启用。 ## 目录 - [状态概览](#status-at-a-glance) - [从哪里开始](#where-to-start) - [已恢复的界面](#restored-surfaces) - [主要发现](#major-findings) - [Ghidra 与反编译输出](#ghidra-and-decompiled-output) - [运行时 MITM 与比赛解码](#runtime-mitm-and-match-decoding) - [解锁库](#unlock-libraries) - [资产与平衡数据](#assets-and-balance-data) - [仓库布局](#repository-layout) - [常见工作流](#common-workflows) - [工具与环境](#tooling-and-environment) - [开放工作](#open-work) - [许可证](#license) ## 状态概览 | 区域 | 当前状态 | 主要入口点 | | --- | --- | --- | | CE 特性门控 | 主门控映射到 92 个独立函数中的 164 条 BL 指令。直接全局修补是不安全的;定向 Hook 是有效途径。 | [`reports/ce_gate_analysis.md`](reports/ce_gate_analysis.md) | | iOS 解锁工作 | 侧边栏/个人资料/排位/社交/排行榜界面可以通过 `vg_unlock.dylib` 强制显示以供检查。 | [`mitm/vg_unlock/`](mitm/vg_unlock/) | | Android 解锁工作 | Loader-shim 注入是受支持的应用包修补方式。控制构建默认是安全的;补丁组必须有意启用。面向一致性的 Hook 集已在主要的 Honor Android 16 目标上验证,剩余的偏移量工作已被记录。 | [`mitm/vg_unlock_android/README.md`](mitm/vg_unlock_android/README.md),[`scripts/android/README.md`](scripts/android/README.md) | | 平台 JSON-RPC | 认证/会话/个人资料/社交/队伍/公会/物品栏/内容界面是从静态字符串、Ghidra 跟踪和 MITM 捕获中推断出来的。 | [`reports/vainglory_static_report.md`](reports/vainglory_static_report.md),[`reports/method_schema_sheet.md`](reports/method_schema_sheet.md),[`reports/offline_protocol_surface.md`](reports/offline_protocol_surface.md) | | 比赛内协议 | TCP 成帧、Blowfish ECB 和每场比赛的密钥派生已被解码。更高级别的计分板重放解码正在积极进行基准测试。 | [`reports/protocol_decryption_writeup.md`](reports/protocol_decryption_writeup.md),[`mitm/match_decryption/`](mitm/match_decryption/) | | 比赛重放语义 | 最新记录的自动研究指标解码了 7 场完整比赛中有用的计分板状态:7/7 的获胜信号,42/42 活跃玩家的金币和 XP,41/42 的死亡时间线,27 名玩家的击杀数,35 名玩家的升级情况,以及 41 名玩家的重放就绪数据行。 | [`mitm/match_decryption/autoresearch.md`](mitm/match_decryption/autoresearch.md) | | CFF0 平衡数据 | 客户端侧的游戏玩法定义已被定位、解密,并提取到生成的平衡数据库中。 | [`reports/cff0_decryption_and_balance_extraction.md`](reports/cff0_decryption_and_balance_extraction.md),[`reports/generated/vainglory_balance_db.json`](reports/generated/vainglory_balance_db.json) | | 资产和网格 | RSC0/CFF0 资产结构已被记录。纹理和网格提取工具已经存在,并提交了许多提取的 OBJ/WebP 产物以供检查。 | [`reports/3d_mesh_extraction.md`](reports/3d_mesh_extraction.md),[`reports/hero_assets_inventory.md`](reports/hero_assets_inventory.md) | | 反编译语料库 | 已提交 iOS `GameKindred` 和 Android `libGameKindred.so` 的 Ghidra 项目及生成的类 C 输出,包括结构化的分割输出。 | [`ghidra_projects/`](ghidra_projects/),[`ghidra_scripts/`](ghidra_scripts/) | ## 从哪里开始 请先阅读顶级报告,然后再深入到具体的工具目录。 - 关于“CE 禁用了什么?”,请从 [`reports/ce_gate_analysis.md`](reports/ce_gate_analysis.md) 开始。 - 关于“比赛内协议是如何解密的?”,请从 [`reports/protocol_decryption_writeup.md`](reports/protocol_decryption_writeup.md) 开始。 - 关于“客户端可以向后端请求什么?”,请从 [`reports/method_schema_sheet.md`](reports/method_schema_sheet.md) 和 [`reports/offline_protocol_surface.md`](reports/offline_protocol_surface.md) 开始。 - 关于“我如何捕获或检查流量?”,请从 [`mitm/README.md`](mitm/README.md) 开始。 - 关于“我如何检查类似重放的比赛状态?”,请从 [`mitm/match_decryption/autoresearch.md`](mitm/match_decryption/autoresearch.md) 开始。 - 关于“英雄属性、物品、天赋和游戏模式在哪里?”,请从 [`reports/cff0_decryption_and_balance_extraction.md`](reports/cff0_decryption_and_balance_extraction.md) 开始。 - 关于“Android 注入的状态是什么?”,请从 [`mitm/vg_unlock_android/README.md`](mitm/vg_unlock_android/README.md) 和 [`scripts/android/README.md`](scripts/android/README.md) 开始。 较早的笔记可能保留了早期的假设。当文档发生冲突时,请优先使用上面列出的较新的定向报告,而不是广泛的清单文件。 ## 已恢复的界面 当前的解锁工作可以显示原版社区版隐藏或抑制的 UI。这些截图是检查证据,并不意味着每个恢复的面板都完全有实时的服务器数据支撑。

Trophy UI screenshot Leaderboard UI screenshot Social UI screenshot

Academy screenshot Party screenshot Profile screenshot

Ranked screenshot Stats screenshot Sidebar screenshot

来自 Honor Magic 6 Pro 测试目标的 Android 一致性截图:

Android main menu and sidebar Android full profile panel with ranked tabs

## 主要发现 ### 社区版门控 社区版依赖于一个中心门控函数 `FUN_100131560`,该函数被硬编码为 `return 1`。静态分析目前将其映射到 **92 个独立函数中的 164 条 BL 指令**。 这就是 CE 在 UI 级别看起来被“移除”的核心原因,尽管许多系统仍然存在于二进制文件中。该门控参与了侧边栏/选项卡注册、个人资料和排位视图、队伍/社交/公会界面、市场和奖励显示、排行榜流程、赛季、队列/游玩路径,以及重放/观战相关代码。 实际结果: - 门控的全局修补范围过广,会激活尚未准备好的依赖路径。 - 定向 Hook 比假设每个受门控控制的调用者都具有相同前提条件更可靠。 - 某些 UI 仅需要可见性或注册更改。 - 某些 UI 需要数据填充 Hook 或 CE 不再请求的后端 Payload。 - Android 需要单独的偏移量和布局验证;iOS 偏移量不能盲目复制。 有关函数级别的映射、Hook 清单和优先级列表,请参见 [`reports/ce_gate_analysis.md`](reports/ce_gate_analysis.md)。 ### 菜单与 UI 控制 目前对 E.V.I.L. 引擎菜单系统的记录已经足够完善,可以跟踪多个屏幕从网络/状态输入到可见面板的过程。当前的报告涵盖了事件哈希、面板切换、本地化查找、好友列表解析、排行榜数据流、特性标志以及用于修补的控制点。 从 [`reports/menu_ui_control_guide.md`](reports/menu_ui_control_guide.md) 开始。生成的支持跟踪位于 [`reports/generated/sidebar_trace.md`](reports/generated/sidebar_trace.md)、[`reports/generated/sidebar_gates.md`](reports/generated/sidebar_gates.md)、[`reports/generated/leaderboard_analysis.md`](reports/generated/leaderboard_analysis.md) 和 [`reports/generated/ui_event_dispatch.md`](reports/generated/ui_event_dispatch.md)。 ### 平台层面 客户端强烈表明使用 HTTPS JSON-RPC 进行身份验证、会话引导、社交、队伍、公会、个人资料、排位、物品栏、清单和匹配流程。该仓库包含方法集群、推断的模式、字段说明、网络跟踪和一个 Mock 服务器骨架。 重要参考: - [`reports/vainglory_static_report.md`](reports/vainglory_static_report.md):关于主机、方法、字符串和数据形态的广泛静态报告 - [`reports/method_schema_sheet.md`](reports/method_schema_sheet.md):分组方法和 Payload 字段说明 - [`reports/offline_protocol_surface.md`](reports/offline_protocol_surface.md):实用的离线/Mock 能力评估 - [`reports/generated/rpc_schema_report.md`](reports/generated/rpc_schema_report.md) 和 [`reports/generated/rpc_schemas.json`](reports/generated/rpc_schemas.json):生成的模式产物 - [`scripts/mock_platform_server.py`](scripts/mock_platform_server.py):用于受控 JSON-RPC 实验的本地 Mock/桩服务器 ### 比赛内传输 当前最佳的传输解释是: - 2 字节大端序 TCP 成帧 - Blowfish ECB 加密 - 使用 `MD5(salt + match_id)` 进行的按比赛密钥派生 - 客户端实现中的 ARM64 小端序字顺序处理 - 已解码的操作码层面,包含有效的数据包分析、仪表板和比赛摘要 权威说明请见 [`reports/protocol_decryption_writeup.md`](reports/protocol_decryption_writeup.md)。一些较早的协议说明保留了早期的 XOR 或部分传输假设;请将 Blowfish/MD5 说明视为当前结果。 ### 计分板重放解码 比赛解密工作已经超越了“数据包能否解密?”的阶段,进入了重放可用的比赛状态。当前的基准测试侧重于随时间变化的计分板状态:等级、击杀、死亡、补刀数、总金币、总 XP 和获胜信号。 ## Ghidra 与反编译输出 Ghidra 是该仓库的静态分析支柱。当前的仓库同时包含脚本和生成的反编译器输出,这使得无需在本地重建项目即可检查许多发现。 ### 项目与输出 - [`ghidra_projects/GameKindred_decompile.gpr`](ghidra_projects/GameKindred_decompile.gpr):iOS Mach-O 项目 - [`ghidra_projects/GameKindred_decompile_output/GameKindred.c`](ghidra_projects/GameKindred_decompile_output/GameKindred.c):全程序 iOS 反编译器输出 - [`ghidra_projects/GameKindred_decompile_output/structured/`](ghidra_projects/GameKindred_decompile_output/structured/):按函数、类、头文件和面向 UI 的分组拆分的 iOS 输出 - [`ghidra_projects/GameKindred_android_decompile.gpr`](ghidra_projects/GameKindred_android_decompile.gpr):Android `libGameKindred.so` 项目 - [`ghidra_projects/GameKindred_android_decompile_output/libGameKindred.c`](ghidra_projects/GameKindred_android_decompile_output/libGameKindred.c):全程序 Android 反编译器输出 - [`ghidra_projects/GameKindred_android_decompile_output/structured/`](ghidra_projects/GameKindred_android_decompile_output/structured/):拆分的 Android 输出 - [`ghidra_scripts/DecompileAllToC.java`](ghidra_scripts/DecompileAllToC.java) 和 [`ghidra_scripts/DecompileAndroidToC.java`](ghidra_scripts/DecompileAndroidToC.java):导出脚本 ### 分析脚本 [`scripts/`](scripts/) 目录包含用于生成报告的定向 Ghidra 自动化和解析器。代表性类别: - 门控与 UI 跟踪:`GhidraFindFeatureConsumers.java`、`GhidraVisibilityGates.java`、`GhidraSidebarTrace.java`、`GhidraSidebarGates.java` - 个人资料/排位/奖杯工作:`GhidraProfile*.java`、`GhidraTrophy*.java`、`GhidraSkillTierAnalysis.java` - 协议与网络:`GhidraMatchProtocol.java`、`GhidraGameConnect.java`、`GhidraFindGameTCP*.java`、`GhidraRpcSchemaExtractor.java` - CFF0/平衡提取:`GhidraCFF0Analysis.java`、`GhidraCFF0Deep.java`、`decrypt_cff0.py`、`extract_balance_db.py` - Android 偏移量恢复:[`scripts/android/`](scripts/android/) 工作流被有意拆分: - Ghidra 发现代码路径、函数指针、字段偏移量和候选协议结构。 - Python 脚本将提取的数据转化为报告、JSON 清单、解码的比赛和仪表板。 - MITM/运行时工具根据真实的客户端行为验证静态假设。 - 解锁库仅在路径被充分理解以进行测试后才应用狭窄的 Hook。 ## 运行时 MITM 与比赛解码 运行时工具主要位于 [`mitm/`](mitm/) 下。MITM 堆栈捕获并修改平台 JSON-RPC 流量,在受控环境中重定向 DNS,代理原始游戏 TCP 会话,并记录按比赛捕获的数据包。 关键组件: - [`mit/vg_interceptor.py`](mitm/vg_interceptor.py):用于 JSON-RPC 日志记录、分类、响应修补和比赛代理设置的 mitmproxy 插件 - [`mitm/vg_game_proxy.py`](mitm/vg_game_proxy.py):原始 TCP 游戏服务器代理 - [`mitm/vg_dns.py`](mitm/vg_dns.py):DNS 重定向助手 - [`mitm/vg_log_viewer.py`](mitm/vg_log_viewer.py):CLI JSONL 查看器 - [`mitm/vg_jsonl_viewer.py`](mitm/vg_jsonl_viewer.py):浏览器 JSONL 查看器 - [`mitm/vg_dashboard_server.py`](mitm/vg_dashboard_server.py) 和 [`mitm/vg_match_dashboard.py`](mitm/vg_match_dashboard.py):比赛/仪表板助手 - [`mitm/matches/`](mitm/matches/):捕获的数据包产物 - [`mitm/match_decryption/`](mitm/match_decryption/):专注于比赛解密的工作区、仪表板、评估器、解码捕获和自动研究笔记 经典的 MITM 流程记录在 [`mitm/README.md`](mitm/README.md) 中。它使用 DNS 欺骗、两个 `mitmdump` 监听器、iOS 上的 fishhook SSL 绕过,以及用于比赛内流量的动态 TCP 代理。 ## 解锁库 ### iOS iOS 解锁库位于 [`mitm/vg_unlock/`](mitm/vg_unlock/)。它以 `GameKindred` Mach-O 为目标,并为恢复 UI 检查实现了狭窄的运行时 Hook。 当前已记录的恢复/可检查界面包括: - 诸如学院、队伍和社交等侧边栏面板 - 背包和与奖杯相关的 UI 路径 - 完整的个人资料卡界面,包括货币/个人资料/排位/统计元素 - 排位和统计选项卡 - 排行榜可见性和与个人资料相关的社交界面 其中一些视图在可见性上是完整的,但在数据上是不完整的。如果面板依赖于 CE 从未请求的后端响应,那么解锁面板只是第一步。 ### Android Android 移植位于 [`mitm/vg_unlock_android/`](mitm/vg_unlock_android/) 并以 `libGameKindred.so` 为目标。 支持的注入模式是 loader-shim 路径: - 将原版 `lib/arm64-v8a/libGameKindred.so` 重命名为 `libGameKindred_real.so` - 安装一个 shim 作为 `libGameKindred.so` - 让 shim 加载真实库,然后再加载 `libvg_unlock.so` - 通过 shim 转发导出的 `Java_*` JNI 入口点 - 避免修改 smali,并默认避免传统的 `DT_NEEDED` 重写 重要的 Android 注意事项: - 默认的 Android 构建是一个禁用了所有补丁组的控制构建。 - 补丁组有意通过构建标志(如 `--parser-patches`、`--profile-redirects`、`--guest-bypass` 和 `--experimental-hooks`)选择加入。 - 传统的 `DT_NEEDED` 重写路径默认被阻止,因为它在至少一台测试设备上产生了启动崩溃。 - iOS 字段偏移量不能直接移植。已确认的 Android 布局差异记录在 Android README 和 Ghidra 笔记中。 - 主要测试一致性目标:Android 16 上的 Honor Magic 6 Pro / BVL-N49。 - Xiaomi Pad 6 测试说明了为什么 loader-shim 路径是唯一支持的注入模式。 构建和修补细节在 [`mitm/vg_unlock_android/README.md`](mitm/vg_unlock_android/README.md) 中。 ## 资产与平衡数据 资产和数据方面已发展成为其独立的研究层。 ### CFF0 游戏玩法定义 游戏平衡数据存储在 `Payload/GameKindred.app/Data/` 下的 CFF0 文件中的客户端侧,而不是在运行时作为普通的实时后端数据获取。当前的 CFF0 工作记录了: - 942 个 CFF0 定义文件 - 应用 `Data/` 树中的 48,187 个总文件 - 加密的 `INST` 节、`DEF0` 元数据、`PTCH` 重定位记录和 `SYMB` 名称 - 由客户端侧密钥表提供密钥的 XOR 流解密 - 提取的英雄、物品、天赋、游戏模式、清单、商店、小兵、教程和效果 关键输出: - [`reports/cff0_decryption_and_balance_extraction.md`](reports/cff0_decryption_and_balance_extraction.md) - [`reports/generated/hero_balance_data.json`](reports/generated/hero_balance_data.json) - [`reports/generated/vainglory_balance_db.json`](reports/generated/vainglory_balance_db.json) - [`scripts/decrypt_cff0.py`](scripts/decrypt_cff0.py) - [`scripts/extract_balance_db.py`](scripts/extract_balance_db.py) ### 隐藏英雄与清单工作 [`reports/adding_hidden_heroes_to_manifest.md`](reports/adding_hidden_heroes_to_manifest.md) 记录了 HeroManifest 结构、CFF0 加密/解密路径,以及将隐藏英雄安全添加到清单所需的任务。 ### RSC0 资产、纹理和网格 RSC0 容器包含大部分美术/资源表面,包括着色器、模型和纹理引用。当前的提取工作包括: - [`reports/3d_mesh_extraction.md`](reports/3d_mesh_extraction.md):RSC0 网格格式说明和提取尝试 - [`reports/hero_assets_inventory.md`](reports/hero_assets_inventory.md):英雄肖像、图集、应用包资产和外部图像选项的当前状态 - [`reports/extracted_assets/`](reports/extracted_assets/):生成的图集/纹理样本 - [`extracted_meshes/`](extracted_meshes/):提交的 OBJ 提取实验 - [`scripts/extract_meshes_v2.py`](scripts/extract_meshes_v2.py)、[`scripts/rsc0_mesh_extractor.py`](scripts/rsc0_mesh_extractor.py)、[`scripts/extract_textures.py`](scripts/extract_textures.py) 和 [`scripts/slice_atlas.py`](scripts/slice_atlas.py) 纹理和网格提取是有用的,但仍然不完整。报告明确指出了哪些可以正确渲染,哪些仅被部分理解,以及哪些解析器假设仍在测试中。 ## 仓库布局 | 路径 | 目的 | | --- | --- | | [`reports/`](reports/) | 人类可读的发现、调查摘要和生成的报告产物 | | [`reports/generated/`](reports/generated/) | 机器生成的清单、模式报告、跟踪以及提取的 JSON/TXT 产物 | | [`reports/decoded_matches/`](reports/decoded_matches/) | 从比赛解密工作中提升的已解码数据包日志和按比赛的摘要 | | [`mitm/`](mitm/) | 运行时流量捕获、响应修改、仪表板、DNS/代理助手和解锁库 | | [`mitm/match_decryption/`](mitm/match_decryption/) | 专注的比赛内协议工作区,包含解码器、仪表板、基准测试、捕获和自动研究日志 | | [`mitm/vg_unlock/`](mitm/vg_unlock/) | iOS 解锁 dylib 源码和构建助手 | | [`mitm/vg_unlock_android/`](mitm/vg_unlock_android/) | Android 解锁库、加载器 shim、应用包修补工具和 Android README | | [`scripts/`](scripts/) | Ghidra 脚本、解码器、解析器、资产提取器、Frida 助手和 Mock 服务器工具 | | [`scripts/android/`](scripts/android/) | 特定于 Android 的 Ghidra 偏移量验证助手 | | [`ghidra_projects/`](ghidra_projects/) | Ghidra 项目文件以及为 iOS 和 Android 提交的反编译器导出 | | [`ghidra_scripts/`](ghidra_scripts/) | 无头反编译器导出脚本 | | [`images/`](images/) | README 截图和已恢复界面的证据 | | [`extracted_meshes/`](extracted_meshes/) | OBJ 网格提取实验 | | [`Payload/`](Payload/) | 供分析脚本使用的本地提取的 iOS 应用 Payload | ## 常见工作流 ### 检查生成的报告 大多数高级问题无需运行工具即可解答: ``` open reports/ce_gate_analysis.md open reports/protocol_decryption_writeup.md open reports/cff0_decryption_and_balance_extraction.md open reports/menu_ui_control_guide.md ``` ### 运行 MITM 堆栈 请遵循 [`mitm/README.md`](mitm/README.md)。简短版本如下: ``` cd mitm sudo python3 vg_dns.py --host-ip 192.168.64.1 ``` 然后运行文档中描述的两个用于端口 `8000` 和 `443` 的 `mitmdump` 反向代理并加载 `vg_interceptor.py`。 ### 检查 JSON-RPC 日志 ``` cd mitm python3 vg_jsonl_viewer.py --file vg_traffic.jsonl --open ``` ### 运行比赛解码器基准测试 ``` cd mitm/match_decryption ./autoresearch.sh ``` 这将为计分板重放覆盖范围和更广泛的有用解析诊断输出 `METRIC ...` 行。 ### 解码比赛捕获 ``` cd mitm/match_decryption python3 scripts/decode_match_packets.py matches//packets.bin ``` 使用同一目录中的仪表板助手进行更高级别的比赛状态检查。 ### 构建 Android 解锁产物 默认控制构建: ``` cd mitm/vg_unlock_android ./build.sh ``` 定向测试构建: ``` cd mitm/vg_unlock_android ./build.sh --experimental-hooks --parser-patches --profile-redirects --guest-bypass ``` 通过 loader shim 修补 XAPK: ``` python3 mitm/vg_unlock_android/patch_xapk.py /path/to/Vainglory_4.13.4.xapk --sign-debug ``` 在启用补丁组之前,请阅读 [`mitm/vg_unlock_android/README.md`](mitm/vg_unlock_android/README.md)。 ### 提取平衡数据 ``` python3 scripts/decrypt_cff0.py python3 scripts/extract_balance_db.py ``` 检查 [`reports/generated/`](reports/generated/) 下的生成文件。 ## 工具与环境 常用工具: - macOS,用于 iOS Mach-O 分析和现有的本地 Ghidra 工作流 - Python 3 - Ghidra 12.x - mitmproxy / `mitmdump` - Frida,用于动态插桩助手 - Android NDK,用于 `mitm/vg_unlock_android` - 受控的 iOS 虚拟机/设备和 Android 测试设备,用于运行时验证 整个仓库没有单一的引导命令。项目按研究层组织: - `scripts/`、`ghidra_scripts/`、`ghidra_projects/` 和 `reports/` 中的静态分析 - `mitm/` 中的运行时捕获和验证 - `mitm/match_decryption/` 中的比赛内协议解码 - `mitm/vg_unlock/` 和 `mitm/vg_unlock_android/` 中特定于平台的解锁实验 - 通过 `scripts/` 和 `reports/generated/` 进行的资产和平衡提取 ## 许可证 本项目基于 [MIT 许可证](https://opensource.org/licenses/MIT) 发布。 特此免费授予任何获得本软件副本和相关文档文件的人不受限制地处置本软件的权利,包括不受限制地使用、复制、修改、合并、发布、分发、再授权和/或出售本软件副本的权利,但须符合以下条件: 上述版权声明和本许可声明应包含在本软件的所有副本或大部分内容中。 本软件按“原样”提供,不提供任何形式的明示或暗示保证,包括但不限于适销性、特定用途适用性和非侵权性的保证。
标签:Android Hook, API接口, CSV导出, C++反编译, Docker支持, dylib注入, Frida, Ghidra, HackedGlory, iOS越狱开发, JS文件枚举, MITM, Vainglory, 中间人攻击, 二进制分析, 云安全监控, 云安全运维, 云资产清单, 内存修补, 协议分析, 客户端加密, 开源安全工具, 数据可视化, 权限提升, 游戏安全, 游戏客户端修改, 游戏私服, 特征门控绕过, 目录枚举, 移动安全, 网络协议解码, 资产提取, 逆向工程, 逆向工程平台, 防御绕过, 静态分析