FindBugs: Echte Bedrohung hinter EI_EXPOSE_REP

FindBugs löst einen Fehler namens ausEI_EXPOSE_REP mit der folgenden Beschreibung:

EI: Kann die interne Repräsentation durch Rückgabe eines Verweises auf ein veränderbares Objekt verfügbar machen

Wenn Sie eine Referenz auf einen veränderlichen Objektwert zurückgeben, der in einem der Objektfelder gespeichert ist, wird die interne Darstellung des Objekts angezeigt. Wenn nicht vertrauenswürdiger Code auf Instanzen zugreift und ungeprüfte Änderungen am veränderlichen Objekt die Sicherheit oder andere wichtige Eigenschaften beeinträchtigen, müssen Sie etwas anderes tun. In vielen Situationen ist es besser, eine neue Kopie des Objekts zurückzugeben.

Mehrere Fragen zu SO (1, 2 und3) haben bereits angesprochen, wie ein solcher Fehler vermieden werden kann, und ich verstehe, dass es eine bewährte Methode für die Entwicklung ist, Änderungen an unveränderlichen Objekten zu verhindern. Mir ist jedoch nicht klar, warum ein solcher Fehler zur Kategorie MALICIOUS_CODE gehört.

Was ist die wirkliche Bedrohung dahinter?

Wenn es sich um ein Problem mit bösartigem Code handelt, kann der Angreifer fast alles tun, was er will, und die Wandlungsfähigkeit wäre nicht das größte Problem. Wenn es sich um eine Sicherheitsanfälligkeit handelt, kann sie nur ausgenutzt werden, wenn auch nicht vertrauenswürdiger Code ausgeführt wird und ich keinen Verwendungszweck sehe, in dem dies zutrifft.

Irgendeine Perspektive dazu?

Vielen Dank !

Antworten auf die Frage(2)

Ihre Antwort auf die Frage