Ресурсы: техническое описание TLS, LaTeX - в картинки (img), криптографическая библиотека Arduino, шифр "Кузнечик" на ассемблере AMD64/AVX и ARM64
Дефект TLS/SSL в продуктах Apple
У Apple – грандиозная ошибка в коде, отвечающем за установление TLS-соединения: лишний оператор goto (зачем они вообще его использовали?) приводит к тому, что не проверяется серверная подпись при генерации ключа по протоколу Диффи-Хеллмана. Это означает, что сессия может прослушиваться, так как атакующий получает возможность подменить сеансовый ключ. Ошибка, можно сказать, сводит защищённость TLS в соответствующих продуктах Apple примерно к нулю.
Addon:
Пожалуй, скопирую и фрагмент исходного кода:
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;
...
fail:
SSLFreeBuffer(&signedHashes);
SSLFreeBuffer(&hashCtx);
return err;
}
Речь, как несложно догадаться, о паре последовательных goto. Второй из операторов безусловен, а так как переменная err, в случае, если ошибочный goto выполнился, содержит 0, то и сама функция “проверки” вернёт этот код успешного завершения.
Адрес записки: https://dxdt.blog/2014/02/22/6664/
Похожие записки:
- Заголовки статей про "отрицательное время"
- Техническое: интерактивность криптографических схем
- Новый сайт Gramota.ru
- Перехват TLS-соединения и сертификаты-токены
- Браузерная реклама от Firefox
- Реплика: обозначения для текста от LLM
- Ограничения математических ИИ/LLM
- Оптическая связь сквозь воду от Kyocera
- IP-сети, подмена сессий и доверенные ключи RSA
- Обновление описания TLS
- Ретроспектива заметок: сентябрь 2013 года
Новый
Комментарии читателей блога: 2
1 <t> // 23rd February 2014, 22:45 // Читатель jno написал:
круто!
слов нет.
и code review у них, похоже, тоже нет.
как и coding style checkup…
ппц.
2 <t> // 24th February 2014, 01:45 // Читатель Alex написал:
Это же эталонная реализация бэкдора! Выглядит как простая опечатка, а дело делает.