You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Knut Anders Hatlen (JIRA)" <ji...@apache.org> on 2014/08/20 15:07:27 UTC

[jira] [Reopened] (DERBY-6619) After silently swallowing SecurityExceptions, Derby can leak class loaders

     [ https://issues.apache.org/jira/browse/DERBY-6619?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Knut Anders Hatlen reopened DERBY-6619:
---------------------------------------


The tests are failing on Windows after this change. See for example [http://download.java.net/javadesktop/derby/request_5594779/javadb-task-3915844.html].

I'm guessing that it's the construction of the file name in assertWarningDerby6619() that causes the problem, because it assumes the file separator is /.

{code}
        final String logFileName =
                getSystemProperty("derby.system.home").replace("/system","") +
                File.separator + "/derby.log";
{code}

(I also suspect that it fails on non-Windows platforms if one of the parent directories of the test directory has a name that begins with "system".)

Maybe something like {{new File(getSystemProperty("derby.system.home")).getParent()}} would be a more reliable way of getting the directory name. Or perhaps just {{getSystemProperty("user.dir")}}.

> After silently swallowing SecurityExceptions, Derby can leak class loaders
> --------------------------------------------------------------------------
>
>                 Key: DERBY-6619
>                 URL: https://issues.apache.org/jira/browse/DERBY-6619
>             Project: Derby
>          Issue Type: Bug
>          Components: Services
>            Reporter: Rick Hillegas
>            Assignee: Dag H. Wanvik
>             Fix For: 10.11.1.2, 10.12.0.0
>
>         Attachments: derby-6619.diff, derby-6619.status, derby-6619b.diff, derby-6619c.diff, derby.log
>
>
> As part of the fix for DERBY-3745, Derby silently swallows security exceptions and leaks class loaders. This can give rise to denial-of-service attacks. At a minimum, Derby should report the swallowed exceptions so that the security policy can be corrected and the application can be hardened against this attack. The swallowing occurs at these locations:
> {noformat}
> org.apache.derby.impl.services.timer.SingletonTimerFactory run Catch java.lang.SecurityException 0 line 175
> org.apache.derby.impl.services.timer.SingletonTimerFactory run Catch java.lang.SecurityException 1 line 158
> {noformat}



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