core-lib / xjar

Spring Boot JAR 安全加密运行工具,支持的原生JAR。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ClassLoader内存解密的可能存在的安全漏洞

hxy91819 opened this issue · comments

无论如何,想要让程序可以运行,最终class文件必须要能够解密后,写入到内存中。

假如攻击方(比如客户),在他们的服务器上安装类似Arthas这样的工具,用jad直接反编译内存中的class,是无需拿到密码,可以直接看到源码的。实测如下图:

image

由此可得出以下结论:

  1. 如果程序部署在一个不信任的环境中,无论怎样,都无法防止代码被泄漏。ClassLoader内存解密方案只能提高破解成本
  2. 可适当考虑混淆,但也无法从根本上解决代码泄漏问题
  3. 核心知识产权代码,使用C++编写,并加壳处理

C++不会被反编译么