Die Entwickler des OpenBSD-Projekts haben die tragbare Version des Pakets LibreSSL 3.9.0 veröffentlicht, das ein Fork von OpenSSL darstellt und auf die GewĂ€hrleistung eines höheren Sicherheitsniveaus abzielt. Das LibreSSL-Projekt konzentriert sich auf eine qualitativ hochwertige UnterstĂŒtzung der SSL/TLS-Protokolle, indem es ĂŒberflĂŒssige FunktionalitĂ€ten entfernt, zusĂ€tzliche SchutzmaĂnahmen hinzufĂŒgt und eine umfassende Bereinigung und Umstrukturierung des Codes durchfĂŒhrt. Die Version LibreSSL 3.9.0 wird als experimentell angesehen, in der Funktionen entwickelt werden, die in OpenBSD 7.5 integriert werden. Gleichzeitig wurde die stabile Version LibreSSL 3.8.3 veröffentlicht, in der mehrere spezifische Windows-Fehler behoben und die UnterstĂŒtzung des Schutzmechanismus CET (Control-flow Enforcement Technology) verstĂ€rkt wurde.
Besonderheiten von LibreSSL 3.9.0:
- UnterstĂŒtzung fĂŒr ECDSA-Signaturalgorithmen mit SHA-3-Hashes hinzugefĂŒgt.
- UnterstĂŒtzung fĂŒr HMAC mit abgeschnittenen SHA-2- und SHA-3-Hashes als PBE PRF hinzugefĂŒgt.
- Ănderungen zur Verbesserung der PortabilitĂ€t auf andere Plattformen vorgenommen. Um Probleme beim statischen Binden zu vermeiden, sind die meisten exportierten Symbole von LibreSSL, die zur GewĂ€hrleistung der KompatibilitĂ€t verwendet werden, mit dem PrĂ€fix âlibressl_â versehen. In CMake-basierten Builds wurde der Export von KompatibilitĂ€tssymbolen von libcrypto eingestellt.
- Ănderungen zur Verbesserung der KompatibilitĂ€t mit OpenSSL vorgenommen. Beispielsweise wurden Aliasnamen ChaCha20 und chacha20 fĂŒr den ChaCha-Algorithmus hinzugefĂŒgt, die Funktionsweise der Funktionen SSL_library_init() und OPENSSL_init_ssl() vereinheitlicht und die Aufrufe EVP_{CIPHER,MD}_CTX_init() an das Verhalten von OpenSSL angepasst.
- In das Tool openssl wurden die Flags â-new -force_pubkeyâ, â-multivalue-rdnâ, â-set_issuerâ, â-set_subjectâ und â-utf8â hinzugefĂŒgt.
- Wechsel von der Verwendung des Aufrufs OBJ_bsearch_() zur Standardfunktion bsearch() vollzogen.
- Die Implementierung der Funktion by_file_ctrl(), EVP_Cipher{Init,Update,Final}() und der API OBJ_* vereinfacht.
- Eine umfassende Umstrukturierung der API EVP wurde durchgefĂŒhrt. Die Funktionen EVP_add_{cipher,digest}() wurden entfernt.
- Die Verarbeitung von X509_TRUST wurde vereinfacht.
- Die Funktionen BIO_dump*() wurden neu geschrieben.
- Die UnterstĂŒtzung globaler Tabellen, die nicht fĂŒr die Mehrfachverwendung angepasst sind, wurde eingestellt. In diesem Zusammenhang wird nun die Zuordnung von Aliasnamen zu Chiffren und Hashes sowie das HinzufĂŒgen eigener Zeichenfolgen, Methoden fĂŒr ASN.1, PKEY und CRL nicht mehr unterstĂŒtzt.
- Die Funktionen BIO_set(), BIO_{sn,v,vsn}printf(), sk_find_ex() und OBJ_bsearch_() sowie zahlreiche veraltete Funktionen der CRYPTO-API wurden entfernt.
- Der öffentliche Zugang zur API X509_CERT_AUX und X509_TRUST wurde eingestellt.
- Die UnterstĂŒtzung fĂŒr die Algorithmen GOST und STREEBOG wurde eingestellt.
- Die UnterstĂŒtzung fĂŒr den Mechanismus CET (Control-flow Enforcement Technology) wurde erweitert, der zum Schutz vor der AusfĂŒhrung von Exploits dient, die mit Techniken der RĂŒcksprungorientierten Programmierung (ROP, Return-Oriented Programming) erstellt wurden.
Quelle: opennet.ru
