News Log4Shell: Sicherheitslücke in log4j für Java hält die IT-Welt in Atem

ModellbahnerTT schrieb:
Das ist leider richtig aber weniger Software in JAVA zu schreiben bzw. mit mehr Sicherheitsprüfungen zu versehen ist eine langfristige Lösung.

Das hat doch nichts mit Java zu tun... so ein Einfallstor wie dieses hier, kann in (fast) jeder Sprache geschrieben werden... egal ob mit JavaScript und Node.js, C#, Python, Scala, Clojure, Rust, Elixir, Erlag, Scheme, Pharo, Ruby, Perl, C++ und C, Go, Swift... und etlichen anderen Sprachen, die ich nicht kenne.

Und es gibt Sprachen, wie Scala (Apache Spark z.B.) und Clojure, bei denen für die JVM entwickelt wird. - Auch daran ist nichts verkehrt... also an einer Laufzeitumgebung, die Bytecode ausführt. Ist ja bei C# / F# und .Net nicht anders.
 
  • Gefällt mir
Reaktionen: foo_1337 und BeBur
calluna schrieb:
Das hat doch nichts mit Java zu tun
Witzigerweise kriegt Java ja vor allem viel Hate weil von Oracle und diese sind das wichtigste Beispiel dafür, wieso man immer OpenSource/FOSS als Alternative haben muss. log4j ist ja aber gerade eine FOSS Alternative für Logging.
 
Die Geschichte zeigt eher die Stärke von Java und Open Source. In einer kleinen, weniger genutzten Library wäre so ein Bug/Exploit möglicherweise nie publik geworden.
 
  • Gefällt mir
Reaktionen: foo_1337
PHuV schrieb:
So, und nun frage ich umgekehrt, wie willst Du verhindert oder festlegen, wie ein Entwickler mit diesen Jar-Dateien umgeht? Aus meiner Sicht kannst Du das gar nicht. Jeder, der diese Jars verwendet, kann Log4j irgendwie aufrufen und ansprechen.

Du hast vollkommen recht, solange die fehlerhaften log4j-Klassen irgendwie auf dem System erreich- und ausführbar sind, ist das ein potentielles Sicherheitsrisiko.
Dennoch ist das ein gewaltiger Unterschied, ob das Programm selbst diese log4j-Klassen ohne Gegenmaßnahmen benutzt, dann hat man nämlich definitiv ein offenes Problem, oder ob erst eine andere Anwendung darauf zugreifen muss. Letzteres würde wohl nur durch Malware geschehen, oder welche erwünschte Anwendung sollte auf die Libraries von Elasticsearch zugreifen?

EDIT: Okay, dein Update hat nochmal geholfen. Wie genau die ganzen Sachen auch für andere Anwendungen normalerweise erreichbar sein sollen weiß ich nicht. Wenn das wirklich so vorgesehen ist, dass die quasi Libraries mitliefern, die von anderen Projekten benutzt werden sollen, aber dort womöglich auf unsichere Art und Weise, dann ist das natürlich ganz großer Mist.
 
  • Gefällt mir
Reaktionen: PHuV
Kann schon jemand sagen wie es mit Steam aussieht?
Ist der Client weitesgehend gefahrlos nutzbar oder sollte man auf nen Patch von Valve warten?
 
@Whatdoiknow

Soweit ich weiß, basiert der Steam-Client nicht auf "Java-Technik." ... und selbst wenn, der Steam Client verbindet sich nur mit den Content Servern.
 
calluna schrieb:
@Whatdoiknow

Soweit ich weiß, basiert der Steam-Client nicht auf "Java-Technik." ... und selbst wenn, der Steam Client verbindet sich nur mit den Content Servern.
Du findest im Steam Verzeichnis javaw.exe und so weiter, zumindest vor ein paar Jahren. War etwas geschockt damals, dachte ich wäre Java endlich los geworden.
 
calluna schrieb:
und selbst wenn, der Steam Client verbindet sich nur mit den Content Servern.
Könnte sein, aber auch dann ist es theoretisch möglich, dass z.B. der Chat log4j verwendet. Der Workshop ist auch ein Bereich wo Dritte Inhalte einstellen können. Ka, wo noch.
Ich würde mich da aber auch nicht verrückt machen lassen, ist jetzt auch nicht so, dass jede zweite Endanwender-Software log4j verwendet.

