Ажурирањето 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_callback(ify) .

Бидејќи повеќето апликации не повикуваат SSL_CTX_set_cert_verify_callback(), појавата на грешка SSL_ERROR_WANT_RETRY_VERIFY може да биде погрешно протолкувана и да резултира со пад, циклус или друго неправилно однесување. Проблемот е најопасен во комбинација со друга грешка во OpenSSL 3.0, што предизвикува внатрешна грешка кога X509_verify_cert() обработува сертификати без екстензијата „Subject Alternative Name“, но со врзување на името во ограничувањата за употреба. Во овој случај, нападот може да резултира со аномалии зависни од апликацијата во обработката на сертификатот и воспоставувањето на сесијата TLS.

Извор: opennet.ru

Додадете коментар