JVM--java沙箱安全机制

组成沙箱的基本组件

  • 字节码校验器(bytecode verifier):确保java类文件遵循java语言规范,可以帮助java程序实现内存保护。但不是所有的类文件都会经过字节码校验,比如核心类。

  • 类装载器(class loader):类装载器在三个方面对java沙箱起作用

    1. 防止恶意代码干涉善意代码---->双亲委派机制
    2. 守护了被信任的类库边界
    3. 将代码归入保护域,确定了代码可以进行哪些操作。

    · 从最内层JVM自带类加载器开始加载,外层恶意同名类得不到加载。
    · 严格通过包来区分访问与,外层恶意的类通过内置代码无法获得权限访问内层类。

  • 存取控制器(access controller):可以控制核心API对操作系统的存取权限,而这个控制的策略设定,可以由用户指定。

  • 安全管理器(security manager):是核心API和操作系统之间的主接口。实现权限控制,比存取控制优先级高。

  • 安全软件包(security package):java.security下的类和扩展包下的类,允许用户为自己的应用增加信的安全。包括:安全提供者、信息摘要、数字签名、加密、鉴别

你可能感兴趣的