The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Завершён аудит реализации TLS 1.3 в OpenSSL 1.1.1

22.01.2019 10:28

Фонд OSTIF (Open Source Technology Improvement Fund), созданный с целью усиления защищённости открытых проектов, объявил о завершении независимого аудита ветки OpenSSL 1.1.1, сосредоточенного на анализе безопасности алгоритмов и кода, связанных с реализацией TLS 1.3, новых протоколов и переработанного генератора псевдослучайных чисел. Работа выполнена французской компанией QuarksLab, которая находится вне юрисдикции крупнейших спецслужб, заинтересованных в организации слежки, и уже привлекалась для аудита проектов OpenVPN и VeraCrypt. Проведение аудита было профинансировано компанией Private Internet Access и проектом DuckDuckGo.

Аудит не выявил серьёзных проблем с безопасностью в OpenSSL 1.1.1 и реализации TLS 1.3. Код отмечен в целом как безопасный, быстрый и функциональный, но выявлены отдельные области, в которых качество кода и комментариев могут быть улучшены. Всего разработчикам OpenSSL было предоставлено 16 рекомендаций и исправлений. Для дальнейшего контроля качества проект OpenSSL включён в программу Internet Bug Bounty, в рамках которой производятся выплаты вознаграждений за выявление уязвимостей и недоработок в области безопасности.

