LINUX.ORG.RU

Новые уязвимости OpenSSL

 , ,


0

5

На сайте openssl.org опубликована информация о новых проблемах безопасности в OpenSSL, некоторые из них могут использоваться для получения передаваемых данных.

SSL/TLS уязвимость MITM (man in the middle) (CVE-2014-0224)

Используя специально сформированный пакет handshake (отправляемый при установке соединения), злоумышленник может вынудить клиент и сервер создать слабые ключи. Данная уязвимость позволяет расшифровывать и подменять данные, реализуя атаку man-in-the-middle. Данная атака осуществима только в случае работы с уязвимыми клиентом и сервером.

Уязвимы серверные реализации OpenSSL 1.0.1 и 1.0.2-beta1, клиентские 0.9.8, 1.0.0, 1.0.1. Рекомендуется обновить ПО.

DTLS уязвимость, связанная с рекурсией (CVE-2014-0221)

Узвимость в реализации протокола датаграмм безопасности транспортного уровня, работающего поверх UDP, позволяет вызвать падение OpenSSL клиента в результате ухода в рекурсию. Может использоваться для выполнения DoS атаки.

Пользователям OpenSSL 0.9.8 DTLS необходимо обновиться до версии 0.9.8za
Пользователям OpenSSL 1.0.0 DTLS необходимо обновиться до версии 1.0.0m.
Пользователям OpenSSL 1.0.1 DTLS необходимо обновиться до версии 1.0.1h.

DTLS проблема с ошибочными фрагментами (CVE-2014-0195)

Отправка неверных фрагментов DTLS может привести к ошибке переполнения буфера. Потенциально может привести к исполнению произвольного кода.

Уязвимость касается как клиента, так и сервера, рекомендации по обновлению такие же, как и в предыдущем пункте.

SSL_MODE_RELEASE_BUFFERS разыменование нулевого указателя (CVE-2014-0198)

Удаленный злоумышленник может вызвать отказ в обслуживании, за счет разыменования нулевого указателя в функции do_ssl3_write_function. Уязвимость затрагивает OpenSSL 1.0.0 и 1.0.1, в которых включена опция SSL_MODE_RELEASE_BUFFERS, что бывает редко.

Также в этом случае из-за ошибки в функции ssl3_read_bytes, злоумышленник может вставить свои данные в иные сессии или вызвать отказ в обслуживании. (CVE-2010-5298)

Пользователям OpenSSL 1.0.0 необходимо обновиться до версии 1.0.0m.
Пользователям OpenSSL 1.0.1 необходимо обновиться до версии 1.0.1h.

DoS в анонимном ECDH (CVE-2014-3470) OpenSSL TLS в режиме анонимного ECDH подвержен уязвимости типа отказ в обслуживании.

Пользователям OpenSSL 0.9.8 DTLS необходимо обновиться до версии 0.9.8za
Пользователям OpenSSL 1.0.0 DTLS необходимо обновиться до версии 1.0.0m.
Пользователям OpenSSL 1.0.1 DTLS необходимо обновиться до версии 1.0.1h.

OpenSSL это свободная реализация протоколов TLS и SSL, повсеместно используемая в открытом ПО. Недавние сообщения об уязвимости heartbleed вызвали волну обсуждения надежности данной библиотеки.

>>> Подробности

★★

Проверено: maxcom ()
Последнее исправление: maxcom (всего исправлений: 3)

Самое поганое, что MiTM-атаке подвержен клиентский 0.9.8, которому уже много лет (первая версия выпущена 5 Jul 2005), и который используется в большом количестве прошивок устаревшего/неподдерживаемого оборудования.

Lothlorien ★★★
()
Ответ на: комментарий от I-Love-Microsoft

Короче, надо язык новый придумывать :) В смысле, чтобы работало медленно, но секурно. Этакий анти-Си...

новые стандарты C++ (11/14) как раз для этого и предназначены.

af5 ★★★★★
()
Ответ на: комментарий от anonymous

Слишком сильно боишься, что они залатают дыры?

В одиночку, небось, найти все дыры и залатать куда проще.

Deleted
()
Ответ на: комментарий от anonymous

Короче сработал некий эффект, когда вонь вокруг OpenSSL поднялась, все вдруг ломонулись код читать и баги выискивать. Раньше то все считали OpenSSL секюрным априори :)