Erkennen Antivirenprogramme eigentlich (jetzt) entsprechende Angriffe? Da hat doch bestimmt jeder was verlauten lassen in einer Pressemitteilung.
 
foo_1337 schrieb:
Gegenfrage: Wenn du die Funktionen ohnehin nicht nutzt: Wieso benutzt du als professioneller Java Entwickler dann überhaupt log4j? Dem Entwickler vorwürfe machen und sich selbst keine Gedanken machen. Finde den Fehler.
Ich selber habe noch nie log4j benutzt. Durfte jetzt aber natürlich trotzdem meine Zeit damit verbringen zu schauen, ob das in unseren Projekten irgendwo durch irgendeine Dependency reingekommen ist (Ist es natürlich). Zu sagen: "Dann nutz es halt nicht" ist halt nicht so einfach wenn man so sachen wie nen HTTP Server oder MQTT Broker als Dependency vom Projekt hat und die dann wieder Dependencies usw. Und insgesamt muss ich sagen hatten wir schwein, wir schauen nämlich schon drauf, was für ein Rattenschwanz an Dependencies eine Lib mitbringt, bevor wir uns entscheiden die zu benutzen. Dadurch war das ganze für uns recht übersichtlich und schnell abgefrühstückt.
 
meymo schrieb:
Warum gitb es diese Lücke im log4j? Weil log4j wenn du die richtigen Schlüsselwörter in dein Log schreibst diese nicht logt, sondern wild Daten aus dem Netwzwerk lädt und diese statdessen logt...

Wer braucht so etwas? Von allen Nutzern von log4j ist das doch wenn überhaupt <1% die sowas brauchen, aber nein das muss eingebaut werden weil ähh kann man sich auf die Schulter klopfen, dass man ein tolles Feature eingebaut hat.
Und dann auch noch per Default aktiviert das Verhalten. Weil ähh Rückwärtskompatibilität und so. Ich finde auch, das ist das krasseste daran, es war kein Bug, sondern ein Feature.
Dass das grundsätzlich geht: Kann ich nachvollziehen. Aber dann bitte per Default deaktiviert und wenn man es anschaltet, dann nur per Whitelist und dann kann man mit einem zweiten Parameter die Whitelist deaktivieren, so dass er von überall zieht. Wer das dann macht: Selber Schuld.
 
MadCat[me] schrieb:
Ich habe bei uns aber auch sicherheitshalber schon am Freitag manuell die Versionen hochgezogen und inzwischen via Exclusion in Maven log4j komplett rausgeschmissen.

Jo, die Methode wirkt auch :D

Habe mittlerweile sowohl 2.15.0 auf den Servern als auch die besagte JVM switch die es noch gibt.
Hoffe mal das war es dann fürs Erste ...
 
  • Gefällt mir
Reaktionen: MadCat[me]
ComputerJunge schrieb:
Das wohl eher nicht (kaum) mehr. Aber für den ein oder anderen selbstgeklöppelten Input-Validator sind diese Patterns wohl auch einfach noch neu.
Na ja, scheint ja leider in dem Fall so zu sein, dass ein Input-Validator, der einen Angriff versucht zu erkennen, hier gnadenlos versagen wird, weil es zu viele Möglichkeiten gibt, um den Angriff zu verschleiern.

Hier kommen so einige Fehler zusammen, angefangen in log4J, dass man dort eine so mächtige Funktion überhaupt eingebaut hat, weitergehend bei log4J, dass potenzielle Gefahren - die da eigentlich bekannt hätten sein müssen - nicht wirklich erwähnt hat und Endet in dem Fall dann bei den Entwicklern, die log4J mit entsprechender Funktion nutzen und scheinbar wirklich auf Anfängerniveau Strings ohne Prüfung an so eine Funktion übergeben.

In fast jedem Buch zu fast jeder Programmiersprache, in der es Funktionen gibt, die solche Möglichkeiten bieten - hier ja Verbindung von "Laden + Serialize/Deserialize" - wird vom Autor auf die Gefahr solcher Funktion hingewiesen und dass man sowas wirklich nur aus einer seriösen Quelle machen sollte.

