Eduardo Aguinaga created CASSANDRA-12304:
--------------------------------------------

             Summary: Privacy VIolation - Heap Inspection
                 Key: CASSANDRA-12304
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12304
             Project: Cassandra
          Issue Type: Bug
            Reporter: Eduardo Aguinaga
             Fix For: 3.0.5


Overview:
In May through June of 2016 a static analysis was performed on version 3.0.5 of 
the Cassandra source code. The analysis included an automated analysis using HP 
Fortify v4.21 SCA and a manual analysis utilizing SciTools Understand v4. The 
results of that analysis includes the issue below.

Issue:
In the file BulkLoader.java on line 387 a string object is used to store 
sensitive data. String objects are immutable and should not be used to store 
sensitive data. Sensitive data should be stored in char or byte arrays and the 
contents of those arrays should be cleared ASAP. Operations performed on string 
objects will require that the original object be copied and the operation be 
applied in the new copy of the string object. This results in the likelihood 
that multiple copies of sensitive data will be present in the heap until 
garbage collection takes place.

The snippet below shows the issue on line 387:
BulkLoader.java, lines 318-387:
{code:java}
318 public String passwd;
. . .
337 public static LoaderOptions parseArgs(String cmdArgs[])
338 {
339     CommandLineParser parser = new GnuParser();
340     CmdLineOptions options = getCmdLineOptions();
341     try
342     {
. . .
386         if (cmd.hasOption(PASSWD_OPTION))
387             opts.passwd = cmd.getOptionValue(PASSWD_OPTION);
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to