db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Knut Anders Hatlen (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DERBY-6617) Silently swallowed SecurityExceptions may disable Derby features, including security features.
Date Mon, 14 Jul 2014 08:57:05 GMT

    [ https://issues.apache.org/jira/browse/DERBY-6617?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14060454#comment-14060454
] 

Knut Anders Hatlen commented on DERBY-6617:
-------------------------------------------

The new test (MissingPermissionsTest) fails in the nightly testing. See for example here:
http://download.java.net/javadesktop/derby/request_5593747/

I think the problem is caused by the getDerbyJarPath() method. It looks for derby.jar in the
java.class.path system property, but it might not be there, for example if derbyrun.jar or
derbynet.jar is specified and derby.jar is pulled in automatically by their manifests. Or
if the tests run against the classes directory.

Another problem is that it assumes all the jar files live in the same directory, which is
not the case in release builds (where derbyTesting.jar lives in a separate directory).

> Silently swallowed SecurityExceptions may disable Derby features, including security
features.
> ----------------------------------------------------------------------------------------------
>
>                 Key: DERBY-6617
>                 URL: https://issues.apache.org/jira/browse/DERBY-6617
>             Project: Derby
>          Issue Type: Bug
>          Components: Services
>    Affects Versions: 10.11.0.0
>            Reporter: Rick Hillegas
>            Assignee: Dag H. Wanvik
>         Attachments: derby-6617-1.diff, derby-6617-2.diff, derby-6617-2.status, derby-6617-3.diff,
derby-6617-3.status, derby-6617-junit.diff
>
>
> When the Monitor tries to read Derby properties, it silently swallows SecurityExceptions.
This means that the properties will be silently ignored if Derby has not been granted sufficient
privileges. This means that if you make a mistake crafting your security policy, then you
may disable authentication and authorization. You may not realize this until you have incurred
a security breach. This swallowing occurs at the following code locations:
> {noformat}
> org.apache.derby.impl.services.monitor.BaseMonitor readApplicationProperties Catch java.lang.SecurityException
1 line 1360
> org.apache.derby.impl.services.monitor.BaseMonitor runWithState Catch java.lang.SecurityException
0 line 280
> org.apache.derby.impl.services.monitor.FileMonitor PBgetJVMProperty Catch java.lang.SecurityException
1 line 183
> org.apache.derby.impl.services.monitor.FileMonitor PBinitialize Catch java.lang.SecurityException
1 line 120
> {noformat}
> SecurityExceptions are swallowed at other locations in the Monitor. The implications
of these swallowings should be understood and, at a minimum, security problems should be fixed:
> {noformat}
> org.apache.derby.impl.services.monitor.FileMonitor PBinitialize Catch java.lang.SecurityException
1 line 157
> org.apache.derby.impl.services.monitor.FileMonitor createDaemonGroup Catch java.lang.SecurityException
1 line 89
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message