Ehrlich gesagt, erinnert mich das an die bösen Skript-XSS-Lücken Anfang des Jahrtausends, als man in PHP, Perl und Code oft unnötigerweise eval nutze und da ähnliche Probleme schuf.
Conqi schrieb:
Das ist halt keine wirklich gute Rechtfertigung aus meiner Sicht. Wenn eine ganze Branche nicht mehr finanzierbar wäre, wenn sie für ihre Fehler haftbar wären, dann ist doch an der Branche grundlegend was falsch.
Es ist aus deiner Sicht keine gute Rechtfertigung? Ich habe hier keine Rechtfertigung gegeben, sondern dir die möglichen Konsequenzen aus deiner Forderung aufgezeigt und in dem Fall auch absichtlich die negativsten Konsequenzen.

Es hat schon einen Grund, warum man heute in der Regel - auch als Mitarbeiter und ebenso als Firma - für Schäden erst dann wirklich haftet, wenn man diese fahrlässig, grob fahrlässig bis hin zu mutwillig in Kauf nimmt und man ansonsten in der Regel eher nichts zu befürchten hat.

Fehler sind menschlich und können jedem passieren. Du forderst in deinem Beitrag die Haftung für Fehler - ohne die nun erfolgte Differenzierung - und damit forderst du die Haftung für etwas, was jedem von uns jeder Zeit passieren kann.
Conqi schrieb:
Abgesehen davon muss das auch nicht bedeuten, dass man für jeden Bug in den Ruin getrieben wird.
Aus meiner Sicht muss ich dir an der Stelle leider eine gewisse Kurzsichtigkeit unterstellen. Ich würde dir mal an der Stelle empfehlen dich mal mit dem US oder allgemein angelsächsischem Rechtssystem zu befassen und was da teilweise für übertriebene Schadensersatzforderungen durchgehen und bei der Klagefreudigkeit im amerikanischen Raum ist man als Entwickler ruckzuck im Ruin, egal ob Firma oder nicht.
Conqi schrieb:
Aber verbindliche Reaktionszeiten wären schon mal ein Anfang.
Und was betrachtest du als Reaktion? Eine Zeit, in der ein Fehler behoben sein soll? Die Meldung der Entwickler, dass sie die Lücke registriert haben? Hier haben die Entwickler - log4j - sogar recht schnell reagiert und die Lücke geschlossen in den gepflegten Zweigen.


Conqi schrieb:
Es ging mir nie um OpenSource.
Es ging dir nie um OpenSource? Du hast schon mitbekommen, dass es hier um eine Lücke in einer OpenSource-Bibliothek geht?

Ich muss ehrlich schreiben: Sammel erst mal deine Gedanken, befasse sich mit der Materie, dann werde mal etwas kreativ und denke weiter als bis zu deinem aktuellen Horizont und validiere deine Gedanken.

Es gibt in der Softwareentwicklung einige Probleme, einige viele Probleme, nur die Forderung nach Haftung werden diese Probleme nicht lösen, sondern bergen ganz andere gefahren.

Was es braucht - und da stimme ich dir zum Teil bei den Reaktionszeiten zu - ist ein deutlich besseres Fehlermanagement in Firmen, aber auch Open-Source-Projekten. Ebenso braucht es auch heute eine deutlich bessere Qualitätssicherung und ebenso auch wieder den Wunsch nicht möglichst schnell ein Produkt auf den Markt zu werfen, sondern ein möglichst perfektes Produkt. Nur die Probleme, die dazu führen, dass Qualitätssicherungen immer weniger Personal haben, sind eher in der Ecke BWL zu suchen als in der Entwicklungsabteilung.
Web-Schecki schrieb:
Das Problem ist vermutlich, dass erstmal niemand ein Problem darin sieht, irgendwelche Java-Strings an log4j zu übergeben, weil die schlicht geloggt werden sollen und das jetzt erstmal nicht problematisch sein sollte. Auch wenn der String von außen kommt. Man checkt vielleicht vorher die Länge, damit man nicht durch bösartige Nutzereingaben die Platte vollschreibt, aber das war es wahrscheinlich auch. Halte ich zumindest nicht für abwegig.
Ehrlich: Das ist absolut nicht abwegig und wird vermutlich auch so gemacht, nur ist das ja schon ein Teil des Problems, dass hier nun knallt.

Viele Entwickler - egal ob OpenSource oder in Firmen - sind oft viel zu blauäugig, was Nutzereingaben angehen. Problematisch wäre das im Fall der Logs - hier - dann eigentlich auch nicht, wenn die Eingaben einfach in eine Datei geschrieben werden würden oder woanders.

