Falhas do tipo CWE-495

1 resultado

Exposição de estrutura de dados privada via método público

Uma classe expõe um método público que retorna diretamente uma estrutura de dados (objeto, array, coleção) que deveria ser privada ou interna. Quem chama o método consegue modificar o estado interno da classe, contornando encapsulamento e quebrando a integridade do objeto.

Exemplo

Uma classe Conta retorna a lista interna de transações via getTransacoes() público. O chamador modifica essa lista diretamente (remove, altera valores), sem passar por validações ou logs que a classe deveria impor.

Como mitigar

Retorne cópias (clone/copy) das estruturas sensíveis, ou use coleções imutáveis (Collections.unmodifiableList em Java). Alternativa: exponha apenas getters para propriedades individuais, nunca a estrutura completa.