Heartbleed

редактировать
Ошибка безопасности в OpenSSL

Heartbleed
Heartbleed.svg Логотип, представляющий Heartbleed. Охранная компания Codenomicon дала Heartbleed название и логотип, что способствовало повышению осведомленности общественности о проблеме.
Идентификатор (-ы) CVE CVE-2014-0160
Дата обнаружения1 апреля 2014 г.; 6 лет назад (2014-04-01)
Дата исправления7 апреля 2014 г.; 6 лет назад (07.04.2014)
DiscovererNeel Mehta
Затронутое программное обеспечениеOpenSSL (1.0.1)
Веб-сайтheartbleed.com

Heartbleed - это ошибка безопасности в библиотеке OpenSSL криптографии, которая является широко используемой реализацией транспортного уровня . Протокол безопасности (TLS). Он был введен в программу в 2012 году публично раскрыт в апреле 2014 года. Heartbleed может быть использован независимо от того, работает ли уязвимый экземпляр OpenSSL в качестве TLS-сервера или клиента. Это происходит из-за неправильной проверки ввода (из-за отсутствия проверки границ ) в реализации расширения TLS heartbeat. Таким образом, название ошибки происходит от сердцебиения. Уязвимость классифицируется как переполнение буфера, ситуация, когда может быть прочитано больше данных, чем должно быть разрешено.

Heartbleed зарегистрирован в Common Vulnerabilities and Exposures база данных как CVE - 2014-0160. Федеральный Канадский центр реагирования на киберинциденты выпустил бюллетень по безопасности, информирующий системных администраторов об ошибке. Фиксированная версия OpenSSL была выпущена 7 апреля 2014 г., в тот же день, когда Heartbleed была публично раскрыта.

По состоянию на 20 мая 2014 г. 1,5% из 800 000 самых популярных веб-сайтов с поддержкой TLS все еще были уязвимы для Heartbleed.. По состоянию на 21 июня 2014 г. 309 197 публичных веб-серверов оставались уязвимыми. По состоянию на 23 января 2017 года, согласно отчету Shodan, почти 180 000 подключенных к Интернету устройств все еще были уязвимы. По данным поиска на shodan.io по запросу «vuln: cve-2014-0160», по состоянию на 6 июля 2017 года их число упало до 144 000. По состоянию на 11 июля 2019 года Shodan сообщил, что уязвимыми оказались 91063 устройства. Первыми оказались США с 21 258 (23%), в первой 10 странах - 56 537 (62%), а в других странах - 34 526 (38%). В отчете также устройства разбиты по 10 другим категориям, как организация (в тройку лидеров вошли беспроводные компании), продукт (Apache httpd, nginx) или услуга (https, 81%).

Реализации TLS, отличные от OpenSSL, такие как GnuTLS, Mozilla Службы сетевой безопасности и реализация платформы Windows TLS, не были затронуты, поскольку дефект существовал в реализации TLS OpenSSL, а не в самом протоколе.

Содержание
  • 1 История
    • 1.1 Обнаружение
    • 1.2 Исправление ошибок и развертывание
    • 1.3 Обновление и отзыв сертификата
    • 1.4 Эксплуатация
      • 1.4.1 Возможные предыдущие знания и использование
  • 2 Поведение
    • 2.1 Затронутые установки OpenSSL
      • 2.1.1 Уязвимые программа и функция
    • 2.2 Патч
  • 3 Воздействие
    • 3.1 Уязвимость на стороне клиента
    • 3.2 Затронутые отдельные системы
      • 3.2.1 Веб -сайты и другие онлайн-сервисы
      • 3.2.2 Программные приложения
      • 3.2.3 Операционные системы / прошивка
    • 3.3 Услуги по тестированию уязвимостей
  • 4 Исправление
    • 4.1 Уведомление об отзыве сертификатов безопасности
  • 5 Основные причины, возможные уроки и реакции
  • 6 Ссылки
  • 7 Библ iography
  • 8 Внешние ссылки