Damit zu dem Punkt:
Web-Schecki schrieb:
Auf der anderen Seite macht log4j etwas eher dämliches, wenn es die Strings interpretiert. Und vielen Nutzern ist wohl schlicht nicht klar gewesen, dass das überhaupt passiert.
Richtig, das ist etwas saudämliches, diese Funktion wurde aber eingebaut, weil man ja wohl die Strings "schöner" machen wollte. Wenn ich mir jetzt die API-Dokumentation ansehe, wird da aber auch entsprechend die Möglichkeit beschrieben und zeigt dann ein weiteres Problem: Viele Entwickler nehmen sich heute einfach keine Zeit mehr mal eine Dokumentation zu lesen und bauen einfach den Code ein.

Hier kommen quasi 3 Fehler zusammen: Mächtiger Logger, der Strings interpretiert, Entwickler, die die Dokumentation nicht lesen und Entwickler, die Nutzereingaben ohne Prüfung an einen mächtigen Logger geben. Eine ganz gefährliche Mischung!
Web-Schecki schrieb:
Die Entwickler wurden dafür auch hart angegangen, aber dort liegt meines Erachtens das eigentliche Problem: Eine logging-Bibliothek ist komplexer als (meist) nötig, kann die Komplexität nicht einfach reduzieren, ohne Kompatibilitätsprobleme hervorzurufen (laut Entwickler wäre die Interpretation der Eingaben sonst schon längst entfernt worden), die dadurch zustande kommen, dass die Bibliothek so weit verbreitet ist.
Das ist allgemein heute ein Problem auf vielen Ebenen, dass man heute immer komplexer wird, weil man irgendwie jeden Spezialfall abdecken will.

Aber, das ist eine andere Diskussion.
Nolag schrieb:
Wenn man bedenkt, wie viele Leute da draußen Software unter solchen Bedingungen entwickeln, dann passiert eigentlich relativ wenig.
Ach, wie gesagt, die Fehler pro 1000 Zeilen Code hat in den letzten Jahren nicht zugenommen, sondern nimmt eher ab durch immer bessere Werkzeuge.

Das Problem heute ist eher, dass Softwareentwicklung heute sehr einfach geworden ist und die Hürden quasi nicht mehr vorhanden sind und Entwickler grundlegend "Faul" sind, gleichzeitig aber der Termindruck immer größer wird.

Ich habe mich für meine neue Stelle ganz bewusst entschieden, weil ich diesen Druck in der Form nicht mehr ausgehalten habe, wobei mir das Entwickeln sehr viel Spaß macht. Dumme war nur, dass ständig irgendwelche BWL-Futzis meinten es besser zu wissen, ständig irgendwelche Berater - in der Regel auch BWL-Futzis - angeworben haben, die mit Buzzwords hantierten, wir Entwickler immer mehr zu Befehlsempfängern wurden und wenn die Kacke am Dampfen war auch die Schuld auf uns geschoben wurde, obwohl wir von Anfang an gesagt haben, dass gewisse Dinge nicht gehen oder das so nicht passt.

Und das zieht sich quasi durch die ganze Branche, selbst bei den "Techriesen", dass da teilweise heute auch Teamleiter sind, die ständig mit Buzzwords umsich werfen, wobei die Teamleiter da oft schneller gehen, als man denkt, wenn sie "inkompetent" sind, da kommt dann aber der zeitliche Druck.
Nolag schrieb:
. Schwerwiegende Fehler werden auch in sehr gut untersuchten Bibliotheken immer wieder übersehen. Ein aktuelles Beispiel ist NSS (CVE-2021-43527). Das ist wahrscheinlich eine der am besten untersuchten Bibliotheken und sie enthielt trotzdem eine RCE Lücke.
Das wird auch immer wieder zukommen, der Code bleibt ja nicht stehen. Und Codevalidierung und Prüfung ist so unendlich komplex.

Zumal man auch bedenken muss, dass es Sicherheitslücken gibt, die "by Design" sind, andere sind durch Unachtsamkeit der Entwickler bei der Entwicklung. Komplexes Thema, zu Komplex um da wirklich auch alle möglichen Fallstricke anzusehen und dann halt wie immer: Zeit.
meymo schrieb:
Weist du was mich als professionellen Java Entwickler am meisten an dieser ganzen Geschichte stört?
Ich bin ehrlich: Bis heute hab ich die meisten Logger für meine Projekte aber auch in den Firmen selbst geschrieben und kam niemals auf den Gedanken dafür eine Bibliothek zu verwenden.