При проведении аудита выявлено 6 проблем, которые были устранены ещё до официального релиза OpenSSL 1.1.1 в ходе приватной переписки разработчиков OpenSSL и исследователей, проводивших аудит:

  • В некоторых ситуациях соединения могли сбрасываться без обработки ошибки. Проблема могла применяться для осуществления DoS-атаки на клиента (крах приложения) при его обращении к подконтрольному злоумышленнику серверу (например, через организацию MITM-атаки);
  • Проблемы с генерацией уведомлений об ошибках, связанных с TLS v1.3. Проблемы можно было использовать для инициирования отказа в обслуживании;
  • Высказано несколько замечаний по качеству кода нового генератора псевдослучайных чисел и недостаточно ясному описанию назначения функций в комментариях (функциональные недоработки в PRNG были выявлены ранее, после другого аудита);
  • Реализация протокола аутентификации SRP признана корректной, но выявлено отсутствие проверок некоторых возвращаемых значений. Также высказаны замечания по качеству кода и недостаточным пояснениям в комментариях;
  • По реализации CAPI замечания коснулись отсутствия комментариев в коде, что значительно затрудняет понимание реализованной логики. Качество кода не вызвало нареканий;
  • Во многих внутренних функциях OpenSSL обнаружены случаи отсутствия явных проверок на значение NULL, что потенциально может приводить к непредсказуемому поведению, которое может вылиться в проблемы со стабильностью или безопасностью.


  1. Главная ссылка к новости (https://ostif.org/the-ostif-an...)
  2. OpenNews: Результаты аудита обновлённого генератора псевдослучайных чисел OpenSSL 1.1.1
  3. OpenNews: Выпуск OpenVPN 2.4.2, в котором отражены результаты аудита безопасности
  4. OpenNews: Завершён аудит проекта OpenVPN
  5. OpenNews: Аудит VeraCrypt выявил 8 критических уязвимостей
  6. OpenNews: Аудит сетевого стека NetBSD выявил уязвимости в BSD-системах
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/50004-audit
Ключевые слова: audit, openssl, crypt
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (37) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Аноним (2), 11:25, 22/01/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –15 +/
    все 5 лет назад перекатились на libressl
     
     
  • 2.3, Аноним (3), 11:43, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +11 +/
    Кто "все"? Можно поимённый список?
     
     
  • 3.4, список (?), 11:55, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +14 +/
    оба Васяна и один Колян. Правда, Колян два года назад выкинул эту хрень, в винде она ему ни к чему.

     
  • 2.10, Андрей (??), 13:48, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    В Debian как не было так и до сих пор нет.
     

  • 1.7, ku4erz (ok), 12:51, 22/01/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > и уже привлекалась для аудита проектов OpenVPN и VeraCrypt.

    Да... только после их аудита,в OpenVPN нашли еще несколько уязвимостей:
    https://habr.com/ru/post/370573/

     
     
  • 2.8, Andrey Mitrofanov (?), 13:07, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> и уже привлекалась для аудита проектов OpenVPN и VeraCrypt.
    > Да... только после их аудита,в OpenVPN нашли еще несколько уязвимостей:
    >abr.com/ru/post/370573/

    Вас заинтересует п.13 http://book.itep.ru/10/merphy.html .

     

  • 1.9, Аноним (9), 13:08, 22/01/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Почему опеннет не поддерживает 1.3? Или это косяк с моей стороны? Захожу с последнего TorBrowser.
     
     
  • 2.11, Аноним84701 (ok), 14:07, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +6 +/
    > Почему опеннет не поддерживает 1.3?

    Вы еще utf-8 вместо старого доброго koi8-r потребуйте!
    Ох уж эта молодежь!

    А вообще, гугля c яндексом и микрософтом пока тоже не спешат включить поддержку -- наверное стесняются обойти опеннет.

     
  • 2.12, FSA (??), 15:02, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Осмелюсь предположить, потому что OpenSSL 1.1.1 ещё даже не в Gentoo, не говоря уже о более консервативных дистрибутивах, типа Debian.
     
     
  • 3.14, yetanotheranonymus (?), 15:40, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Осмелюсь предположить, потому что OpenSSL 1.1.1 ещё даже не в Gentoo

    Вызывающе неверная информация:
    # ls /usr/portage/dev-libs/openssl
    files  Manifest  metadata.xml  openssl-0.9.8z_p8-r1.ebuild  openssl-1.0.2q.ebuild  openssl-1.0.2q-r200.ebuild  openssl-1.1.0j.ebuild  openssl-1.1.1a.ebuild  openssl-1.1.1a-r1.ebuild

     
     
  • 4.16, Аноним (16), 15:58, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Только он даже не в анстейбле, а замаскирован к чертовой матери. Можешь конечно на свой трах и риск маску убрать.
     
     
  • 5.25, FSA (??), 18:04, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Ага. Я просто в новый год каким-то образом размаскировал 1.1.1. Задолбался зависимости править. Потом нашёл что натворил и откатился на стабильную версию и всё нормально стало. 1.1.1, конечно, можно поставить, но нафиг это делать на боевом сервере.
     
  • 4.27, FSA (??), 18:11, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Вот уж спасибо. Ставьте на свой страх и риск. Для тех, кому важнее стабильность и кто не хочет экспериментировать:
    $ openssl version
    OpenSSL 1.0.2q  20 Nov 2018
     
     
  • 5.31, yetanotheranonymus (?), 18:35, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Чертовски зря. В 1.1.0 убрали необходимость создавать lock-callback-и. Реально стало намного проще жить. Я перешел с 1.1.0i на 1.1.1 с середины сентября. С декабря на 1.1.1a. Полёт нормальный.
     
  • 3.17, бублички (?), 16:18, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    за всех не подписывайся, глупое это дело персонально у меня OpenSSL 1 1 1a уже ... большой текст свёрнут, показать
     
     
  • 4.26, FSA (??), 18:06, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Debian свежий, без всяких сторонних репов и тестинга:
    openssl version
    OpenSSL 1.1.0j  20 Nov 2018
     
     
  • 5.29, бублички (?), 18:15, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    ну сиди и жди тогда Debian 10 :D
     
  • 5.30, бублички (?), 18:23, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    ты пока ответ печатал похоже успел забыть, что новость о TLSv1.3 который поддерживается начиная с OpenSSL 1.1.1, так-что твой OpenSSL 1.1.0j тем-более в Debian 9 (Stretch) совсем не по теме новости и текущего обсуждения. на своём примере выше я лишь объяснил что далеко не у всех руки растут из ягодиц, чтоб не суметь портировать любой практически пакет из Sid/Unstable куда угодно
     
     
  • 6.38, FSA (??), 07:47, 24/01/2019 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > ты пока ответ печатал похоже успел забыть, что новость о TLSv1.3 который поддерживается начиная с OpenSSL 1.1.1

    Я ничего не забывал. Я показал, что в текущем Debian версия OpenSSL ниже, чем та, что требуется для TLS 1.3. Соответственно, в случае применения на сервере Debian без костылей включить поддержку TLS 1.3 нельзя.

     
     
  • 7.42, бублички (?), 12:18, 25/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    поддерживать локальный репозиторий и портировать в него необходимые пакеты - костыли? то-есть весь инструментарий для этого тоже костыли? руководствуясь элементарной логикой и твоими высказываниями, получаем: костыли - всё что ты не осилил сделать или даже прочесть
     
  • 3.22, Анонн (?), 17:02, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > OpenSSL 1.1.1 ещё даже не в Gentoo

    Почему "даже"?

    % openssl version                                                                
    OpenSSL 1.1.1a-freebsd  20 Nov 2018

     
     
  • 4.28, FSA (??), 18:12, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Любил когда-то её. Но потом всё равно к Linux вернулся.
     
  • 3.34, Аноним (34), 20:47, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вообще-то он уже почти везде, и в Gentoo и в Debian, и даже во Фряхе и слаквари:

    https://repology.org/metapackage/openssl/badges

     
  • 2.18, бублички (?), 16:34, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    думается мне, распоследний твой Tor Browser (8.0.4) не умеет последний TLSv1.3 (тот что final, RFC-8446) - умеет только-лишь какой-то черновик такового, да и-то поддержка его отключена (about:config). потому открывает всё по-старинке в TLSv1.2
     
     
  • 3.24, Аноним (16), 17:12, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Не мешки ворочать ага. Распаковал TORmozilla 8.0.4, зашел на клаудфлер и похороникс - tls 1.3 соединения.
    Но да, вопрос глупый, почему, почему, покачану. Не у всех есть желание ручками собирать ради смены точка 2 на точка 3.

     
     
  • 4.40, anonymous (??), 23:53, 24/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Кстати, navalny.com работает на 1.3
     
     
  • 5.41, бублички (?), 12:12, 25/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    как и всё остальное что хостится на Cloudflare
     
  • 2.20, бублички (?), 16:48, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    да и потом https://dev.ssllabs.com/ssltest/analyze.html?d=www.opennet.ru&hideResults=on
     

  • 1.15, Аноним (15), 15:53, 22/01/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Не умеют они врать. Вот так надо: "В ходе аудита, было выявлено несколько не критичных ошибок, на которых указали разработчикам, и они их исправили. Теперь всё отлично". А они "Не, ошибок нет, бэкдоров нет, троянов нет, стопудово, вообще. Организация, выполнявшая проверку, не связана с государственными органами!"

    Просто уязвимости в OpenSSL иногда находят (тыкните по тегу, чтобы посмотреть новости на Опеннете), хоть и не конкретно в TLS, а во всём OpenSSL. А потому странно, что аудит не обнаружил вообще ничего. Тем более, в новом крупном релизе, который состоялся недавно

     
  • 1.23, manster (ok), 17:05, 22/01/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > Аудит не выявил

    отчеты о покрытии юнит-тестами с результатами - наилучший признак адекватного аудита

     
     
  • 2.32, Аноним (32), 18:46, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > отчеты о покрытии юнит-тестами с результатами - наилучший признак адекватного аудита

    Нет. Потому что это аудит безопасности, а не работоспособности.

     
     
  • 3.35, Аноним (34), 20:57, 22/01/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да и нужно быть лишь чуть-чуть выше джуна чтобы знать что тесты ничего не гарантируют даже при 100% покрытии.
     

  • 1.33, Аноним (33), 19:19, 22/01/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    > QuarksLab, которая находится вне юрисдикции крупнейших спецслужб, заинтересованных в организации слежки

    Ничего не понял.

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

    И ещё интересней про что он имел ввиду под юрисдикцие. Когда спецслужбы США воруют людей по всему миру, а армия США без мандата ООН бомбит страны во имя демократии.. это они в рамках юрисдикции делали, стало быть?

     
  • 1.36, Аноним (36), 22:48, 22/01/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >Работа выполнена французской компанией QuarksLab, которая находится вне юрисдикции крупнейших спецслужб

    Ничего не слышал про северокорейские спецслужбы, значит они не относятся к крупнейшим, да?

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

     
     
  • 2.37, Аноним (37), 05:37, 24/01/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Ничего не слышал про северокорейские спецслужбы, значит они не относятся к крупнейшим, да?

    нет, не относятся.

     

  • 1.39, little Bobby tables (?), 17:16, 24/01/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    пару недель назад команда опенссл получила некую премию за
    dramatic improvements to the code quality of OpenSSL
    https://www.openssl.org/blog/blog/2018/01/10/levchin/
     
  • 1.43, Аноним (43), 01:30, 25/02/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    как можно писать код так что отсутствие проверки на NULL не ломает работу логики? не ужели код и был задуман без проверки NULL?!
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру