在阅读 Java Security 时,我遇到了以下句子,但在 Internet 上找不到任何令人满意的解释。谁能解释一下
- 防止使用字节码加载类
- 防止装载非法包裹
然而,我们不能确定类本身是安全的。仍然有 SecurityManager 的安全网将阻止类访问受保护的资源,例如网络和本地硬盘,但这本身是不够的。该类可能包含非法字节码、伪造指向受保护内存的指针、程序堆栈上溢或下溢,或以其他方式破坏 JVM 的完整性。检查[1] 中的主题类文件验证器:http: //medialab.di.unipi.it/doc/JNetSec/jns_ch5.htm
字节码验证器进行以下检查:
源代码编译成字节码,分发给用户。如果字节码已损坏,或者不是由 java 编译器生成,那么它可能是非法的,这意味着字节没有意义。