# HG changeset patch # User Andrew John Hughes # Date 1297623750 0 # Node ID 9d55580ba75314d5fc8c73040eb90d7abed3bc3a # Parent 1677c90e2f8e316ce3afc2ef39e608ecb1675eaf Vulnerability in permissions assigned to applets with multiple JARs. 2011-02-13 Andrew John Hughes * NEWS: Updated. 2011-02-11 Omair Majid * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: (initializeResources()): Only create a SecurityDesc with all permissions when the jar is signed. diff -r 1677c90e2f8e -r 9d55580ba753 ChangeLog --- a/ChangeLog Sun Feb 13 14:41:07 2011 +0000 +++ b/ChangeLog Sun Feb 13 19:02:30 2011 +0000 @@ -1,3 +1,13 @@ +2011-02-13 Andrew John Hughes + + * NEWS: Updated. + +2011-02-11 Omair Majid + + * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: + (initializeResources()): Only create a SecurityDesc with + all permissions when the jar is signed. + 2011-02-11 Andrew John Hughes * configure.ac: Bump to 1.8.7. diff -r 1677c90e2f8e -r 9d55580ba753 NEWS --- a/NEWS Sun Feb 13 14:41:07 2011 +0000 +++ b/NEWS Sun Feb 13 19:02:30 2011 +0000 @@ -18,6 +18,7 @@ - S6983554, CVE-2010-4450: Launcher incorrect processing of empty library path entries - S6985453, CVE-2010-4471: Java2D font-related system property leak - S6927050, CVE-2010-4470: JAXP untrusted component state manipulation + - Vulnerability in permissions assigned to applets with multiple JARs New in release 1.8.6 (2011-02-09): diff -r 1677c90e2f8e -r 9d55580ba753 netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java --- a/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java Sun Feb 13 14:41:07 2011 +0000 +++ b/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java Sun Feb 13 19:02:30 2011 +0000 @@ -439,9 +439,15 @@ codebase = file.getResources().getMainJAR().getLocation(); } - jarSecurity = new SecurityDesc(file, - SecurityDesc.ALL_PERMISSIONS, - codebase.getHost()); + if (signing) { + jarSecurity = new SecurityDesc(file, + SecurityDesc.ALL_PERMISSIONS, + codebase.getHost()); + } else { + jarSecurity = new SecurityDesc(file, + SecurityDesc.SANDBOX_PERMISSIONS, + codebase.getHost()); + } } jarLocationSecurityMap.put(location, jarSecurity);