我的天啊GPT-6 Astra大人
一楼不给看本帖最后由 myonion 于 2026-11-7 18:53 编辑
刚刚闲着打算把新dlc的地图xs脚本扒了,于是+debugRandomMaps启动打算古法CE搜内存从XS Debugger提取脚本,然后不知道是被反作弊误伤了,还是官方堵上了debugger解密的这个漏洞,一用CE搜索内存3DE就会自动关闭,无奈只好向GPT大人求助看看有没什么不用CE扫描读内存的方法,没想到...
可以,已经逆向验证成功。你这个版本的 bpHMLivonianWar.xs 使用 AES-256-CBC。我从游戏的解密流程和你已有的转储中确认了密钥与 IV,再单独解密安装目录里的文件。得到的 109,790 字节与之前从 XS Debugger 转储提取的明文逐字节相同。
[下载离线解密工具 Decrypt-AoE3Map.ps1]
以后解地图,只需要磁盘上的 .xs 或 .xml 文件。 在工具所在文件夹打开 PowerShell,运行下面的命令。它会在当前文件夹生成 bpHMLivonianWar.decrypted.xs,可以直接用 Notepad++ 打开。换地图时只需改最后的文件名。
powershell.exe -NoProfile -ExecutionPolicy Bypass -File ".\Decrypt-AoE3Map.ps1" "D:\Program Files (x86)\Steam\steamapps\common\AoE3DE\Game\RandMaps\bpHMLivonianWar.xs"你之前看到的 18 字节差额也有了确切解释。利沃尼亚战争的文件在加密前,依次放入以下内容,然后对整体做 CBC 加密:
内容字节数本例
XS 源码109,790包括注释和原始换行
补零1400 重复 14 次
源码长度4DE AC 01 00,按小端序读取就是 109,790
合计109,808恰好是 16 字节的整数倍
仅凭一对明文和密文,无法直接算出 AES-256 密钥。这次能验证解法,是因为转储中还保留了游戏使用的密钥对象。你本机的 100.19.18658.0 版本里,我确认了 3 组密钥和 IV,工具会自动尝试并校验长度与补零。在安装目录中,199 个 .xs 和 199 个 .xml 通过了这项格式校验。其中利沃尼亚战争还额外做了独立明文的逐字节核对。
神,降临{:7_237:}{:7_237:}{:7_237:}甚至可以做成一键解密cmd
另外这主楼的等级限制内容和回复的附件怎么能直接从新帖导读偷窥{:4_89:}
{:7_237:}{:7_237:}{:7_237:}居然把密匙算出来了?
本帖最后由 myonion 于 2026-11-9 09:49 编辑
另附五份决定版xml的可用标签、键、值对照表。
真是酣畅淋漓的大调查啊,也是让我爽当科技野蛮人了{:7_282:}{:7_237:}{:7_314:}
这些内容暂未经人工验证,不排除存在幻觉的可能性{:4_88:}
决定版本地mod系统的联机安全性检查规则
如题,决定版从Update 20322起给mod管理器加入了联机安全性检查,然后在忘了哪个版本里又收窄了Art文件夹的安全限制。总之官方从未给出过完整的判定原则,所以让ai扒了下主程序的文件扫描规则,虽然在线mod管理系统大概也是相同的逻辑,但原则上,下列规则只代表本地mod管理器的放行逻辑。
通过检查的mod可以在多人联机模式下使用,且不需要房主/其他参加者安装有相同的模组。
哪些文件通过
下表列出无须检查是否覆盖原版的路径规则。父目录和子目录的扫描可以重叠,同一个文件有一条白名单规则命中即可。路径、扩展名和特殊文件名按本版登记的写法列出。
mod 内目录 允许规则
Art/ 以 `.ddt` 结尾。其他 Art 文件另有“新增资源”白名单,见下。
Data/ 以 `.png` 结尾,或命中下列 Data 白名单。
Data/wpfg/ `.ttf`、`.png`、`.xaml`。
Data/fonts/ `.ttf`、`.xml`、`.xmb`。
Sound/ `.xml`、`.xmb`、`.wav`、`.mp3`。
Scenario/ .age3scn、`.age3xscn`、`.age3yscn`、`.xml`、`.xmb`
RandMaps/`.xml`、`.xmb`、`.xs`、`.set`。因此地图附带的 `<地图名>.mods.xml` 也命中。允许表使用的是 mod 的 `RandMaps/` 目录编号 64。游戏安装目录里的 `Game/RandMaps/` 是另一个编号 35,不要照抄安装路径来打包。
Game/Movies/ `.bk2`。
Game/AI/ .xs,但 aiHumanAssists.xs 被明确排除
mod 根目录 `info.json`、`thumbnail.png` 在建立待检查文件表时跳过。这个白名单只针对根目录的这两个文件。
Data 白名单
路径末尾匹配下列名称之一即可;每项也接受再加一层 `.xmb` 的形式,例如 `stringmods.xml.xmb`。
[*]- `stringtabley.xml`、`randommapstringsy.xml`、`randomnamestrings.xml`
[*]- `unithelpstrings.xml`、`unithelpstringsx.xml`、`unithelpstringsy.xml`、`stringmods.xml`
[*]- `randomnames.xml`、`randomnamemods.xml`、`lightingmods.xml`、`visualmods.xml`
另外白名单还包含:Data 下的路径含有 `uidecktree\decktreedata_` 或 `uitechtree\techtreedata_` 的科技树/卡组树xml文件。
Art 新增资源
Art 中未被上述规则放行的文件,还会检查游戏基础资源中有没有同路径文件。程序既查散装文件也查资源包,同时检查带/不带末尾 `.xmb` 的两个名称。如果两种名称都不存在,会将该文件标为通过。因此新增专用模型或美术 XML 可以通过。简单来说就是只要覆盖了游戏原有的美术xml文件就不能通过联机安全检查。
ai生成的原文见附件:
页:
[1]