Warum verwendet Apple eine anfällige Version von OpenSSL?
Ist es nicht.
Wenn Sie auf den Link klicken, den Sie in Ihrer Frage gepostet haben, werden Sie feststellen, dass dieses Update eine Reihe von Schwachstellen behebt, die in OpenSSL 0.9.8, 1.0.0, 1.0.1 und 1.0.2 identisch sind.
Mit anderen Worten, die Version 1.0.2, die Sie später als Alternative vorschlagen, war genauso anfällig wie 0.9.8 und beide wurden gleichzeitig behoben.
Mit dem neuesten OS X Update ( 10.10.5 ) führt Apple OpenSSL 0.9.8 ein . Ich habe die offizielle OpenSSL-Seite durchgeblättert und dort konnte ich Version 1.0.2 bekommen .
Apple aktualisiert OpenSSL auf 0.9.8zg, was nur 2 Monate alt ist und nur 4 Wochen älter als 1.0.2d.
Meine Frage ist: Warum verwendet Apple eine ältere Version von OpenSSL? Liegt es an veralteten Funktionen in Version 1.0 oder was ist der Grund dafür?
Das müssen Sie Apple fragen. Ich vermute, dass 0.9.8 die Version ist, mit der sie ihre Kompatibilitätstests durchgeführt haben, und ein Upgrade auf eine neuere Version würde eine völlig neue Testrunde für eine Komponente erfordern, die ohnehin veraltet ist. Da es veraltet ist, sollte neuere Software (die möglicherweise auf neueren Funktionen basieren würde) es sowieso nicht verwenden, und ältere Software, die es noch verwendet, verwendet die neuen Funktionen nicht (weil sie nicht vorhanden sind) und ist möglicherweise sogar defekt durch ein Update, also warum sich die Mühe machen?
Solange die OpenSSL-Community noch den 0.9.8-Zweig unterhält, muss Apple nicht einmal die Arbeit des Backporting von Patches erledigen.
Beachten Sie, dass dies nichts Ungewöhnliches ist. Apple hat eine alte Version von Ruby für eine sehr lange Zeit ausgeliefert, und sie werden im Allgemeinen nicht während eines Veröffentlichungszyklus aktualisiert, sondern nur zwischen Veröffentlichungen. Sowohl Linux-Distributionen als auch BSDs und andere Unix-Distributionen aktualisieren in der Regel keine Versionen während eines Releases, sondern wenden nur Bugfixes und Sicherheitskorrekturen an. Insbesondere Debian behebt im Allgemeinen nicht alle Fehler, sondern nur Sicherheitslücken und Fehler, die zum Verlust von Benutzerdaten führen können. Jede Änderung, auch ein Bugfix, ist eine potenzielle Inkompatibilität und ein Potenzial für neue Fehler. bekannte Fehler sind besser als unbekannte!