История

Расширение Heartbeat для протоколов Безопасность транспортного уровня ( TLS) и Datagram Transport Layer Security (DTLS) было предложено в качестве стандарта в феврале 2012 г. RFC 6520. Он позволяет тестировать и поддерживать безопасные каналы связи без необходимости каждый раз заново согласовывать соединение. В 2011 году один из авторов RFC, Робин Сеггельманн, тогда доктор философии. Студент Высшей школы Мюнстера реализовал расширение Heartbeat Extension для OpenSSL. После просьбы Сеггельмана помочь результат своей работы в OpenSSL, его изменение было рассмотрено Стивеном Н. Хенсоном, одним из четырех основных разработчиков OpenSSL. Хенсон не заметил ошибки в реализации Сеггельмана и 31 декабря 2011 года представил ошибочный код в репозитории исходного кода OpenSSL. Дефект распространился с выпуском OpenSSL версии 1.0.1 14 марта 2012 года. Поддержка Heartbeat была включена по умолчанию, что привело к уязвимые версии.

Discovery

По словам Марка Дж. Кокса из OpenSSL, Нил Мехта из группы безопасности Google в частном порядке сообщил OpenSSL о Heartbleed 1 апреля 2014 года в 11:09 UTC.

Ошибка была названа инженером Synopsys Software Integrity Group (ранее Codenomicon ), финской компании, занимающейся кибербезопасностью, которая также создала логотип кровоточащего сердца и запустила домен heartbleed.com, чтобы публично объяснить ошибку. Хотя группа безопасности Google сначала сообщила о Heartbleed OpenSSL, и Google, и Codenomicon создало это независимо в одно и то же время. Codenomicon сообщает 3 апреля 2014 года как дату их обнаружения и дату уведомления NCSC -FI для уязвимостей.

На момент раскрытия около 17% (около полумиллиона) Защищенные веб-серверы Интернета, сертифицированные доверенными средствами, считались уязвимыми для атак, что позволяло кражу закрытых серверов, а также файлы cookie и паролей пользователей. Electronic Frontier Foundation, Ars Technica и Брюс Шнайер все сочли ошибку Heartbleed «катастрофической». Forbes обозреватель кибербезопасности Джозеф Стейнберг писал:

Некоторые могут возразить, что Heartbleed - самая серьезная обнаруженная уязвимость (по крайней мере, с точки зрения ее потенциального воздействия) с тех пор, как коммерческий трафик начал течь в Интернете.

Представитель британского кабинета рекомендовал:

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

В день раскрытия информации проект Tor сообщил:

Если вам нужны сильные анонимность или конфиденциальность в Интернете, возможно, вы захотите полностью держаться подальше от Интернета в течение следующих нескольких дней, пока все уляжется.

The Sydney Morning Herald опубликовала график открытия 15 апреля 2014 года, что некоторым организациям удалось исправить ошибку до ее публичного раскрытия. В некоторых случаях непонятно, как они узнали.

Исправление ошибок и развертывание

Бодо Мёллер и Адам Лэнгли из Google подготовили исправление для Heartbleed. Полученный патч был добавлен в систему проблем Red Hat 21 марта 2014 года. Стивен Н. Хенсон применил исправление к системе контроля версий OpenSSL 7 апреля. В тот же день была выпущена первая исправленная версия 1.0.1g. По состоянию на 21 июня 2014 г. 309 197 публичных веб-серверов оставались уязвимыми. По состоянию на 23 января 2017 года, согласно отчету Shodan, почти 180000 подключенных к Интернету устройств все еще были уязвимы. По данным поиска на shodan.io по запросу «vuln: cve-2014-0160», это число снизилось до 144 000. По состоянию на 6 июля 2017 г.

Обновление и отзыв сертификата

Согласно Netcraft, около 30 000 из 500 000+ сертификатов X.509, которые могли быть скомпрометированы из-за Heartbleed, были перевыпущены к 11 апреля 2014 г., хотя меньше было отозвано.

