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

Santosh Math reassigned FINERACT-436:
-------------------------------------

    Assignee: Markus Geiss  (was: Santosh Math)

> Fix security vulnerabilities related to using public mutable and nonconstant 
> fields
> -----------------------------------------------------------------------------------
>
>                 Key: FINERACT-436
>                 URL: https://issues.apache.org/jira/browse/FINERACT-436
>             Project: Apache Fineract
>          Issue Type: Bug
>          Components: Accounting, Organization
>            Reporter: Thisura
>            Assignee: Markus Geiss
>             Fix For: 1.0.0
>
>
> There are multiple security vulnerabilities found in fineract-provider as 
> described in [this report 
> \[1\]|https://drive.google.com/open?id=1uLk3YPcjnXk7RqF8etsTzIuN59CDU6sgBxpZul__1V4]
> There are four types of vulnerabilities related to using public mutable and 
> nonconstant fields.
> 1. Mutable fields should not be "public static"
>      * MITRE, CWE-582 - Array Declared Public, Final, and Static
>      * MITRE, CWE-607 - Public Static Final Field References Mutable Object
> 2. "static final" arrays should be "private"
>      * MITRE, CWE-582 - Array Declared Public, Final, and Static
>      * MITRE, CWE-607 - Public Static Final Field References Mutable Object
> 3. "public static" fields should be constant
>      * MITRE, CWE-500 - Public Static Field Not Marked Final
>      * CERT OBJ10-J - Do not use public static nonfinal variable
> 4. "enum" fields should not be publicly mutable
> The reported incident of type 2 is considered to be false positive. 1,3,4 
> types are present as described in the 
> [report\[1\]|https://drive.google.com/open?id=1uLk3YPcjnXk7RqF8etsTzIuN59CDU6sgBxpZul__1V4]
> The proposed 
> [solutions\[2\]|https://drive.google.com/open?id=1TdwwHM2K1gMb6qILEX7gmzU8dVXcHGBdh569aFJfB2U]
>  are as follows.(Solutions are respective to each vulnerability type above)
> 1. Mutable fields should not be "public static" => Make the respective 
> members protected. If they are in a class move them to a separate class and 
> lower the visibility.
> 2. "static final" arrays should be "private" => Make the arrays private
> 3. "public static" fields should be constant => Make the respective field 
> final
> 4. "enum" fields should not be publicly mutable => Lower the visibility of 
> the setter.  Remove it altogether. 
> \[1\] 
> https://drive.google.com/open?id=1uLk3YPcjnXk7RqF8etsTzIuN59CDU6sgBxpZul__1V4
> \[2\] 
> https://drive.google.com/open?id=1TdwwHM2K1gMb6qILEX7gmzU8dVXcHGBdh569aFJfB2U



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to