Уязвимость отказа в обслуживании в OpenVPN

от автора

image
В OpenVPN < 2.3.6 обнаружена уязвимость, которая позволяет аутентифицированным клиентам удаленно уронить VPN-сервер, т.е. выполнить атаку отказа в обслуживании.
Уязвимость заключается в некорректном использовании assert(): сервер проверяет минимальный размер control-пакета от клиента именно этой функцией, из-за чего сервер аварийно завершится, если получит от клиента control-пакет длиной менее 4 байт.
Следует отметить, что для совершения атаки достаточно установить коммуникацию через control channel, т.е. в случае с TLS, сам TLS-обмен. VPN-провайдеры, которые реализуют аутентификацию с использованием логина/пароля и общего TLS-ключа, подвержены уязвимости еще до стадии проверки логина и пароля.

Уязвимость имеется во всех версиях OpenVPN второй ветки, т.е. начиная, как минимум, с 2005 года. Ветка OpenVPN 3, на которой основаны мобильные клиенты, не подвержена данной уязвимости.

Следует либо обновиться до версии 2.3.6, либо наложить патч на вашу версию OpenVPN.

Уязвимости присвоен CVE-номер CVE-2014-8104.

Security Announcement с описанием уязвимости
Сообщение на форуме
CVE-2014-8104
Последняя версия OpenVPN

ссылка на оригинал статьи http://habrahabr.ru/post/244705/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *