Java 7u4 webstart安全性异常:类与信任级别不匹配
我们开始注意到,使用
Java 7(特别是更新4),我们的所有用户都开始使用我们的Webstart应用程序看到这一点:
[14:42:58,422] AWT-EventQueue-0(DEBUG) java.lang.SecurityException: class "CLASSNAME" does not match trust level of other classes in the same package [14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.deploy.security.CPCallbackHandler$ChildElement.checkResource(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.deploy.security.DeployURLClassPath$JarLoader.checkResource(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.deploy.security.DeployURLClassPath$JarLoader.getResource(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.deploy.security.DeployURLClassPath.getResource(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at java.net.URLClassLoader$1.run(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at java.security.AccessController.doPrivileged(Native Method) [14:42:58,422] AWT-EventQueue-0(DEBUG) at java.net.URLClassLoader.findClass(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at com.sun.jnlp.JNLPClassLoader.findClass(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at java.lang.ClassLoader.loadClass(Unknown Source) [14:42:58,422] AWT-EventQueue-0(DEBUG) at java.lang.ClassLoader.loadClass(Unknown Source)...More 其中CLASSNAME =几乎每个类都在应用程序执行中的几个罐子中的随机点,打破了几个行为. 这显然是一个问题,因为用户现在更频繁地升级到Java 7. Oracle是否通过Java 7u4破坏了Webstart安全性?如何解决此securityexception问题? 解决方法
只是jarsigners hack签入的原始作者.我被另一个开发人员引导到这里,我最初与他分享了黑客攻击.
基于他对此的持续调查,您需要添加以下内容来调用hack callNoArgMethod("getSigningData",jar); makeHardLink("signingDataRef",jar); callNoArgMethod("getManifest",jar); makeHardLink("manRef",jar,n); 清单调用不是此帖的解决方案的一部分.在创建验收测试以重现问题时,会找到它们. 基于这个新信息,我们改变了我们的方法,我们现在使用反射来调用所有“get”方法(如果没有填充,则需要调用get方法来初始填充软引用) 然后反思地发现CachedJarFile类中的所有软引用并为它们创建硬链接. 只要CachedJarFile保持不变并且黑客的基本前提保持正确,这就可以在未来证明来自其他内部重命名/重构的解决方案. (即:对软参考进行软参考. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- java – Joda-Time DateFormatter如果非零则显示毫秒
- 在Java中为另一个数组分配数组引用
- 快速了解Java中ThreadLocal类
- Java并发指南14:Java并发容器ConcurrentSkipListMap与Copy
- java – Hibernate命名查询及其性能优势?
- org.apache.catalina.LifecycleException: Failed to start
- 智能商贸day2 功能的完善
- 将所有java swing gui放在一个类中是否正常?
- java – 来自InputStream的文件路径/名称
- java – 无法解析主机“”;没有与主机名关联的地址