Du hast recht: Log4J ist echt ein fettes Monstrum. Ich glaub, das da hier teilweise auch bei manchen Projekten der Wunsch nach einem möglichst genauem Logfile vorhanden ist.
borizb schrieb:
Die IT Chefin hats weil es unklar war vom Netz genommen, die schaut das die Tage tiefer an.
Ist ja in so einem Fall auch das einzig richtige.
Crowbar schrieb:
Die Chronologie der Ereignisse lässt lediglich zwei Schlussfolgerungen zu: Entweder haben die Entwickler das gravierende Gefährdungsrisiko für Anwender selbst nicht erkannt oder sie haben die Nutzer ihrer Bibliothek bzw. deren Anwender jahrelang sehenden Auges in den Untergang reiten sehen und dies schlicht ignoriert.
Und die dritte Schlussfolgerung: Die Entwickler haben das Problem nicht erkannt und die Entwickler, die diese Bibliothek einsetzten genauso wenig.

In so einem Fall: Geh in so einem Fall immer von kollektiver Doofheit aus. ;)
foo_1337 schrieb:
Hm ja, weil ja C, nodejs usw. nie Probleme hatten und haben. Kannst du dein substanzloses Java Bashing einfach mal sein lassen?
Ach, lass ihn doch. ;) Wenn er nicht versteht, dass diese Lücke nichts mit der gewählten Programmiersprache zutun hat, sondern beim Design der Bibliothek, wirst du ihn da auch nicht mit erreichen.

In C, C++, C#, D, JavaScript, TypeScript usw. kann man auch solche Sicherheitslücken aufmachen, wenn man will und entsprechende Funktionalitäten schafft. Bestesbeispiel bei C, C++ und Co wäre zum Beispiel LUA-Skript, wenn man das nicht wirklich sauber konfiguriert: Sicherheitslücke. In Skriptsprachen - JavaScript (auf dem Node.JS aufbaut, will bisschen klugscheißen) PHP, Perl und Co wäre es eval, mit der man so nen Schabernack treiben kann.
foo_1337 schrieb:
a, mir ist bekannt, dass Java unter DAUs (sorry dafür) einen schlechten Ruf wegen diversen Applet Geschichten aus den 90ern hatte. Aber das hier hat damit nichts, aber rein gar nichts zu tun.
Richtig und Java ist weit besser als sein Ruf! Ich mag Java!
calluna schrieb:
Das hat doch nichts mit Java zu tun... so ein Einfallstor wie dieses hier, kann in (fast) jeder Sprache geschrieben werden... egal ob mit JavaScript und Node.js, C#, Python, Scala, Clojure, Rust, Elixir, Erlag, Scheme, Pharo, Ruby, Perl, C++ und C, Go, Swift... und etlichen anderen Sprachen, die ich nicht kenne.
Warum zählst du eigentlich Node.JS in den ganzen Programmiersprachen auf? Node.JS IST KEINE PROGRAMMIERSPRACHE! :p Node.JS basiert auf JavaScript, deswegen ja auch das JS am Ende! So viel Ordnung muss sein!


Aber zurück zum Thema: Solche Lücken kann man in fast jeder Sprachen schaffen, man muss aber in dem Fall dazu schreiben, dass das in manchen Sprachen unterschiedlich schwer ist. Am einfachsten ist so eine Lücke in Skriptsprachen, da die oft "eval" haben.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/eval
https://www.php.net/manual/de/function.eval.php
https://www.programiz.com/python-programming/methods/built-in/eval

In Sprachen wie C# oder Java ist das dann etwas komplizierter, aber noch einfach genug, dass man es unbewusst durchaus schafft.

In C, C++, Rust muss man dann sagen: Dort muss man schon fast aktiv so eine Lücke wie hier einbauen.

BeBur schrieb:
log4j ist ja aber gerade eine FOSS Alternative für Logging.
Ach, in der Regel schreibt man sich seine Logger selbst, weil das eher das kleine Einmal-Eins ist. ;) log4j ist so "beliebt" weil es halt scheiß mächtig ist.
highco schrieb:
Die Geschichte zeigt eher die Stärke von Java und Open Source. In einer kleinen, weniger genutzten Library wäre so ein Bug/Exploit möglicherweise nie publik geworden.
Richtig und bei einer Firmenbibliothek wohl vermutlich nie.
 
  • Gefällt mir
