Es ist ja viel zu mühsam, bei so einem aufruf von malloc()
an den als parameter übergebenen ausdruck den schlichten term + 1
anzuhängen! Deshalb habt ihr das auch dann nicht gemacht, als ihr auf diesen fehler hingewiesen wurdet und als euch gesagt wurde, dass man damit einen buffer overflow von einem byte hinbekommt, der möglicherweise sogar ausbeutbar ist. Nee, das habt einfach so gelassen. Das ist halt ein fehler, und warum sollte man den denn korrigieren, so richtig umständlich mit einem checkout, dem öffnen der datei im editor, dem hinzufügen von drei zeichen an der stelle mit dem fehler und einem anschließenden checkin. Selbst, wenn man die änderung geschwätzig beschreibt, statt einfach nur die nummer aus dem bugträcker zu nehmen, gehen dafür volle fünf minuten lebenszeit drauf. Da sagt man dann lieber: Nee, das ist doch gar kein problem, wir lassen den fehler einfach drin…
Und so habt ihr das fast ein volles jahrzehnt lang gehandhabt. Bis es dann ein problem geworden ist, weil euer gut ein jahrzehnt lang aufrechterhaltener „fehler“ — wenn auch mit einem gewissen aufwand und unter ausnutzung anderer schwachstellen — ausbeutbar ist.
Hallo?! Entwickler?! Seid ihr dafür etwa von der NSA bezahlt worden? Habt ihr das dingens nicht rausgenommen, weil es eine völlig beabsichtigte hintertür war? Ich habe jedenfalls keine bessere erklärung dafür.
Und wer an der glibc mitarbeitet und etwas anstand hat, ist vermutlich gut beraten, sich auch mal den ganzen anderen kohd von diesem Florian Weimer anzuschauen. Es würde mich nicht wundern, wenn der sein geld nicht nur von red hat bekommt…
Warum nicht nur von Red Hat? Es gibt doch kaum eine Firma, die dümmere Vollidioten (Lennart Poettering) beschäftigt.