Commit Graph

9 Commits (ee98c899c3a393431230cf3b3982373f37147b8f)

Author SHA1 Message Date
Gabriel Olivato 72397812cd Ignore a previous symbol mapping when names are randomised
Reusing the previous build's mapping returns every pre-existing symbol to its
old name, which silently undoes the randomisation while every build-side check
still passes. Deleting the mapping file before each build worked but left the
guarantee resting on the caller.
2026-08-19 18:05:15 +01:00
Gabriel Olivato dcf38b3f0f Add symbolObfusSettings.nameRandomSeed to randomise generated symbol names
Upstream assigns obfuscated names from a monotonic base-52 counter, so two
builds of the same source produce an identical mapping and a build with a
small source change keeps almost every previous name. An attacker who
reverses build N therefore carries that work forward to build N+1.

nameRandomSeed = 0 keeps the original counter, so this is opt-in and the
default behaviour is unchanged.
2026-08-19 17:53:01 +01:00
walon 6c543d233a add copyright header to all cs files. 2025-10-29 20:40:37 +08:00
walon d52a9e7016 Code Clean Up 2025-08-03 12:37:44 +08:00
walon 5cdc4c9f92 修复符号混淆开启Debug时由于没有读取mapping文件导致增量混淆结果不一样的bug 2025-06-22 10:48:08 +08:00
walon 0ad96daa32 代码清理 2025-06-22 10:39:31 +08:00
walon 75a4e2cdad 符号混淆中method和field名全局唯一,方便还原混淆符号 2025-06-09 13:25:04 +08:00
walon b7d2f69321 生成混淆名全局唯一,而不是本程序集内唯一,否则DeobfuscateStackTrace很有可能因为不同程序集的类型名重名而无法分辨准确类型 2025-06-09 09:16:01 +08:00
walon 39c9925cbc obfuz仓库只保留obfuz,将Samples、obfuz4hybridclr和DeobfuscatedStackTrace拆分为独立的仓库 2025-06-02 09:48:44 +08:00