• CWE-568: finalize() Method Without super.finalize()

Das Produkt enthält eine finalize() Methode, die super.finalize() nicht aufruft. Dies kann zu unerwartetem Verhalten und potenziellen resource leaks führen, da die garbage collection möglicherweise nicht korrekt ausgeführt wird. Es wird empfohlen, die finalize() Methode zu überarbeiten und super.finalize() aufzurufen, oder die Methode vollständig zu entfernen, falls sie nicht benötigt wird. Die Verwendung von finalize() ist generell als veraltet und nicht zuverlässig angesehen und sollte durch modernere Alternativen wie try-with-resources oder explizite resource management ersetzt werden.

CWE-Referenz › CWE-568: finalize() Method Without super.finalize()

CWE-568: finalize() Method Without super.finalize()

CWE ID: 568
Name: finalize() Method Without super.finalize()

Beschreibung

Das Produkt enthält eine finalize() Methode, die super.finalize() nicht aufruft. Dies kann zu unerwartetem Verhalten und potenziellen resource leaks führen, da die garbage collection möglicherweise nicht korrekt ausgeführt wird. Es wird empfohlen, die finalize() Methode zu überarbeiten und super.finalize() aufzurufen, oder die Methode vollständig zu entfernen, falls sie nicht benötigt wird. Die Verwendung von finalize() ist generell als veraltet und nicht zuverlässig angesehen und sollte durch modernere Alternativen wie try-with-resources oder explizite resource management ersetzt werden.

Erweiterte Beschreibung

Die Java Language Specification empfiehlt ausdrücklich, dass eine finalize() Methode super.finalize() aufruft, um eine korrekte und vorhersehbare garbage collection zu gewährleisten. Das Versäumnis, dies zu tun, kann zu unerwartetem Verhalten und potenziellen Problemen bei der resource management führen und die Stabilität des runtime environment beeinträchtigen. Es ist eine bewährte Praxis, diese Richtlinie zu befolgen, um die Integrität des application lifecycle zu erhalten.

Risikominderungsmaßnahmen

Maßnahme (Implementation)

Effektivität: Unknown
Beschreibung: Rufen Sie die super.finalize() Methode auf.

Maßnahme (Testing)

Effektivität: Unknown
Beschreibung: Nutzen Sie statische Analyse-Tools, um solche Probleme in Ihrem Code zu identifizieren.

Ist Ihre IT-Infrastruktur betroffen?

Schwachstellen wie CWE-568: finalize() Method Without super.finalize() werden von Angreifern gezielt gesucht — meist automatisiert und ohne Rücksicht darauf, wie groß das betroffene Unternehmen ist. Ob eine solche Lücke bei Ihnen tatsächlich offen steht, lässt sich nur durch Prüfung feststellen:

  • Schwachstellen-Scan — wiederkehrende Prüfung Ihrer Infrastruktur auf bekannte Lücken wie diese
  • Penetrationstest — manuelle Prüfung eigener Software auf Schwachstellen, die kein Werkzeug findet
  • Threat Modeling — Schwachstellenklassen im Entwurf vermeiden, statt sie später zu suchen
Kostenloses Erstgespräch Für mittelständische Unternehmen