Das korrekte Vorgehen in einer Business-Anwendung wäre aus meiner Sicht:
Sicherheitslücke ansehen (Das geht per Google über die CVE):
https://nvd.nist.gov/vuln/detail/CVE-2021-37533
Damit hat man erstmal mehr Infos als das, was maven ausspruckt
Bewerten, ob es einen betrifft.
Prior to Apache Commons Net 3.9.0, Net's FTP client trusts the host from PASV response by default. A malicious server can redirect the Commons Net code to use a different host, but the user has to connect to the malicious server in the first place.
Ich weiß jetzt nicht, was nd4j im Detail macht - aber man sieht hier es geht um den FTP Client. Wenn nix mit FTP gemacht wird, könnte man sie ignorieren.
Update der Bibliothek vornehmen
Wenn möglich, sollte man die Bibliothek aktualisieren. Abhängig von der Bewertung ob es einen betrifft (und dem Umfeld, in dem die Anwendung betrieben wird) ist die mehr oder weniger dringend. Hier kommt die Depenendecy transitiv rein, daher gibt es zwei Möglichkeiten:
- Die Bibliothek, die die Dependecy transitiv mitbringt (nd4j) akualisieren auf eine Version, die die Dependency auf eine sichere Version anhebt.
- Nur die betroffene Bibliothek selber aktualisieren
Beides hat Vor- und Nachteile. Bei der ersten Variante ist der Vorteil, das damit alle transitiven Dependency etc. aktualisiert werden. Gefahr ist hierbei aber, dass man deutlich mehr aktualisiert und schauen muss, ob alles läuft oder ob es Breaking Changes gab. Die zweite Variante ist weniger invasiv, hier muss man schauen, ob die aktualisierte Version kompatibel ist (was sie bei Minor Updates sein sollte). Und über die Zeit wächst die POM immer mehr an, weil man immer mehr Bibliotheken auf einmal selber auf Versionen fest-pinned, anstelle sie einfach transitiv zu beziehen.
Was wir in der Praxis in der Regel machen:
Abhängig von der Bewertung wird entschieden:
- Hotfix in Produktion
- Nächstes geplantes Minor-Release
- Nächste geplantes Major Relase
Beim Hotfix wird nur die betroffene Bibliothek aktualisiert, sobald die Bibliothek, die die Dependecy transitiv mitbringt, aktualisiert wird (was nur in geplannten Releases gemacht wird), wird das festpinnen wieder aufgelöst.
Wenn es hier ein reines Hobby-Projekt ist, würde ich nach dem Blick auf die CVE sagen "I don't care"