Уязвимы все программы, которые используют SSL-библиотеку от Apple, в том числе браузер Safari, почтовый клиент Mail, приложения Calendar, FaceTime, Keynote, Twitter, iBooks. На браузеры Chrome и Firefox уязвимость не распространяется, потому что они не используют библиотеку sslKeyExchange.c от Apple.
Уязвимость вызвана тривиальной ошибкой в исходном коде, где используется две строки goto fail подряд. Первая из них корректно связывается с оператором if, а вторая вызывает завершение программы.
static OSStatus
SSLVerifySignedServerKeyExchange(SSLContext *ctx, bool isRsa, SSLBuffer signedParams,
uint8_t *signature, UInt16 signatureLen)
{
OSStatus err;
...
if ((err = SSLHashSHA1.update(&hashCtx, &serverRandom)) != 0)
goto fail;
if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
goto fail;
goto fail;
if ((err = SSLHashSHA1.final(&hashCtx, &hashOut)) != 0)
goto fail;
...
Проверить наличие уязвимости на конкретном устройстве OS X можно, если попробовать зайти по ссылке http://ift.tt/1deQdKC. Если она открывается на порту 1266, то баг в наличии.
Как вариант, можно воспользоваться утилитой otool. Уязвимая библиотека sslKeyExchange.c имеет номер версии 55471.
otool -L `which ssh` | grep 55471
«Мы в курсе проблемы и уже подготовили программное обновление, которое выйдет очень скоро», — сказали представители Apple в интервью Reuters. Неофициальный патч можно взять здесь.
В то же время кто-то зарегистрировал сайт gotofail.com, посвящённый багу Apple.
This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.
Комментариев нет:
Отправить комментарий