Błąd w OpenSSL zakłócił działanie niektórych aplikacji openSUSE Tumbleweed po aktualizacji

Aktualizacja OpenSSL do wersji 1.1.1b w repozytorium openSUSE Tumbleweed doprowadziło do naruszeniu działania niektórych aplikacji związanych z libopenssl i korzystających z rosyjskiej lub ukraińskiej lokalizacji. Problem pojawił się po wprowadzeniu do OpenSSL zmiany do obsługi błędów w buforze wiadomości (SYS_str_reasons). Bufor został zdefiniowany na 4 kilobajty, ale tego okazało się za mało dla niektórych lokalizacji unicode.

Wynik funkcji strerror_r, używanej do wypełnienia bufora, dla rosyjskiej lokalizacji wynosi 6856 bajtów, a dla ukraińskiej — 7000. W kodzie OpenSSL pierwotnie był sprawdzano na przepełnienie, ale przy obcinaniu końcówki brano pod uwagę rozmiar o jeden bajt większy niż rzeczywista wartość, co prowadziło do jednodolarowego przepełnienia i awarii przy ładowaniu zbyt długich dekodowań kodów błędów.

Obecnie już przygotowano poprawkę, ale jeszcze nie została przyjęta. Aby cofnąć się do poprzedniej stabilnej wersji (OpenSSL 1.1.0h), można wykonać polecenia:

sudo zypper in tumbleweed-cli
sudo tumbleweed init
sudo tumbleweed switch 20190514
sudo zypper ref && sudo zypper dup && sudo zypper inr

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster