【发布时间】:2011-02-15 23:07:37
【问题描述】:
在您无法控制的机器上运行时如何保护 Java 环境?什么是阻止某人创建 Java 代理或本机 JVMTI 代理并转储字节码或重写类以绕过许可和/或其他安全检查?有什么方法可以检测是否有任何代理从 Java 代码运行?来自 JNI?来自 JVMTI 代理?
【问题讨论】:
-
@Andrew Westberg:如果您不希望人们检查您的代码,请让您的代码基于服务器。让计算发生在服务器端:没有人对 GMail 的服务器端代码进行逆向工程,因为它是发生在服务器端的。这对你来说可能不实用,但对我公司来说肯定是;)
-
底线:如果你不控制机器,你就没有真正的控制权。没有办法解决这个问题。你可以给那些试图这样做的人设置一些障碍。但我不相信你的努力值得。
标签: java security agent bytecode-manipulation jvmti