Umbra Wiki weakness weakness/CWE-582
Back to wiki

CWE-582 — Array Declared Public, Final, and Static

provenance: imported · CWE: CWE-582

CWE-582: Array Declared Public, Final, and Static

MITRE CWE weakness

Kind Weakness
Abstraction Variant
Status Draft
Likelihood of exploit

Description

The product declares an array public, final, and static, which is not sufficient to prevent the array's contents from being modified.

Because arrays are mutable objects, the final constraint requires that the array object itself be assigned only once, but makes no guarantees about the values of the array elements. Since the array is public, a malicious program can change the values stored in the array. As such, in most cases an array declared public, final and static is a bug.

Common consequences

  • Integrity: Modify Application Data

Mitigations

Implementation — In most situations the array should be made private.

References

  • CWE page: https://cwe.mitre.org/data/definitions/582.html
  • CWE list: https://cwe.mitre.org/data/index.html