Java代码安全性的检查机制

Java代码安全性检查机制

首先由类装载器(class loader)负责把类文件(.class文件)加载到Java虚拟机(JVM)中,它通过区分本地文件系统的类和网络系统导入的类增加安全性,这可以限制任何特洛伊木马程序。因为本机类总是先被加载,一旦所有的类都被加载完,执行文件的内存就固定了。

然后,字节码校验器进行校验,字节码校验器不检查那些可信任的编译器所生成的类文件,而是对那些有意违背命名空间规定和java语言规则的类文件进行检查,并且关闭具有安全性漏洞的类文件,自己码校验器主要执行下面的检查。

加载的类符合JVM规范的类文件格式,没有违反访问限制,代码上没有造成上溢或者下溢,所有操作代码的参数类型都正确的,没有非法的数据类型转换发生,检查该类文件是否存在某些非法操作。字节码校验器在java源程序中,会执行try-catch-finally语句序列并且捕捉和响应java的程序错误。

最后,如果字节码校验检验通过,由java解释器负责把类文件解释成为机器码进行执行。

原文地址:https://www.cnblogs.com/IcreamPrince/p/4009451.html