You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "Jean-Baptiste Onofré (JIRA)" <ji...@apache.org> on 2015/12/15 16:14:46 UTC
[jira] [Updated] (KARAF-4200) Privacy Violation: Heap Inspection
[ https://issues.apache.org/jira/browse/KARAF-4200?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jean-Baptiste Onofré updated KARAF-4200:
----------------------------------------
Description:
HP Fortify and SciTools Understand were used to perform an application security scan on the karaf source code.
The method login() in JDBCLoginModule.java stores sensitive data in a String object on line 95, making it impossible to reliably purge the data from memory.
JDBCLoginModule.java, lines 88-96:
{code}
88 user = ((NameCallback) callbacks[0]).getName();
89
90 char[] tmpPassword = ((PasswordCallback) callbacks[1]).getPassword();
91 if (tmpPassword == null) {
92 tmpPassword = new char[0];
93 }
94
95 String password = new String(tmpPassword);
96 principals = new HashSet<>();
{code}
was:
HP Fortify and SciTools Understand were used to perform an application security scan on the karaf source code.
The method login() in JDBCLoginModule.java stores sensitive data in a String object on line 95, making it impossible to reliably purge the data from memory.
JDBCLoginModule.java, lines 88-96:
88 user = ((NameCallback) callbacks[0]).getName();
89
90 char[] tmpPassword = ((PasswordCallback) callbacks[1]).getPassword();
91 if (tmpPassword == null) {
92 tmpPassword = new char[0];
93 }
94
95 String password = new String(tmpPassword);
96 principals = new HashSet<>();
> Privacy Violation: Heap Inspection
> ----------------------------------
>
> Key: KARAF-4200
> URL: https://issues.apache.org/jira/browse/KARAF-4200
> Project: Karaf
> Issue Type: Bug
> Affects Versions: 4.0.3
> Reporter: Eduardo Aguinaga
>
> HP Fortify and SciTools Understand were used to perform an application security scan on the karaf source code.
> The method login() in JDBCLoginModule.java stores sensitive data in a String object on line 95, making it impossible to reliably purge the data from memory.
> JDBCLoginModule.java, lines 88-96:
> {code}
> 88 user = ((NameCallback) callbacks[0]).getName();
> 89
> 90 char[] tmpPassword = ((PasswordCallback) callbacks[1]).getPassword();
> 91 if (tmpPassword == null) {
> 92 tmpPassword = new char[0];
> 93 }
> 94
> 95 String password = new String(tmpPassword);
> 96 principals = new HashSet<>();
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)