black_13
()
Ответ на: комментарий от X-Pilot

Человекочасы опенсорс-кодеров бесплатны и бесконечны? Если нет — это относится и к ним.

x3al ★★★★★
()
Ответ на: комментарий от Lothlorien

Самое поганое, что MiTM-атаке подвержен клиентский 0.9.8, которому уже много лет (первая версия выпущена 5 Jul 2005), и который используется в большом количестве прошивок устаревшего/неподдерживаемого оборудования.

SSL/TLS MITM vulnerability (CVE-2014-0224)
The attack can only be performed between a vulnerable client *and* server. OpenSSL clients are vulnerable in all versions of OpenSSL. Servers are only known to be vulnerable in OpenSSL 1.0.1 and 1.0.2-beta1.

Мало того, что для осуществления атаки уязвимы должны быть обе стороны соединения, так ещё и на сервере должна быть одна из двух вполне конкретных версий. IMHO, крайне маловероятный сценарий, особенно в свете нынешней истерии по поводу OpenSSL и вызванного ей активного залатывания дыр.

anonymous
()

Вспоминается давнишний холивар про то что на си должны кодить реальные клуцхакеры, а не школота с индусами.. Похоже с реальными прогерами туго - раз ошибка за ошибкой следует. А может военные были правы на счёт Ады?

anonymous
()
Ответ на: комментарий от anonymous

на си должны кодить реальные клуцхакеры

Да, если понимать под «реальными кулхацкерами» совершенный ИИ, который не совершает ошибок.

quantum-troll ★★★★★
()

По крайней мере, в этот раз не вывалили внезапно. А то в прошлый раз пришлось, ждать до этого раза чтобы все обновились.

anonymous_sama ★★★★★
()
Ответ на: комментарий от cvs-255

Мир без перезагрузки обновлять нельзя. Им надо это говно выпиливать и переносить в порты.

prv_cowboy
()
Ответ на: комментарий от anonymous

Мало того, что для осуществления атаки уязвимы должны быть обе стороны соединения, так ещё и на сервере должна быть одна из двух вполне конкретных версий. IMHO, крайне маловероятный сценарий,

А сценарий с подставным сервером не рассматривается?

Lothlorien ★★★
()
Ответ на: комментарий от Lothlorien

А сценарий с подставным сервером не рассматривается?

При обмене конфиденциальной информацией с подставным сервером о MitM-ах уже можно не беспокоиться — данные-то всё равно уже «утекли». :)

anonymous
()
Ответ на: комментарий от anonymous_sama

А то в прошлый раз пришлось, ждать до этого раза чтобы все обновились.

Что это за поток сознания?

anonymous
()

Решето! Надо крыптопро покупать;)

multihead
()

Если в такое популярной и простой программе постоянно находят такие дырищи, то сложно даже представить что будет когда на порядки более сложный линукс пойдет в народ. Вакханалия будет похлеще чем на 98й венде, которая жопой смотрит в инет.

Reset ★★★★★
()
Ответ на: комментарий от Reset

там в ядре не только дырищи, но и куча хорошо замаскированных бекдоров от АНБ

WindowsXP ★★
()
Ответ на: комментарий от crutch_master

Те кто о них знали все это время

anonymous
()

Используя специально сформированный пакет handshake (отправляемый при установке соединения), злоумышленник может вынудить клиент и сервер создать слабые ключи. Данная уязвимость позволяет расшифровывать и подменять данные...

- Привет от Большого Брата.

anonymous
()
Ответ на: комментарий от I-Love-Microsoft

Вот почему нельзя писать на каком-то более надежном верифицируемом языке, гонять эту реализацию в целях поиска проблем, а затем уже транслировать в язык Си или машинные коды???

Есть же проекты для Python->Native и тому подобные...

Наверное, потому что профессиональный уровень разработчиков «более надёжных верифицируемых языков» типа питона позволяет в лучшем случае вызывать уже готовые функции из сишных либ, написанных другими.

anonymous
()
Ответ на: комментарий от I-Love-Microsoft

я вам предлагаю ознакомиться с теорией и практикой разработки по. узнать про тестирование, проверку покрытия кода, чем покрытие строк отличается от покрытия ветвей, как проверить приложение на утечки памяти, выходы за границы массивов и т.п.

