记录crack某IDE插件过程

声明:本文仅记录学习过程,已对关键位置脱敏处理,未提供任何工具,请支持正版。

反编译jar包

使用cfr进行对插件核心jar包MyBxxxxxx-obfuss.jar进行反编译,在本地生成a.txt。

bash 复制代码
java -jar cfr-0.152.jar MyBxxxx-obfuss.jar --renamedupmembers true --hideutf false >> a.txt

查看反编译结果

找到关键部分,只需要修改两处getter方法即可。

java 复制代码
public Boolean e() {
    return Boolean.TRUE;
}

public Long a() {
    return new Long(4797976044000L);
}

修改class文件

建一个项目,在pom引用javassist

java 复制代码
    <dependency>
      <groupId>org.javassist</groupId>
      <artifactId>javassist</artifactId>
      <version>3.25.0-GA</version>
    </dependency>

修改上一步骤中的getter方法,输出修改后的class文件。java代码:

java 复制代码
    public static void main(String[] args) throws Exception {
        ClassPool classPool = ClassPool.getDefault();
        // 直接使用 jar 路径
        classPool.appendClassPath("D:\\test\\new\\xxxx.jar");

        // 获取指定类
        CtClass ctClass = classPool.get("com.ccnode.codegenerator.Y.e.e");
        CtMethod method =  ctClass.getDeclaredMethod("e");
        CtMethod method2 =  ctClass.getDeclaredMethod("a");
        method.setBody("return Boolean.TRUE;");
        method2.setBody("return new Long(4797976044000L);");

        // 输出修改后的class
        ctClass.writeFile("D:\\test\\new");
    }

执行以上java代码后,即可在D:\test\new目录写入class文件所在的包和class文件。

替换jar包中的class

这一步骤需要用java命令操作,不能使用压缩软件去操作。

java 复制代码
jar uvf xxxxxxxx.jar com\ccnode\codegenerator\Y\e\e.class

将新的jar包替换进插件zip文件中,安装该插件,code随便输入即可。

相关推荐
likerhood3 小时前
IDEA中创建和运行java项目的常见操作
java·ide·intellij-idea
程序设计实验室4 小时前
2026年AI编程工具横评:Cursor、Codex、Claude Code、Zed、Windsurf
ide
在下_诸葛5 小时前
VSCode使用指南:快捷键、设置与高级技巧
ide·vscode·编辑器
我也有在努力5 小时前
VSCode Java 开启导入未使用的包置为浅灰色/透明色效果
ide·vscode·编辑器·cursor
子歌的宏定义6 小时前
主机vscode远程链接服务器开发方法
服务器·ide·vscode
sz4972385996 小时前
VSCODE 隐藏或打开状态栏
ide·vscode·编辑器
新缸中之脑6 小时前
智能IDE是新的浏览器
ide
吠品7 小时前
IDEA告别“Command line too long”:三种高效解决方案深度解析
ide
来自内蒙古的田园蒙牛7 小时前
在 Windows 系统下,使用 PyCharm 开发工具,如何通过直接调用 API 的方式,利用你手头的 OpenAI 接口地址和 Key 来辅助代码编写
ide·windows·pycharm
摇滚侠8 小时前
VsCode 前端开发快捷语法,Emmet 快捷语法整理,markdown 表格格式
ide·vscode·编辑器