Man*_*oba 2 java classloader urlclassloader source-code-protection
我编写了一个Java应用程序,我计划在线发布它.每个版本都将使用我制作的秘密序列密钥锁定.
我需要从反编译器等保护我的jar文件.这是我到目前为止所做的:
我做了1〜3步,但我需要知道是否有可能使,抓住从HTTP字节,解密它们,并调用main方法的定制ClassLoader.由于文件是完全加密的(在PHP服务器上保存为bin),我不能使用基本的类加载器.关于步骤8,是否可以从计算机的内存中卸载内容?
是的,这是可能的,但它也没用.
您的类加载器将是您的安全系统中最薄弱的环节.它无法加密,因此反编译它会相对容易.
现在,因为在类加载器中有一个位置,你必须有一个bytearray形式的解密类,攻击者唯一需要做的就是将这个字节数组转储到一个文件中.
参考dystroy代码:
classBytes = EncryptionUtil.decryptBytes(url, key);
// In this moment, classBytes contains unencrypted class.
// If an attacker adds:
//
// FileOutputStream fos = new FileOutputStream("some.name");
// fos.write(classBytes);
// fos.close();
//
// he will destroy all your security.
return defineClass(name, classBytes, 0, classBytes.length);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1415 次 |
| 最近记录: |