Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Во-вторых, я лучше соглашусь, чтобы мой почтовый сервер упал на сутки, чем слил все письма моей организации и её клиентов за прошедшие полдня.Это вопрос к модели угроз. Если стоимость простоя умноженная на вероятность простоя выше, чем стоимость утечки умноженной на её вероятность, то, очевидно, какое решение будет приниматься в рациональном случае.
What versions of the OpenSSL are affected?
Status of different versions:
OpenSSL 1.0.1 through 1.0.1f (inclusive) are vulnerable
OpenSSL 1.0.1g is NOT vulnerable
OpenSSL 1.0.0 branch is NOT vulnerable
OpenSSL 0.9.8 branch is NOT vulnerable
Отзывайте свои SSL-сертификаты, генерируйте новые.
Для openvpn (в режиме shared key, например) нужно менять этот shared key.
$ date -R
Tue, 08 Apr 2014 08:05:08 +0400
$ rmadison libssl1.0.0 | cut -d'|' -f1-3
libssl1.0.0 | 1.0.1e-2+deb7u4 | wheezy
libssl1.0.0 | 1.0.1e-2+deb7u5 | wheezy-security
libssl1.0.0 | 1.0.1f-1 | jessie
libssl1.0.0 | 1.0.1f-1 | sid
libssl1.0.0 | 1.0.2~beta1-1 | experimentalaptitude show openssl | grep Version
Version: 1.0.1e-2+deb7u6
aptitude show libssl1.0.0 | grep Version
Version: 1.0.1e-2+deb7u6
Из-за этой маленькой ошибки одного программиста кто угодно получает прямой доступ к оперативной памяти компьютеров, чьи коммуникации «защищены» уязвимой версией OpenSSL. В том числе, злоумышленник получает доступ к секретным ключам, именам и паролям пользователей и всему контенту, который должен передаваться в зашифрованном виде.А в advisory по ссылке: can be used to reveal up to 64k of memory. Причем скорее всего где-нибудь сразу за границей буфера.
There is no total of 64 kilobytes limitation to the attack, that limit applies only to a single heartbeat. Attacker can either keep reconnecting or during an active TLS connection keep requesting arbitrary number of 64 kilobyte chunks of memory content until enough secrets are revealed.


There are load (?) issues causing FALSE POSITIVES.
Please read the FAQ
ldd `which nginx` |grep ssl
# libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007fc2b37ac000)
yum whatprovides '/usr/lib64/libssl.so.10'
# openssl-1.0.1e-16.el6_5.7.x86_64 : A general purpose cryptography library with TLS implementation
# Repo : installed
# Matched from:
# Other : Provides-match: /usr/lib64/libssl.so.10
--with-openssl=/path/to/sources или флагов компиляции) в основном у горе энтузиастов, которые собирают его из исходников.

#define EVP_PKT_SIGN 0x0010
int ssl3_get_cert_verify(SSL *s)
{
int type=0, i, j;
....
if ((peer != NULL) && (type | EVP_PKT_SIGN))
....
}
if ((peer != NULL) && (type & EVP_PKT_SIGN))
alfabank.ru IS VULNERABLE.
online.rsb.ru IS VULNERABLE.
connect.raiffeisen.ru IS VULNERABLE.
liqpay.com IS VULNERABLE.

$ aptitude show libssl1.0.0 | grep -e "Prio\|Ver"
Version: 1.0.1e-2+deb7u6
Priority: important
We are currently working to mitigate the impact of this issue and will provide further updates, please see: aws.amazon.com/security/security-bulletins/heartbleed-bug-concern/
April 7, 2014
AWS is aware of the HeartBleed Bug (CVE-2014-0160) in OpenSSL and investigating any impact or required remediation. We will post back when we have more detail.
xenon@dot:/tmp$ ./ssltest.py rbkmoney.ru -p 443
Connecting...
Sending Client Hello...
Waiting for Server Hello...
... received message: type = 22, ver = 0301, length = 58
... received message: type = 22, ver = 0301, length = 4874
... received message: type = 22, ver = 0301, length = 4
Sending heartbeat request...
... received message: type = 21, ver = 0302, length = 2
Received alert:
0000: 02 46 .F
Server rbkmoney.ru returned error, likely not vulnerable
echo | openssl s_client -tlsextdebug -host mail.google.com -port 443|grep "TLS server extension"
echo | openssl s_client -tlsextdebug -connect smtp.yandex.ru:25 -starttls smtp |grep "TLS server extension"
я вот, например, не очень уверен, что в ssltest.py означают хексовые значения для hello и hb и нет ли в них другого эксплойта и шеллкода или может просто ошибки, из-за которой они могут не заметить дырку или сделать ложное срабатывание
если ssh авторизация идет по ключу в debian squeeze, то понятно, что надо openssl надо обновить
Критическая уязвимость в OpenSSL 1.0.1 и 1.0.2-beta