К 9 мая 2014 г. только 43% предложутых веб-сайтов перевыпустили свои сертификаты безопасности. Кроме того, в 7% повторно выпущенных сертификатов безопасности использовались старые скомпрометированные ключи. Netcraft заявила:

При повторном использовании ключа того же закрытого сайта, затронутый ошибкой Heartbleed по-прежнему сталкивается с теми же рисками, что и те, которые еще не заменили свои SSL-сертификаты.

, говорится в eWeek, "[Heartbleed], вероятно, останется риском на месяцы, если не годы».

Эксплуатация

Канадское налоговое агентство сообщило о краже социального страхования используется налогоплательщикам 900, и указано, что он был получен с помощью уязвимости в течение 6-часового периода 8 апреля 2014 года. 16 апреля RCMP объявили, что они обвинили студента-информатика в краже с несанкционированным использованием компьютера и нанесением ущерба по данным.

Британский, агентство заявило, что бесплатно предоставит услуги по защите кредита всем пострадавшим. сайт для родите лей У Мамснет было похищено несколько учетных записей пользователей, а его генеральный директор выдал себя за другое лицо. Позже сайт опубликовал объяснение инцидента, в котором говорилось, что это произошло из-за кровотечения из сердца, и технический персонал исправил его.

Исследователи антивирусного ПО также использовали Heartbleed в своих интересах для доступа к секретным форумам, используемым киберпреступниками. Исследования также проводились путем преднамеренной установки уязвимых машин. Например, 12 апреля 2014 года по крайней мере два независимых исследователя смогли украсть закрытые ключи с помощью этого экспериментального сервера, специально настроенного для цели CloudFlare. Также 15 апреля 2014 г. Дж. Алекс Халдерман, профессор Мичиганского университета, сообщил, что его сервер приманки, намеренно уязвимый сервер, предназначенный для привлечения атак с целью изучения, подвергся их многочисленным атакам. из Китая. Халдерман пришел к выводу, что, поскольку это был довольно малоизвестный сервер, вероятными масштабными атаками, системами исследования большие области Интернета.

В августе 2014 года стало известно, что уязвимость Heartbleed позволяет хакерам украсть ключи безопасности из Системы общественного здравоохранения, вторая по величине коммерческая сеть больниц в США, ставящая под конфиденциальность конфиденциальность 4,5 миллионов историй болезни. Нарушение произошло через неделю после того, как Heartbleed впервые было обнародовано.

Возможные предварительные знания и использование

Многие крупные веб-сайты исправили ошибку или отключили расширение Heartbeat Extension в течение нескольких дней после его объявления, но это действительно так. неясно, знали ли потенциальные злоумышленники об этом ранее и в какой степени он использовался.

На основании анализа журналов аудита исследователями было сообщено, что некоторые злоумышленники могли использовать уязвимость как минимум пять месяцев назад. открытие и объявление. Errata Security указала, что широко используемая невредоносная программа под названием Masscan, представленная за шесть месяцев до раскрытия информации Heartbleed, внезапно прерывает соединение в процессе подтверждения связи таким же образом, как и Heartbleed, создавая те же сообщения журнала сервера, добавляя «Две новые вещи» одинаковых сообщений об ошибках может показаться, что они взаимосвязаны, но, конечно, это не так ».

Согласно Bloomberg News, ему сообщили два неназванных инсайдерских источника, что Агентство национальной безопасности США было осведомлено об уязвимости после ее появления, но… «Вместо того, чтобы сообщить об этом »-« держал в секрете других незарегистрированных уязвимостей нулевого дня, чтобы использовать их в собственных целях АНБ. АНБ отвергло это утверждение, как и Ричард А. Кларк, член Национальной разведывательной группы по анализу и коммуникационным технологиям, которая изучила политику США в области электронного наблюдения; 11 апреля 2014 года он сообщил агентству Рейтер, что АНБ не знало о Heartbleed. Обвинение побудило американское правительство впервые сделать публичное заявление о политике уязвимостей нулевого дня, приняв в таблице отчет группы проверки за 2013 год, в утверждении, что «почти во всех случаях для широко используемого программного обеспечения это в национальных интересах - устранение уязвимости программного обеспечения, а не. использовать их для сбора разведданных США », и заявляет, что решение об отказе должно быть принято АНБ в Белый дом.

