如何绕过“-XX:+ DisableAttachMechanism”Java VM选项?

3
我有一个经过混淆的Java 8程序,我想为其附加一个Java代理。但是当我使用java -javaagent:intrace-agent.jar -jar program.jar启动它时,它会在几秒钟后从控制台分离,我的代理也就结束了。如果我尝试在Process Explorer中查看程序的命令行参数,就会出现一个-XX:+DisableAttachMechanism选项(这个程序在启动期间以某种方式添加它)。是否有任何方法可以绕过这个选项呢? 提前感谢!

显然,它正在防止被反向工程。您可能需要反向工程启动过程,以找出如何删除该选项。但这可能会很困难。 - Jim Garrison
你可以尝试反编译代码,找到添加-XX:+DisableAttachMechanism到命令行的位置。然后使用一些字节码工具擦除这部分代码。但是我提醒你,这样的操作是非法的。 - rvit34
1个回答

2

有两种方法可以解决这个问题:

  1. 修改程序的字节码,使其不再像那样重新启动自己。
  2. 获取OpenJDK源代码,移除使该选项起作用的检查,然后在该环境中运行程序。

需要注意的是,使用这两种方法中的任何一种,程序可能会注意到您所做的操作,并采取其他措施来防范您。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接