首页
社区
课程
招聘
[原创][开源自开发]JavaHumanify,将混淆过的 Java 代码自动去混淆 / 人性化命名
发表于: 2025-10-17 20:52 1215

[原创][开源自开发]JavaHumanify,将混淆过的 Java 代码自动去混淆 / 人性化命名

2025-10-17 20:52
1215

我开源了一个逆向分析工具 Java Humanify


9e2K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6u0L8X3W2@1K9h3q4D9i4K6u0V1e0$3&6W2i4K6u0r3d9X3q4$3j5g2)9J5k6r3S2#2L8h3q4F1K9h3k6&6



它的功能是:


利用 大语言模型(LLM) + 抽象语法树(AST)安全重写,将混淆过的 Java 代码自动“去混淆 / 人性化命名”。


 • 将原本难以阅读的反编译代码(满屏 a、b、c、d)


 • 自动变成有意义的类名、方法名、变量名(比如 Adder.add(value))


 • 效果:很多类和函数一眼就能看出作用,大幅节省逆向分析时间


 • 在 AST 层进行改名,不改控制流与逻辑,输出与原代码1:1 等价



已上线的新功能:


 • 智能注释:自动给函数和类生成一句话功能描述,进一步提升阅读效率



接下来我会做:


 • 本地部署的小型语言模型(Edge LLM):相较直接调用云端大模型,更省费用、更高效、对代码还原更精准、隐私性更强(源码不出本地)


 • 更丰富的语义预设:让还原出来的名字更贴近真实语义与具体领域(网络/加解密/集合/广告等)



目标很简单:


让逆向工程师、研究人员和开发者用更少时间理解被混淆的 Java 项目。



2025年10月17日 更新 v0.3.0

--------------------------------------------------------------

更新说明

批处理并发:为避免长请求超时,suggest 与 annotate 现在会将任务分批并行发送到 LLM。

我尝试还原了一些较大的工程,效果还是较为满意的,大家可以试试



传播安全知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 8
支持
分享
最新回复 (5)
雪    币: 429
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
2
666
2025-10-18 09:45
0
雪    币: 1501
活跃值: (3743)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
3
牛逼啊,期待本地LLM
2025-10-20 09:40
0
雪    币: 3432
活跃值: (9180)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
.KK
4
期待.jpg
2025-10-22 18:14
0
雪    币: 1
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
5
更新v0.4.0
1.Comment generation now processes large projects in batches, greatly reducing memory usage and preventing crashes on big apps.
2.Code auto-formatting now has all required settings built in and runs in its own workflow.
3.Added the humanify-apk command, which lets you deobfuscate all Java code in an APK with a single command.

1.注释生成现在会分批处理大项目,内存占用大幅下降,基本不会再因为太大而崩溃。
2.代码自动美化现在内置了所有必须参数,并单独添加了工作流。
3.添加了humanify-apk 命令,现在可以一键去混淆APK中的java代码。
2025-11-2 21:47
0
雪    币: 9463
活跃值: (7394)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
6
前排支持
2025-11-3 09:52
0
游客
登录 | 注册 方可回帖
返回