Поведение
Изображение Heartbleed.

RFC 6520 Heartbeat Extension проверяет безопасные каналы связи TLS / DTLS, позволяя компьютеру отправить сообщение Heartbeat Request, состоящее из полезной нагрузки, обычно текстовой строки, вдоль длины полезной нагрузки как 16-битное целое число. Затем принимающий компьютер должен отправить точно такую ​​же полезную нагрузку обратно отправителю.

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

Heartbleed, таким образом, используется отправка исправленного запроса сердцебиения с небольшой полезной нагрузкой и полем большой длины для уязвимой стороны (обычно сервера), чтобы вызвать ответ жертвы, позволяя злоумышленникам читать до 64 килобайт жертвы, которая, вероятно, ранее использовалась OpenSSL. Если запрос Heartbeat Request может потребовать от стороны «отправить обратно четырехбуквенное« птица »», в результате будет слово получен ответ «птица», «Heartbleed Request» (злонамеренный запрос сердечного ритма) «отправить обратно 500-буквенное» слово «птица» заставляло жертву возвращать слово «птица» с последующими 496 символами, которые жертвами занимаемой памяти. Таким образом, злоумышленники могут получать конфиденциальные данные, нарушая конфиденциальность сообщений жертвы. Несмотря на то, что злоумышленник имеет некоторый контроль над размером раскрытого блока памяти, он не может контролировать его местоположение, следовательно, не может выбирать, какой контент раскрывается.

Затронутые установки OpenSSL

Затронутые версии OpenSSL OpenSSL 1.0.1 - 1.0.1f (включительно). Последующие версии (1.0.1g и новее) и предыдущие версии (ветка 1.0.0 и старше) не уязвимы. Установки уязвимых версий уязвимы, если OpenSSL не был скомпилирован с -DOPENSSL_NO_HEARTBEATS.

Уязвимая программа и функция

Уязвимые исходные файлы программы - это t1_lib.c и d1_both.c, а уязвимые функции - tls1_process_heartbeat () и dtls1_process_heartbeat ().

Патч

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

Версия 1.0.1g OpenSSL отмет некоторых границ проверки для предотвращения переполнения буфера. Например, был представлен следующий тест, чтобы определить вызовет ли запрос сердцебиения Heartbleed; он молча отбрасывает отрицательные запросы.

if (1 + 2 + payload + 16>s->s3->rrec.length) return 0; / * тихо отбрасывать согласно RFC 6520 сек. 4 * /

Система управления версиями OpenSSL содержит полный список изменений.

Воздействие

Данные, полученные с помощью атаки Heartbleed, могут быть включены незашифрованные обмены между сторонами TLS, которые могут быть конфиденциальными, включить любые формы данных публикации в запросах пользователей. Кроме того, секреты аутентификации, такие как файлы cookie сеанса и пароли, которые позволяют злоумышленникам выдавать себя за пользователя службы.

Атака также может раскрыть конфиденциальные данные. ключи скомпрометированных сторон, которые позволяют злоумышленникам расшифровать сообщения (будущий или прошлый сохраненный трафик, захваченный посредством пассивного перехвата, если не используется совершенная прямая секретность, в этом случае только будущий трафик может быть расшифрован в случае перехвата через атаки типа "злоумышленник посередине" ).

Злоумышленник, получивший аутентификационный материал, может выдать себя за материал после того, как жертва установила исправление Heartbleed, пока материал принимается (например, пока не будет пароль или закрытый ключ отозван). Heartbleed, таким образом, представляет собой серьезную конфиденциальность. Однако злоумышленник, выдающий себя за жертву, также может изменить данные.

