Оновлення OpenSSL 3.0.1 з усуненням уразливості

Доступні коригувальні випуски криптографічної бібліотеки OpenSSL 3.0.1 та 1.1.1m. У версії 3.0.1 усунуто вразливість (CVE-2021-4044), також в обох випусках виправлено близько десятка помилок.

Вразливість присутня у реалізації клієнтів SSL/TLS і пов'язана з тим, що бібліотека libssl некоректно обробляє негативні значення кодів помилок, що повертаються функцією X509_verify_cert(), що викликається для перевірки сертифіката, переданого клієнту сервером. Негативні коди повертаються у разі виникнення внутрішніх помилок, наприклад, у разі неможливості виділити пам'ять під буфер. У разі повернення подібної помилки наступний виклик функцій вводу/виводу, таких як SSL_connect() і SSL_do_handshake(), призведе до повернення неуспішного завершення та коду помилки SSL_ERROR_WANT_RETRY_VERIFY, який повинен повертатися тільки якщо програма раніше здійснила.

Оскільки більшість програм не викликають SSL_CTX_set_cert_verify_callback(), поява помилки SSL_ERROR_WANT_RETRY_VERIFY може бути неправильно витлумачена і призвести до аварійного завершення, зациклювання або інших некоректних реакцій. Найбільшу небезпеку проблема становить у комбінації з іншою помилкою в OpenSSL 3.0, що призводить до виникнення внутрішньої помилки при обробці сертифікатів X509_verify_cert() без розширення «Subject Alternative Name», але з прив'язками до імен в обмеженнях використання. У цьому випадку атака може призвести до аномалій, що залежать від додатків, при обробці сертифікатів і встановленні сеансів TLS.

Джерело: opennet.ru

Додати коментар або відгук