Reaktionen: maxpayne80, mental.dIseASe, MadCat[me] und eine weitere Person
maxpayne80 schrieb:
Hoffe mal das war es dann fürs Erste ...
Die 2.16.0 ist schon draußen. :D

From version 2.16.0, Log4j disables access to JNDI by default. JNDI lookups in configuration now need to be enabled explicitly. Also, Log4j now limits the protocols by default to only java, ldap, and ldaps and limits the ldap protocols to only accessing Java primitive objects. Hosts other than the local host need to be explicitly allowed. The message lookups feature has been completely removed.

Wir sind aber heute aber auch mit 2.15 in Produktion. Die nun per default vorhandenen Restriktionen wurden sowieso schon auf andere Weisen sichergestellt.
 
  • Gefällt mir
Reaktionen: maxpayne80, cmi777 und Marco01_809
DevPandi schrieb:
Ach, in der Regel schreibt man sich seine Logger selbst,
Das würde ich nur machen, wenn es keine(n) gäbe (*). Warum das Rad zum x-ten Male erfinden - das ist doch Sinn und Zweck von Frameworks und Libraries.


*: Als Übung hatte ich das mal vor langer Zeit gemacht. War eine Art smartes "log4j-Adapter", der die innerste Kernfunktion (Kategorienlogging) auch bereitstellte, wenn Log4j nicht im classpath gefunden wurde - im Notfall (IOExceptions beim file append) direkt nach stdout.
 
Zuletzt bearbeitet: (Umformulierung & Ergänzung)
DevPandi schrieb:
Warum zählst du eigentlich Node.JS in den ganzen Programmiersprachen auf? Node.JS IST KEINE PROGRAMMIERSPRACHE!

Das "und" zwischen JavaScript und NodeJS war keine Aufzählung. Ohne eine (serverseitige) Laufzeitumgebung wie NodeJS hätte ich JS in meiner Aufzählung an Sprachen weglassen müssen. ;-)

Aber da mit NodeJS auch eine Standardbibliothek verbunden ist... und es dort eigene Idiome gibt, ist JS im Browser und in NodeJS auch nicht wirklich dasselbe. (Aber das ist jetzt eher spitzfindig…)

Und ja, ich bezog mich auf Lücken, die nicht mit Nachlässigkeit zusammenhängen - sondern mit Fehlern im Design. … Das Gesetz der geringsten Überraschung ist nicht nur beim UI Design sinnvoll.
 
Zuletzt bearbeitet:
DevPandi schrieb:
Fehler sind menschlich und können jedem passieren. Du forderst in deinem Beitrag die Haftung für Fehler - ohne die nun erfolgte Differenzierung - und damit forderst du die Haftung für etwas, was jedem von uns jeder Zeit passieren kann.
Natürlich können Fehler passieren. Das gilt aber genau so für physische Produkte und da gibt es trotzdem Garantien und eben auch Schadensersatzansprüche, wenn bei einem Auto beispielsweise die Bremsen versagen.

DevPandi schrieb:
Ich würde dir mal an der Stelle empfehlen dich mal mit dem US oder allgemein angelsächsischem Rechtssystem zu befassen und was da teilweise für übertriebene Schadensersatzforderungen durchgehen
Man muss aber auch betrachten, dass diese Millionen-Klagen so praktisch nie durchgehen außer sie sollen aus Sicht des Gerichts Signalwirkung haben. Im Normalfall wird sich bei einer deutlich niedrigeren Summe getroffen.

DevPandi schrieb:
Und was betrachtest du als Reaktion? Eine Zeit, in der ein Fehler behoben sein soll? Die Meldung der Entwickler, dass sie die Lücke registriert haben? Hier haben die Entwickler - log4j - sogar recht schnell reagiert und die Lücke geschlossen in den gepflegten Zweigen.
DevPandi schrieb:
Du hast schon mitbekommen, dass es hier um eine Lücke in einer OpenSource-Bibliothek geht?
Ich weiß nicht, ob das in meinem Post so nicht richtig durchkam, aber es ging mir nicht un die log4j-Entwickler im Speziellen, sondern eher um allgemeine Überlegungen und den Umgang diverser Firmen, die log4j in ihren Produkten einsetzen.

Wie gesagt: wenn ein Open Source Entwickler in seiner Freizeit Scheiße baut, dann ist das zwar schlecht, aber er ist da aus meiner Sicht niemandem Rechenschaft schuldig. Anders sieht es aber bei Firmen aus, die für ihre Software gutes Geld nehmen.
Ein Beispiel, das bei uns gerade aktuell ist: Dell ist immer noch dabei ihre Liste zu vervollständigen, welche Soft- und Hardware von der log4shell-Lücke betroffen ist und welche nicht. Das ist wie ich finde eine vollkommen inakzeptable Zeitspanne, um sowas eigentlich doch recht simples herauszufinden und zu veröffentlichen.

DevPandi schrieb:
Ebenso braucht es auch heute eine deutlich bessere Qualitätssicherung und ebenso auch wieder den Wunsch nicht möglichst schnell ein Produkt auf den Markt zu werfen, sondern ein möglichst perfektes Produkt. Nur die Probleme, die dazu führen, dass Qualitätssicherungen immer weniger Personal haben, sind eher in der Ecke BWL zu suchen als in der Entwicklungsabteilung.
Aber wie willst du diese Ziele erreichen? Firmen interessiert am Ende des Tages nur das Geld. Da man gute Software-Entwicklung nicht wirklich billiger machen kann, muss man entsprechend schlechte Entwicklung teurer machen.
Dabei geht es auch nicht darum, dass einzelne Entwickler am Ende Strafen zahlen sollen. Genau so wenig wie ein einzelner Mitarbeiter bei VW für das oben genannte Versagen von Bremsen verantwortlich wäre. Die Firma hat sich darum zu kümmern, dass genau Zeit und Geld vorhanden sind, um saubere Ergebnisse abzuliefern.
 
  • Gefällt mir
Reaktionen: ###Zaunpfahl###
DevPandi schrieb:
Hier haben die Entwickler - log4j - sogar recht schnell reagiert und die Lücke geschlossen in den gepflegten Zweigen.
Das ist gut und war auch nötig um die Gefahr zu reduzieren.
DevPandi schrieb:
In C, C++, C#, D, JavaScript, TypeScript usw. kann man auch solche Sicherheitslücken aufmachen, wenn man will und entsprechende Funktionalitäten schafft
Das ist richtig nur bei JAVA hat man im Falle noch ein großes JVM im Anhang welches weitere Sicherheitsprobleme mitbringen kann. JAVA ist bereits öfter durch Sicherheitslücken aufgefallen.
DevPandi schrieb:
Ach, in der Regel schreibt man sich seine Logger selbst, weil das eher das kleine Einmal-Eins ist.
Das wäre am besten da man dann im Unternehmen sofern alle den gleichen nutzen den Gefahren solcher nicht ausreichend geprüften aus dem Weg geht.
 
ModellbahnerTT schrieb:
Das ist richtig nur bei JAVA hat man im Falle noch ein großes JVM im Anhang welches weitere Sicherheitsprobleme mitbringen kann. JAVA ist bereits öfter durch Sicherheitslücken aufgefallen.
Na wie gut, dass viele der anderen heute gebräuchlichen Sprachen keine VM oder keinen Interpreter brauchen... Oh wait.
Und es gab garantiert mehr f*ckups wegen miesem C/C++ code als welche aufgrund von Lücken in der JVM. Vieles was du in C oder C++ komplett vergeigen könntest, erlaubt Java erst gar nicht.
Und btw: In den meisten Fällen schützt die VM dich sogar. Aber hey, konntest du ja nicht wissen, weil du dich vermutlich nie damit beschäftigt hast.
Java hat Grundsteine gelegt und Meilensteine geschaffen, ohne die diverse andere Sprachen garantiert nicht so weit wären wie jetzt. Gosling war ein grandioser Denker und Sun hat ihm glücklicherweise sehr viele Freiräume gelassen.
Ich habe es ja bereits hier schonmal geschrieben: Ich mag die Sprache(!) nicht, aber aufgrund anderer Gründe. Aber ich kenne die Vorteile von Java und weiß, welche Steine es in den vergangenen Dekaden ins Rollen gebracht hat. Das kann man halt auch einfach mal anerkennen.
ModellbahnerTT schrieb:
Das wäre am besten da man dann im Unternehmen sofern alle den gleichen nutzen den Gefahren solcher nicht ausreichend geprüften aus dem Weg geht.
Das NIH Syndrom hat auch schon viel negatives erreicht, keine Sorge.
 
  • Gefällt mir
Reaktionen: maxpayne80, mental.dIseASe, PHuV und 2 andere
Zurück
Oben