Опрос взрослых американцев, проведенный в некоторых системах. В апреле 2014 года, показал, что 60 процентов слышали о H земляное кровотечение. Среди тех, кто пользуется Интернетом, 39 процентов защитили свои онлайн-аккаунты, например, путем изменения паролей или аннулирования аккаунтов; 29 процентов считают, что их личная информация подверглась риску из-за ошибки Heartbleed; и 6% считают, что их личная информация была украдена.

Уязвимость на стороне клиента

Хотя ошибка привлекает больше внимания из-за угроз, которую она представляет для серверов, клиентов TLS, использующие уязвимые экземпляры OpenSSL, также уязвим. В том, что The Guardian назвало Reverse Heartbleed, вредоносные серверы могут использовать Heartbleed для чтения данных из памяти уязвимого клиента. Исследователь безопасности Стив Гибсон сказал о Heartbleed, что:

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

Украденные данные могут содержать имена пользователей и пароли. Reverse Heartbleed затронул миллионы экземпляров приложений. Некоторые из уязвимых приложений перечислены в разделе «Программные приложения» ниже.

Затронутые конкретные системы

Cisco Systems определила 78 своих продуктов как уязвимые, включая системы IP-телефонии и телеприсутствия (видеоконференцсвязь).).

Веб-сайты и другие онлайн-сервисы

Анализ, опубликованный на GitHub наиболее посещаемых веб-сайтов 8 апреля 2014 года, выявил уязвимости на сайтах, включая Yahoo!, Imgur, Stack Overflow, Slate и DuckDuckGo. На следующих сайтах имеются затронутые услуги или были сделаны объявления, рекомендующие пользователям обновлять пароли в ответ на ошибку:

Федеральное правительство Канады временно отключило онлайн-сервисы Канадского налогового агентства (CRA) и несколько правительственных ведомств по поводу проблем с безопасностью Heartbleed. Перед тем, как онлайн-сервисы CRA были закрыты, хакер получил примерно 900 номеров социального страхования. Серверы другого канадского правительственного агентства, Статистическое управление Канады, были взломаны из-за ошибки, а также временно отключили свои службы.

Сопровождающие платформы, такие как Фонд Викимедиа, посоветовали своим пользователям изменить пароли.

Серверы LastPass были уязвимы, но из-за дополнительного шифрования и прямой секретности потенциальные атаки не могли использовать эту ошибку. Однако LastPass рекомендовал своим пользователям менять пароли для уязвимых веб-сайтов.

Проект Tor рекомендовал операторамретрансляции Tor и оператора скрытых отозвать и сгенерировать новые ключи после исправления OpenSSL. 586 реле, которые, как позже выяснилось, были подвержены ошибке Heartbleed, были отключены в качестве меры предосторожности.

Сервисы, связанные с игрой, включая Steam, Minecraft, Wargaming, League of Legends, GOG.com, Origin, Sony Online Entertainment, Humble Bundle и Path of Exile были затронуты и исправлены.

Программные приложения

Уязвимые программные приложения включают:

  • Несколько Hewlett-Packard серверные приложения, такие как домашняя страница HP System Management (SMH) для Linux и Windows.
  • Некоторые версии FileMaker 13
  • LibreOffice с 4.2.0 по 4.2.2 (исправлено в 4.2.3)
  • LogMeIn утверждал, что «обновил многие продукты и части наших услуг, которые полагаются на OpenSSL ».
  • Несколько продуктов McAfee, в частности, некоторые версии программного обеспечения, предоставляющего антивирусное покрытие для Microsoft Exchange, программных брандмауэров, а также почтовых и веб-шлюзов McAfee
  • M ySQL Workbench 6.1.4 и ранее
  • Oracle MySQL Connector / C 6.1.0-6.1.3 и Connector / ODBC 5.1.13, 5.2.5-5.2.6, 5.3.2
  • Oracle Big Data Appliance (включает Oracle Linux 6)
  • Primavera P6 Professional Project Management (включает Primavera P6 Enterprise Project Portfolio Management)
  • WinSCP (FTP-клиент для Windows) 5.5.2 и некоторые более ранние версии (уязвимы только для FTP через TLS / SSL, исправлено в 5.5.3)
  • Несколько продуктов VMware, включая VMware ESXi 5.5, VMware Player 6.0, VMware Workstation 10 и серия продуктов, эмуляторов и пакетов облачных вычислений Horizon

