我可以信任Java SecurityManager沙箱吗?

时间:2013-09-28 12:50:14

标签: java security applet sandbox securitymanager

我正在编写一个JavaFX2应用程序,它接受从远程位置加载的任意代码。对于我使用自定义SecurityManager,ClassLoader和ProtectionDomain是要走的路。不幸的是,这似乎与用于沙盒applet的设置相同,这已经引起了很多安全漏洞,反过来又说服人们害怕Java Web插件并将其从操作系统中完全删除。

Java沙箱是一个运行不受信任的代码的安全环境,还是整个Java Web插件不安全?

1 个答案:

答案 0 :(得分:4)

安全管理器提供您的应用。提供与插件一样多的保护。鉴于安全漏洞,这是“不多”。

它目前插入已知的安全漏洞(AFAIU)。但是,在任何复杂的插件中,可能会有更多,尚待发现,或可能在新版本或新API中引入。

基本上,你的代码应该超出标准的安全管理器,黑名单列出整个软件包,并且(如果需要的话)提供实用程序方法来执行通常由该软件包处理的活动。

但是,那个建议是20+点列表的第一点,我可能能够为应用程序命名2或3个。在运行不受信任的代码时可能需要防范。虽然这不是问题..

  

Java沙箱是一个安全的环境,可以将不受信任的代码运行到..

没有。 Java安全性可能为不受信任的代码提供安全性的良好起点,但它需要针对应用程序进行扩展,并具有其他元素以适合所需的任务。即便如此,还是需要考虑“未知的安全漏洞”(在JRE以及您自己的安全工作中)。