это в общем-то применимо к любому языку, просто там где у си будет выход за массив и падение приложения, у джавы будет исключение и падение приложения. в общем очень рекомендую, возможно вам даже понравится тематика и вы захотите заниматься этим профессионально.

anonymous
()
Ответ на: комментарий от anonymous

это вы про ту яву, vm которой на сях написан и пару раз в неделю обновляется ?

handbrake ★★★
()
Ответ на: комментарий от ubuntuawp

Апдейтер работает только между релизами. И то если не стоит current или stable. Openssl входит в базовую поставку, в портах его нет, значит надо обновлять мир. Держать ревизию ядра, отличную от ревизии мира крайне не рекомендуется. Если знаешь как обновить ядро без перезагрузки, ты поделись. Хотя судя по всему ты о Фряхе мало что знаешь.

Конечно в каком-нибудь CentOS я бы уже сделал yum update -y и проблем не знал бы. Фряху на критически важные объекты ставят только идиоты.

prv_cowboy
()
Ответ на: комментарий от prv_cowboy

Причем тут ядро? freebsd-update также обновляет мир

# pkg search openssl
...
openssl-1.0.1_12
...

# pkg install openssl
Updating repository catalogue
The following 1 packages will be installed:

        Installing openssl: 1.0.1_12

The installation will require 8 MB more space

2 MB to be downloaded

Proceed with installing packages [y/N]:
# make quicksearch name=openssl
...
Port:   openssl-1.0.1_13
Path:   /usr/ports/security/openssl
Info:   SSL and crypto library
...
ubuntuawp ★★
()
Ответ на: комментарий от ubuntuawp

Причем тут ядро? freebsd-update также обновляет мир

Он обновляет между релизами. Если у меня последний релиз, какой смысл мне его использовать? К тому же у меня STABLE, он там вообще не работает.

По поводу openssl из портов, он поставится в /usr/local. Всё что из базы всё равно будет использовать тот, что в /usr/. К тому же не понятно как пересобрать те же порты, хотя бы, чтобы они использовали тот, что будет в /usr/local.

prv_cowboy
()

OpenSSL это дырявая реализация протоколов TLS и SSL, повсеместно используемая в открытом ПО.

thesis ★★★★★
()
Последнее исправление: thesis (всего исправлений: 1)

Мда. Чуть более года назад пришлось хорошенько покопаться в исходниках (поскольку документировано там ровным счётом нихрена), чтобы прикрутить кое-что из OpenSSL к жабе. У меня тогда аж глаза на лоб полезли, когда увидел все эти goto через goto в каждой третьей строке, и как-то никаких сомнений что оно решето с тех пор.

anonymous
()
Ответ на: комментарий от anonymous

это в общем-то применимо к любому языку, там где у си будет выход за массив и падение приложения, у джавы будет исключение и падение приложения

А там, где у Си будет «выход за массив», но не будет падения (heartbleed, ага), у джавы всё равно будет исключение. Но тестирование применимо к любому языку, да.

tailgunner ★★★★★
()
Ответ на: комментарий от prv_cowboy

Он обновляет между релизами. Если у меня последний релиз, какой смысл мне его использовать?

Вообще-то, freebsd-update security-патчи тоже ставит, в т.ч. правит /usr/src, если он есть.

А STABLE сам по себе надо обновлять периодически.

Lothlorien ★★★
()
Ответ на: комментарий от tailgunner

Потому что Java это своего рода песочница, которая выполняется внутри виртуальной машины, её то и языком назвать трудно, скорей игрушкой для проведения различных экспериментов.

anonymous
()
Ответ на: комментарий от Lothlorien

В любом случае без перезагрузки не обойтись. А с этим у меня проблема.

prv_cowboy
()
Ответ на: комментарий от anonymous

Java это своего рода песочница

Это совершенно не важно. В нативном языке с контролем границ тоже будет исключение.

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)
Ответ на: комментарий от tailgunner

А Java не есть нативный язык, это специфический для вм набор инструкций, которые анализирует и разбирает вм по ходу её продвижения внутри апплета

anonymous
()
Ответ на: комментарий от anonymous

А Java не есть нативный язык

Да пофиг, нативный язык или нет. В Си выходы за границу не отслеживаются, и тестированием ты их не обнаружишь. В отличие от Java или, допустим, Rust.

tailgunner ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.