Были затронуты несколько других приложений Oracle Corporation.

Операционные системы / прошивка

Были затронуты несколько дистрибутивов GNU / Linux, включая Debian (и производные, такие как Linux Mint и Ubuntu ) и Red Hat Enterprise Linux (а также производные, такие как CentOS, Oracle Linux 6 и Amazon Linux ), а также следующие операционные системы и версии микропрограмм:

  • Android 4.1.1, используемые в различных мобильных устройствах. Крис Смит пишет в Boy Genius Report, что затронута только эта версия Android, но это популярная версия Android (Chitika утверждает, что 4.1.1 используется на 50 миллионах устройств; Google описывают его как менее 10% активированных Android-устройств). Другие версии Android не уязвимы, либо используются незатронутая версия OpenSSL.
  • Прошивка для некоторых базовых станций AirPort
  • Прошивка для некоторых Cisco Systems маршрутизаторы
  • Прошивка для некоторых Juniper Networks маршрутизаторов
  • pfSense 2.1.0 и 2.1.1 (исправлено в 2.1.2)
  • DD-WRT версий между 19163 и 23881 включительно (исправлено в 23882)
  • Western Digital прошивка семейства продуктов My Cloud

Услуги по тестированию уязвимостей

Доступны несколько сервисов для проверки того, Heartbleed влияет на данный сайт. Однако было заявлено, что многие службы неэффективны для обнаружения ошибок. Доступные инструменты включают:

  • Tripwire SecureScan
  • AppCheck - статическое двоичное сканирование и фаззинг от Synopsys Software Integrity Group (ранее Codenomicon)
  • Pravail Security Analytics Arbor Network
  • Norton Safeweb Heartbleed Check Tool
  • Инструмент тестирования Heartbleed от европейской компании по ИТ-безопасности
  • Тест Heartbleed итальянского криптографа Филиппо Валсорда
  • Heartbleed Vulnerability Test от Cyberoam
  • онлайн -тестер Heartbleed Critical Watch
  • Metasploit Модуль сканера Heartbleed
  • Серверный сканер Heartbleed от Rehmann
  • Heartbleed Detector, приложение для устройств Android, которое определяет Версия устройства OpenSSL и указывает, включен ли уязвимый пульс.
  • Проверка Heartbleed, размещенная на LastPass
  • Онлайн-сканер сетевого диапазона для обнаружения уязвимости Heartbleed от Pentest-Tools.com
  • Официально Red Hat автономный сканер, написанный на языке Python
  • Qualys SSL Server Test SSL Labs, который не только ищет ошибку Heartbleed, но также может обнаруживать другие ошибки реализации SSL / TLS.
  • Расширения, такие как Chromebleed и FoxBleed
  • SSL Diagnos
  • CrowdStrike Heartbleed Scanner - сканирует маршрутизаторы, принтеры и другие устройства, подключенные к сети, включая веб-сайты интрасети.
  • Отчет о сайте Netcraft - указывает, может ли конфиденциальность веб-сайта быть поставлена ​​под угрозу из-за Heartbleed в прошлом использовании проверки данных из Исследование Netcraft по SSL для определения того, предлагал ли сайт расширение TLS для подтверждения пульса до раскрытия информации о Heartbleed. Расширения Netcraft для Chrome, Firefox и Opera также выполняет эту проверку при поиске скомпрометированных сертификатов.

Другие инструменты безопасности добавили поддержку для поиска этой ошибки. Например, Tenable Network Security написала подключаемый модуль для своего сканера уязвимостей Nessus, который может сканировать на наличие этой ошибки. Сканер безопасности Nmap включает поиск обнаружения Heartbleed версии 6.45.

Sourcefire выпустил правила Snort для обнаружения трафика атаки Heartbleed и возможного трафика Heartbleed. Программное обеспечение для анализа пакетов с внешним исходным кодом, такое как Wireshark и tcpdump, может идентифицировать пакеты Heartbleed с помощью специальных пакетов пакетов BPF, которые можно использовать для сохраненных захватов пакетов или живого трафика.

Исправление

Уязвимость к Heartbleed устраняется путем обновления OpenSSL до версии с исправлениями (1.0.1g или новее). OpenSSL может установить как отдельная программа, динамический общий объект или статически связанная библиотека ; Следовательно, процесс обновления может потребовать перезапуска процессов, загруженных с уязвимой версией OpenSSL, а также повторного связывания программ и библиотек, которые связывают его статически. На практике это означает обновления пакетов, которые статически связывают OpenSSL, и перезапуск запущенных программ для удаления памяти копии старого уязвимого кода OpenSSL.

После исправления уязвимости администраторы сервера могут устранить потенциальное нарушение конфиденциальность. Heartbleed позволил злоумышленникам раскрыть закрытые ключи, их рассматривать как взломанные; пары ключей должны быть повторно выпущены, и сертификаты, которые их используют, должны быть повторно выпущены; старые сертификаты должны быть отозваны. Heartbleed также может раскрыть другие секреты в памяти; поэтому другой аутентификационный материал (например, пароли ) также должен быть восстановлен. Редко возможно подтвердить, что система, которая была включена, не была скомпрометирована, или определить, была ли утечка определенная часть информации.

Так как это сложно или невозможно определить, когда учетные данные могли быть скомпрометированы и как это могло быть использовано злоумышленником, некоторые системы потребовать дополнительных работ по исправлению даже после исправления уязвимости и замены учетных данных. Например, подписи, сделанные ключи, которые использовались с уязвимой версией OpenSSL, вполне могли быть сделаны злоумышленником; это повышает вероятность нарушения целостности и открывает подписи для отказа. Проверка подписей и легитимность аутентификаций, выполненных с других скомпрометированным ключом (например, использование сертификата клиента ), должна быть с учетом конкретной задействованной системы.

Информация об отзыве сертификата безопасности

Интернет-провайдер Heartbleed поставил под конфиденциальную конфиденциальную информацию, пользователи взломанного веб-сайта могут страдать от последствий Heartbleed, пока их браузер не узнает об отзыве сертификата или не истечет срок действия скомпромет сертификата. По этой причине исправление также зависит от пользователей, использующих браузеры с актуальными списками отзыва сертификатов (или поддержку OCSP ) и соблюдением отзыва сертификатов.

Основные причины, Возможные уроки и реакции

Хотя оценить общую стоимость Heartbleed сложно, eWEEK оценил отправную точку в 500 миллионов долларов.

Статья Дэвида А. Уиллера «Как предотвратить следующие анализы Heartbleed», почему Heartbleed не было Не было обнаружено ранее, и предлагает несколько методов, которые могли бы привести к более быстрому идентификации, а также методы, которые могли бы уменьшить его влияние. По словам Уиллера, самый эффективный метод, который мог бы предотвратить Heartbleed, - это набор тестов, тщательно выполняющий тестирование устойчивости, это тестирование того, что недопустимые входные данные вызывают сбои, а не успехи. Уиллер указывает, что единый набор тестов общего назначения может служить для всех реализаций TLS.

Согласно статье Роберта Меркеля на Беседа, Heartble выявил массовый отказ анализа риска. Меркель считает, что OpenSSL придает большее значение производительности, чем безопасность, что, по его мнению, больше не имеет смысла. Но Меркель считает, что нельзя обвинять OpenSSL в такой степени, как пользователей OpenSSL, которые предпочитают использовать OpenSSL, не финансируя более качественный аудит и тестирование. Меркель объясняет, что два фактора определяют риск, что больше похожих ошибок вызов уязвимости. Во-первых, исходный код библиотеки влияет на риск написания таких ошибок. Во-вторых, процессы OpenSSL на шансы обнаружения ошибок. По первому аспекту Меркель упоминает использование языка программирования C как один из факторов риска, который способствовал появлению Heartbleed, вторя анализу Уиллера.

В том же аспекте Тео де Раадт, основатель и руководитель проектов OpenBSD и OpenSSH, критиковал разработчиков OpenSSL за написание собственных подпрограмм управления памятью и тем самым, как он утверждает, обходя OpenBSD C. стандартная библиотека использует контрмеры, говоря: «OpenSSL разрабатывается не ответственной командой». После раскрытия информации Heartbleed участники проекта OpenBSD разделили OpenSSL на LibreSSL.

. Автор изменения, которое представило Heartbleed, Робин Сеггельманн, заявил, что он пропустил неверную длину, и отрицал ее намерение представить некорректную работу. После раскрытия информации Heartbleed Сеггельманн охватывает второй аспект, заявив, что OpenSSL не проверяется достаточным количеством людей. Хотя работа Сеггельмана была рассмотрена разработчиком ядра OpenSSL, он предназначен для проверки функциональных улучшений, что упрощает упускать уязвимости.

Разработчик ядра OpenSSL Бен Лори утверждал, что аудит безопасности OpenSSL поймал бы Heartbleed. Инженер-программист Джон Уолш пишет:

Подумайте об этом, у OpenSSL есть только два [штатных] человека, которые пишут, тестируют и проверяют 500 000 строк критического для бизнеса кода.

Президент фонда OpenSSL Стив Маркиз сказал: «Загадка не в том, что несколько перегруженных работой добровольцев пропустили эту ошибку; загадка в том, почему это не происходило чаще ». Дэвид А. Уиллер описал аудит как отличный способ поиска уязвимостей в типичных случаях, но отметил, что «OpenSSL использует излишне сложные структуры, что затрудняет проверку как людьми, так и машинами». Он написал:

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

LibreSSL провела большую очистку кода, удалив более 90 000 строк кода на C в первую неделю.

По словам исследователя безопасности Дэна Камински, Heartbleed является признаком экономической проблемы, которую необходимо решить. Видя время, затраченное на то, чтобы отловить эту простую ошибку в простой функции из «критической» зависимости, Камински опасается многочисленных будущих уязвимостей, если ничего не будет сделано. Когда было обнаружено Heartbleed, OpenSSL обслуживала горстка добровольцев, из которых только один работал полный рабочий день. Ежегодные пожертвования на проект OpenSSL составляли около 2000 долларов США. Сайт Heartbleed от Codenomicon посоветовал сделать денежные пожертвования проекту OpenSSL. Узнав о пожертвованиях в течение 2 или 3 дней после раскрытия информации Heartbleed на общую сумму 841 доллар США, Камински прокомментировал: «Мы создаем самые важные технологии для мировой экономики на шокирующе недофинансируемой инфраструктуре». Разработчик ядра Бен Лори квалифицировал проект как «полностью нефинансированный». Хотя OpenSSL Software Foundation не имеет программы вознаграждений за ошибки, инициатива Internet Bug Bounty присудила 15 000 долларов США Нилу Мехте из Google, который обнаружил Heartbleed, за его ответственное раскрытие.

Пол Кьюзано предположил, что Heartbleed может возникли в результате провала экономики программного обеспечения.

Коллективным ответом отрасли на кризис стала Core Infrastructure Initiative, многомиллионный проект, объявленный Linux Foundation 24 января. Апрель 2014 года для финансирования важнейших элементов глобальной информационной инфраструктуры. Инициатива направлена ​​на то, чтобы ведущие разработчики могли работать над своими проектами полный рабочий день и оплачивать аудит безопасности, оборудование и программное обеспечение.

Последняя правка сделана 2021-05-23 04:34:50
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте