Телеканал «Загородная жизнь» — смотреть онлайн прямой эфир
17:20 Работа над ошибками (Эпизод 21-й) (12+)
17:30 Сами с усами (Мангольд) (12+)
17:50 Живой дом (Эпизод 12-й) (12+)
05:30 Курорт у Дома (Газон) (12+)
06:00 Ландшафтные хитрости (Осенние работы в саду. Посадка лилий и пионов) (12+)
06:35 Урожайный сезон (Сияние) (12+)
06:55 Золотое семечко (Партенокапический огурец Бинго F1) (12+)
07:20 Ландшафт для вас (Сады и люди: Часть 2-я) (12+)
07:50 Современное строительство (Как бюджетно отремонтировать загородный дом?) (12+)
08:25 Жизнь в джунглях. Камбоджа (5-я серия) (12+)
08:40 Жизнь в джунглях. Камбоджа (6-я серия) (12+)
09:20 Работа над ошибками (Эпизод 21-й) (12+)
09:30 Сами с усами (Мангольд) (12+)
09:50 Живой дом (Эпизод 12-й) (12+)
10:20 Битва за урожай (3-я серия) (12+)
10:50 Ботаника (Композиция в рюмке с луком пореем. Совхоз) (12+)
11:10 Секреты сада (8-я серия) (12+)
11:40 Теплица на радость (Время посадок. Картошка в сене, земляника в кашпо и другие секреты от эксперта программы) (12+)
12:15 Волшебный декупаж (Эпизод 8-й) (12+)
12:45 Сад и огород (Защита растений от тли и белокрылки) (12+)
13:30 Курорт у Дома (Посадка роз) (12+)
14:00 Ландшафтные хитрости (Осенние работы в саду. Посадка лилий и пионов) (12+)
14:35 Урожайный сезон (Сияние) (12+)
14:55 Золотое семечко (Партенокапический огурец Бинго F1) (12+)
15:20 Ландшафт для вас (Сады и люди: Часть 2-я) (12+)
15:50 Современное строительство (Как бюджетно отремонтировать загородный дом?) (12+)
16:25 Жизнь в джунглях. Камбоджа (5-я серия) (12+)
16:40 Жизнь в джунглях. Камбоджа (6-я серия) (12+)
17:20 Работа над ошибками (Эпизод 21-й) (12+)
17:30 Сами с усами (Мангольд) (12+)
17:50 Живой дом (Эпизод 12-й) (12+)
18:20 Битва за урожай (3-я серия) (12+)
18:50 Ботаника (Композиция в рюмке с луком пореем. Совхоз) (12+)
19:10 Секреты сада (8-я серия) (12+)
19:40 Теплица на радость (Время посадок. Картошка в сене, земляника в кашпо и другие секреты от эксперта программы) (12+)
20:15 Волшебный декупаж (Эпизод 8-й) (12+)
20:45 Сад и огород (Защита растений от тли и белокрылки) (12+)
21:30 Курорт у Дома (Посадка роз) (12+)
22:00 Ландшафтные хитрости (Осенние работы в саду. Посадка лилий и пионов) (12+)
22:35 Урожайный сезон (Сияние) (12+)
22:55 Золотое семечко (Партенокапический огурец Бинго F1) (12+)
23:20 Ландшафт для вас (Сады и люди: Часть 2-я) (12+)
23:50 Современное строительство (Как бюджетно отремонтировать загородный дом?) (12+)
00:25 Жизнь в джунглях. Камбоджа (5-я серия) (12+)
00:40 Жизнь в джунглях. Камбоджа (6-я серия) (12+)
01:20 Работа над ошибками (Эпизод 21-й) (12+)
01:30 Сами с усами (Мангольд) (12+)
01:50 Живой дом (Эпизод 12-й) (12+)
02:20 Битва за урожай (3-я серия) (12+)
02:50 Ботаника (Композиция в рюмке с луком пореем. Совхоз) (12+)
03:10 Секреты сада (8-я серия) (12+)
03:40 Теплица на радость (Время посадок. Картошка в сене, земляника в кашпо и другие секреты от эксперта программы) (12+)
04:15 Волшебный декупаж (Эпизод 8-й) (12+)
Загородная жизнь онлайн — смотреть прямой эфир
05:30 Курорт у Дома (Газон) (12+)
06:00 Ландшафтные хитрости (Осенние работы в саду. Посадка лилий и пионов) (12+)
06:35 Урожайный сезон (Сияние) (12+)
06:55 Золотое семечко (Партенокапический огурец Бинго F1) (12+)
07:20 Ландшафт для вас (Сады и люди: Часть 2-я) (12+)
07:50 Современное строительство (Как бюджетно отремонтировать загородный дом?) (12+)
08:25 Жизнь в джунглях. Камбоджа (5-я серия) (12+)
08:40 Жизнь в джунглях. Камбоджа (6-я серия) (12+)
09:20 Работа над ошибками (Эпизод 21-й) (12+)
09:30 Сами с усами (Мангольд) (12+)
09:50 Живой дом (Эпизод 12-й) (12+)
10:20 Битва за урожай (3-я серия) (12+)
10:50 Ботаника (Композиция в рюмке с луком пореем. Совхоз) (12+)
11:10 Секреты сада (8-я серия) (12+)
11:40 Теплица на радость (Время посадок. Картошка в сене, земляника в кашпо и другие секреты от эксперта программы) (12+)
12:15 Волшебный декупаж (Эпизод 8-й) (12+)
12:45 Сад и огород (Защита растений от тли и белокрылки) (12+)
13:30 Курорт у Дома (Посадка роз) (12+)
14:00 Ландшафтные хитрости (Осенние работы в саду. Посадка лилий и пионов) (12+)
14:35 Урожайный сезон (Сияние) (12+)
14:55 Золотое семечко (Партенокапический огурец Бинго F1) (12+)
15:20 Ландшафт для вас (Сады и люди: Часть 2-я) (12+)
15:50 Современное строительство (Как бюджетно отремонтировать загородный дом?) (12+)
16:25 Жизнь в джунглях. Камбоджа (5-я серия) (12+)
16:40 Жизнь в джунглях. Камбоджа (6-я серия) (12+)
17:20 Работа над ошибками (Эпизод 21-й) (12+)
17:30 Сами с усами (Мангольд) (12+)
17:50 Живой дом (Эпизод 12-й) (12+)
18:20 Битва за урожай (3-я серия) (12+)
18:50 Ботаника (Композиция в рюмке с луком пореем. Совхоз) (12+)
19:10 Секреты сада (8-я серия) (12+)
19:40 Теплица на радость (Время посадок. Картошка в сене, земляника в кашпо и другие секреты от эксперта программы) (12+)
20:15 Волшебный декупаж (Эпизод 8-й) (12+)
20:45 Сад и огород (Защита растений от тли и белокрылки) (12+)
21:30 Курорт у Дома (Посадка роз) (12+)
22:00 Ландшафтные хитрости (Осенние работы в саду. Посадка лилий и пионов) (12+)
22:35 Урожайный сезон (Сияние) (12+)
22:55 Золотое семечко (Партенокапический огурец Бинго F1) (12+)
23:20 Ландшафт для вас (Сады и люди: Часть 2-я) (12+)
23:50 Современное строительство (Как бюджетно отремонтировать загородный дом?) (12+)
00:25 Жизнь в джунглях. Камбоджа (5-я серия) (12+)
00:40 Жизнь в джунглях. Камбоджа (6-я серия) (12+)
01:20 Работа над ошибками (Эпизод 21-й) (12+)
01:30 Сами с усами (Мангольд) (12+)
01:50 Живой дом (Эпизод 12-й) (12+)
02:20 Битва за урожай (3-я серия) (12+)
02:50 Ботаника (Композиция в рюмке с луком пореем. Совхоз) (12+)
03:10 Секреты сада (8-я серия) (12+)
03:40 Теплица на радость (Время посадок. Картошка в сене, земляника в кашпо и другие секреты от эксперта программы) (12+)
04:15 Волшебный декупаж (Эпизод 8-й) (12+)
Ошибка Heartbleed
Ошибка Heartbleed — это серьезная уязвимость в популярной криптографической библиотеке программного обеспечения OpenSSL. Эта уязвимость позволяет украсть информацию, защищенную в обычных условиях шифрованием SSL/TLS, используемым для защиты Интернета. SSL/TLS обеспечивает безопасность связи и конфиденциальность в Интернете для таких приложений, как Интернет, электронная почта, обмен мгновенными сообщениями (IM) и некоторые виртуальные частные сети (VPN).
Ошибка Heartbleed позволяет любому человеку в Интернете читать память систем, защищенных уязвимыми версиями программного обеспечения OpenSSL. Это компрометирует секретные ключи, используемые для идентификации поставщиков услуг и шифрования трафика, имен и паролей пользователей и самого контента. Это позволяет злоумышленникам подслушивать сообщения, красть данные непосредственно у служб и пользователей, а также выдавать себя за службы и пользователей.
Какие утечки происходят на практике?
Мы проверили некоторые из наших собственных служб с точки зрения злоумышленника. Мы атаковали себя снаружи, не оставив следов. Без использования какой-либо привилегированной информации или учетных данных мы смогли украсть у себя секретные ключи, используемые для наших сертификатов X.509, имен пользователей и паролей, мгновенных сообщений, электронных писем и важных деловых документов и сообщений.
Как остановить утечку?
Пока используется уязвимая версия OpenSSL, ею можно злоупотреблять. Исправленный OpenSSL был выпущен, и теперь его нужно развернуть. Поставщики и дистрибутивы операционных систем, поставщики устройств, независимые поставщики программного обеспечения должны принять исправление и уведомить своих пользователей. Поставщики услуг и пользователи должны установить исправление, как только оно станет доступным для операционных систем, сетевых устройств и программного обеспечения, которое они используют.
Вопросы и ответы
Что такое CVE-2014-0160?
CVE-2014-0160 — официальная ссылка на эту ошибку. CVE (Common Vulnerabilities and Exposures) — это стандарт имен уязвимостей информационной безопасности, поддерживаемый MITRE. Из-за случайного обнаружения повторяющуюся CVE, CVE-2014-0346, которая была присвоена нам, не следует использовать, поскольку другие независимо стали общедоступными с идентификатором CVE-2014-0160.
Почему это называется Heartbleed Bug?
Ошибка в реализации OpenSSL расширения пульса TLS/DTLS (протоколы безопасности транспортного уровня) (RFC6520). Эксплуатация приводит к утечке содержимого памяти с сервера на клиент и с клиента на сервер.
В чем уникальность жука-сердечника?
Ошибки в отдельных программах или библиотеках приходят и уходят и исправляются в новых версиях. Однако эта ошибка оставила большое количество закрытых ключей и других секретов в Интернете. Учитывая длительное воздействие, простоту эксплуатации и атаки, не оставляющие следов, к этому воздействию следует относиться серьезно.
Является ли это недостатком конструкции в спецификации протокола SSL/TLS?
Нет. Это проблема реализации, то есть ошибка программирования в популярной библиотеке OpenSSL, которая предоставляет криптографические услуги, такие как SSL/TLS, для приложений и служб.
Что происходит?
Шифрование используется для защиты секретов, которые могут нанести ущерб вашей конфиденциальности или безопасности в случае их утечки. Чтобы координировать восстановление после этой ошибки, мы классифицировали скомпрометированные секреты по четырем категориям: 1) материал первичного ключа, 2) материал вторичного ключа и 3) защищенное содержимое и 4) залог.
Что такое утечка материала первичного ключа и как восстановить?
Это жемчужины короны, сами ключи шифрования. Утечка секретных ключей позволяет злоумышленнику расшифровывать любой прошлый и будущий трафик к защищенным службам и по желанию выдавать себя за службу. Любая защита, обеспечиваемая шифрованием и подписями в X.509сертификаты можно обойти. Восстановление после этой утечки требует исправления уязвимости, отзыва скомпрометированных ключей, а также повторного выпуска и повторного распространения новых ключей. Даже при выполнении всего этого любой трафик, перехваченный злоумышленником в прошлом, по-прежнему остается уязвимым для расшифровки. Все это должны делать владельцы сервисов.
Что такое утечка материала вторичного ключа и как восстановить?
Это, например, учетные данные пользователя (имена пользователей и пароли), используемые в уязвимых службах. Восстановление после этой утечки требует, чтобы владельцы службы сначала восстановили доверие к службе в соответствии с шагами, описанными выше. После этого пользователи могут начать менять свои пароли и возможные ключи шифрования в соответствии с инструкциями владельцев скомпрометированных сервисов. Все ключи сеанса и файлы cookie сеанса должны быть признаны недействительными и считаться скомпрометированными.
Что такое утечка защищенного контента и как восстановить?
Это фактическое содержимое, обрабатываемое уязвимыми службами. Это могут быть личные или финансовые данные, частное общение, такое как электронная почта или мгновенные сообщения, документы или что-либо, что заслуживает защиты с помощью шифрования. Только владельцы сервисов смогут оценить вероятность утечки, и они должны соответствующим образом уведомить своих пользователей. Самое главное — восстановить доверие к первичному и вторичному ключевому материалу, как описано выше. Только это позволяет безопасно использовать скомпрометированные сервисы в будущем.
Что такое утечка залога и как восстановить?
Утечка залога — это другие детали, которые были раскрыты злоумышленнику в утечке содержимого памяти. Они могут содержать технические детали, такие как адреса памяти и меры безопасности, такие как канарейки, используемые для защиты от атак переполнения. Они имеют только современную ценность и потеряют свою ценность для злоумышленника, когда OpenSSL будет обновлен до фиксированной версии.
Восстановление кажется трудоемким, есть ли короткий путь?
Увидев то, что мы увидели, «атакуя» себя с легкостью, мы решили отнестись к этому очень серьезно. Мы усердно работали над исправлением наших собственных критически важных сервисов и имеем дело с возможной компрометацией наших первичных и вторичных ключей. Все это на тот случай, если мы не были первыми, кто обнаружил это, и это уже могло быть использовано в дикой природе.
Как на практике происходит отзыв и перевыпуск сертификатов?
Если вы являетесь поставщиком услуг, вы подписали свои сертификаты в Центре сертификации (ЦС). Вам необходимо проверить свой ЦС, как можно отозвать скомпрометированные ключи и перевыпустить новый сертификат для новых ключей. Некоторые центры сертификации делают это бесплатно, некоторые могут взимать плату.
Затронута ли я ошибкой?
Вы, вероятно, будете затронуты прямо или косвенно. OpenSSL — это самая популярная криптографическая библиотека с открытым исходным кодом и реализация TLS (безопасность транспортного уровня), используемая для шифрования трафика в Интернете. Ваш популярный социальный сайт, сайт вашей компании, коммерческий сайт, сайт для хобби, сайт, с которого вы устанавливаете программное обеспечение, или даже сайты, управляемые вашим правительством, могут использовать уязвимый OpenSSL. Многие онлайн-сервисы используют TLS как для идентификации себя перед вами, так и для защиты вашей конфиденциальности и транзакций. У вас могут быть сетевые устройства с логинами, защищенными этой ошибочной реализацией TLS. Кроме того, на вашем компьютере может быть установлено программное обеспечение на стороне клиента, которое может раскрыть данные с вашего компьютера, если вы подключитесь к скомпрометированным службам.
Насколько это распространено?
Наиболее известным программным обеспечением, использующим OpenSSL, являются веб-серверы с открытым исходным кодом, такие как Apache и nginx. Совокупная рыночная доля только этих двух активных сайтов в Интернете составила более 66%, согласно опросу веб-серверов, проведенному Netcraft в апреле 2014 года. Кроме того, OpenSSL используется для защиты, например, почтовых серверов (протоколы SMTP, POP и IMAP), чат-серверов (протокол XMPP), виртуальных частных сетей (SSL VPN), сетевых устройств и широкого спектра клиентского программного обеспечения. К счастью, многие крупные потребительские сайты спасены своим консервативным выбором оборудования и программного обеспечения для терминации SSL/TLS. По иронии судьбы, больше всего пострадают более мелкие и прогрессивные сервисы или те, которые перешли на новейшее и лучшее шифрование. Кроме того, OpenSSL очень популярен в клиентском программном обеспечении и несколько популярен в сетевых устройствах, которые имеют наибольшую инерцию в получении обновлений.
Какие версии OpenSSL затронуты?
Статус различных версий:
- OpenSSL 1.0.1 до 1.0.1f (включительно) уязвимы
- OpenSSL 1.0.1g НЕ уязвим
- Ветка OpenSSL 1.0.0 НЕ уязвима
- Ветвь OpenSSL 0.9.8 НЕ уязвима
Ошибка была введена в OpenSSL в декабре 2011 г. и широко распространена с момента выпуска OpenSSL 1.0.1 14 марта 2012 г. OpenSSL 1.0.1g, выпущенный 7 апреля 2014 г., исправляет ошибку.
Насколько распространены уязвимые версии OpenSSL?
Уязвимые версии существуют уже более двух лет и быстро внедряются в современные операционные системы. Основным фактором, способствовавшим этому, было то, что версии TLS 1.1 и 1.2 стали доступны с первой уязвимой версией OpenSSL (1.0.1), а сообщество безопасности продвигало TLS 1.2 из-за более ранних атак на TLS (таких как BEAST).
Как насчет операционных систем?
Некоторые дистрибутивы операционных систем, поставляемые с потенциально уязвимой версией OpenSSL:
- Debian Wheezy (стабильная версия), OpenSSL 1.0.1e-2+deb7u4
- Ubuntu 12.04.4 LTS, OpenSSL 1.0.1-4ubuntu5.11
- CentOS 6.5, OpenSSL 1.0.1e-15
- Fedora 18, OpenSSL 1.0.1e-4
- OpenBSD 5.3 (OpenSSL 1.0.1c 10 мая 2012 г.) и 5.4 (OpenSSL 1.0.1c 10 мая 2012 г.)
- FreeBSD 10.0 — OpenSSL 1.0.1e 11 февраля 2013 г.
- NetBSD 5.0.2 (OpenSSL 1.0.1e)
- OpenSUSE 12.2 (OpenSSL 1.0.1c)
Распространение операционной системы с неуязвимыми версиями:
- Debian Squeeze (старая стабильная версия), OpenSSL 0. 9.8o-4squeeze14
- Корпоративный сервер SUSE Linux
- FreeBSD 8.4 — OpenSSL 0.9.8y 5 февраля 2013 г.
- FreeBSD 9.2 — OpenSSL 0.9.8y 5 февраля 2013 г.
- FreeBSD 10.0p1 — OpenSSL 1.0.1g (8 апреля 18:27:46 2014 UTC)
- Порты FreeBSD — OpenSSL 1.0.1g (на 7 апреля 21:46:40 UTC 2014 г.)
Как можно исправить OpenSSL?
Несмотря на то, что фактическое исправление кода может показаться тривиальным, команда OpenSSL является экспертом в его правильном исправлении, поэтому следует использовать исправленную версию 1.0.1g или новее. Если это невозможно, разработчики программного обеспечения могут перекомпилировать OpenSSL с удалением рукопожатия из кода с помощью параметра времени компиляции -DOPENSSL_NO_HEARTBEATS
.
Следует ли удалить пульсацию, чтобы помочь в обнаружении уязвимых служб?
Восстановление после этой ошибки могло бы принести пользу, если бы новая версия OpenSSL исправила ошибку и временно отключила пульсацию до какой-либо будущей версии. Большинство, если не почти все реализации TLS, ответившие на запрос пульса на момент обнаружения, были уязвимыми версиями OpenSSL. Если бы только уязвимые версии OpenSSL продолжали реагировать на пульсацию в течение следующих нескольких месяцев, то крупномасштабное скоординированное реагирование на владельцев уязвимых сервисов стало бы более осуществимым. Однако быстрая реакция интернет-сообщества на разработку онлайновых и автономных инструментов обнаружения быстро превзошла потребность в полном удалении сердцебиения.
Могу ли я обнаружить, что кто-то использовал это против меня?
Эксплуатация этой ошибки не оставляет следов каких-либо аномальных событий в журналах.
Может ли IDS/IPS обнаружить или заблокировать эту атаку?
Хотя пульсация может появляться на разных этапах установки соединения, для систем обнаружения и предотвращения вторжений (IDS/IPS) были разработаны правила для обнаружения пульсации. Из-за шифрования различие между законным использованием и атакой не может быть основано на содержании запроса, но атака может быть обнаружена путем сравнения размера запроса с размером ответа. Это означает, что IDS/IPS можно запрограммировать на обнаружение атаки, но не на ее блокировку, если только не будут полностью заблокированы контрольные сообщения.
Злоупотребляли ли этим в дикой природе?
Мы не знаем. Сообщество безопасности должно развернуть приманки TLS/DTLS, которые заманивают в ловушку злоумышленников и предупреждают о попытках эксплуатации.
Может ли злоумышленник получить доступ только к 64 КБ памяти?
Для атаки нет общего ограничения в 64 килобайта, это ограничение применяется только к одному пульсу. Злоумышленник может либо продолжать повторное подключение, либо во время активного TLS-соединения продолжать запрашивать произвольное количество фрагментов памяти размером 64 килобайта до тех пор, пока не будет раскрыто достаточно секретов.
Является ли это ошибкой MITM, подобной ошибке Apple goto fail?
Нет, для этого не требуется атака «человек посередине» (MITM). Злоумышленник может напрямую связаться с уязвимым сервисом или атаковать любого пользователя, подключающегося к вредоносному сервису. Однако в дополнение к прямой угрозе кража ключевого материала позволяет злоумышленникам выдавать себя за скомпрометированные службы.
Способствует ли проверка подлинности сертификата клиента TLS этому?
Нет, запрос пульса может быть отправлен, и на него можно ответить во время фазы квитирования протокола. Это происходит до проверки подлинности клиентского сертификата.
Способствует ли этому FIPS-режим OpenSSL?
Нет, режим федерального стандарта обработки информации (FIPS) OpenSSL не влияет на уязвимые функции пульса.
Смягчает ли это совершенную пересылку секретности (PFS)?
Использование совершенной прямой секретности (PFS), которая, к сожалению, встречается редко, но эффективно, должно защитить прошлые сообщения от ретроспективного дешифрования. Пожалуйста, смотрите https://twitter.com/ivanristic/status/453280081897467905, как утечка билетов может повлиять на это.
Можно ли отключить расширение пульса во время рукопожатия TLS?
Нет, уязвимый код расширения пульса активируется независимо от результатов согласования фазы установления связи. Единственный способ защитить себя — перейти на исправленную версию OpenSSL или перекомпилировать OpenSSL с удаленным рукопожатием из кода.
Кто нашел жука Heartbleed?
Эта ошибка была независимо обнаружена группой инженеров по безопасности (Рику, Антти и Матти) из Codenomicon и Нилом Мехтой из Google Security, которые первыми сообщили о ней команде OpenSSL. Команда Codenomicon обнаружила ошибку Heartbleed при улучшении функции SafeGuard в инструментах тестирования безопасности Codenomicon Defensics и сообщила об этой ошибке в NCSC-FI для координации уязвимостей и отчетности перед командой OpenSSL.
Что такое Defensics SafeGuard?
Функция SafeGuard инструментов тестирования безопасности Codenomicon Defensics автоматически проверяет целевую систему на наличие уязвимостей, которые ставят под угрозу целостность, конфиденциальность или безопасность. SafeGuard — это систематическое решение для обнаружения неудачных проверок криптографических сертификатов, утечек конфиденциальности или слабых мест обхода аутентификации, которые подвергают пользователей Интернета атакам «человек посередине» и перехвату. В дополнение к ошибке Heartbleed новая функция Defensics TLS Safeguard может обнаруживать, например, уязвимость безопасности в широко используемом программном обеспечении с открытым исходным кодом GnuTLS, реализующем функции SSL / TLS, и «перейти к сбою»; ошибка в реализации Apple TLS/SSL, исправленная в феврале 2014 г.
Кто координирует реагирование на эту уязвимость?
Сразу после того, как мы обнаружили ошибку 3 апреля 2014 года, NCSC-FI взялся за ее проверку, дальнейший анализ и обращение к авторам OpenSSL, поставщикам программного обеспечения, операционной системы и устройств, которые потенциально могут быть затронуты. . Однако эта уязвимость была обнаружена, и подробности были опубликованы другими до того, как эта работа была завершена. Поставщики должны уведомлять своих пользователей и поставщиков услуг. Провайдеры интернет-услуг должны уведомлять своих конечных пользователей, где и когда требуются потенциальные действия.
Есть ли во всем этом светлая сторона?
Для затронутых поставщиков услуг это хорошая возможность повысить уровень безопасности используемых секретных ключей. Многие программы получают обновления, которые в противном случае не были бы срочными. Хотя это болезненно для сообщества безопасности, мы можем быть уверены, что инфраструктура киберпреступников и их секреты также были раскрыты.
Что можно сделать, чтобы предотвратить это в будущем?
Сообщество безопасности, включая нас, должно научиться находить эти неизбежные человеческие ошибки как можно раньше. Пожалуйста, поддержите усилия по разработке программного обеспечения, которому вы доверяете свою конфиденциальность. Пожертвуйте деньги проекту OpenSSL.
Где найти дополнительную информацию?
Этот вопрос и ответ был опубликован в качестве дополнения к бюллетеню OpenSSL, поскольку эта уязвимость стала общедоступной 7 апреля 2014 года. . Отдельные поставщики дистрибутивов операционных систем, затронутые владельцы интернет-услуг, пакетов программного обеспечения и поставщики устройств могут выпускать свои собственные рекомендации.
Ссылки
- CVE-2014-0160
- Чемодан NCSC-FI № 788210
- Рекомендации по безопасности OpenSSL (опубликовано 7 апреля 2014 г. , ~17:30 UTC)
- CloudFlare: опережение уязвимостей OpenSSL (опубликовано 7 апреля 2014 г., ~18:00 UTC)
- heartbleed.com (опубликовано 7 апреля 2014 г., ~19:00 UTC)
- Ubuntu / Уведомление о безопасности USN-2165-1
- FreeBSD/SA-14:06.openssl
- FreshPorts / openssl 1.0.1_10
- RedHat/RHSA-2014:0376-1
- CentOS/CESA-2014:0376
- Fedora/статус CVE-2014-0160
- CERT/CC (США)
- CERT.at (Австрия)
- CIRCL (Люксембург)
- CERT-FR (Франция)
- JPCERT/CC (Япония)
- CERT-SE (Швеция)
- CNCERT/CC (Китайская Народная Республика)
- Общественная безопасность Канады
- LITNET CERT (Литва)
- UNAM-CERT (Мексика)
- SingCERT (Сингапур)
- Q-CERT (Катар)
Логотип Heartbleed можно использовать бесплатно, отказ от прав через CC0. [скачать логотип в формате SVG]
Страница обновлена 03.06.2020 16:39УНИВЕРСАЛЬНОЕ ГЛОБАЛЬНОЕ ВРЕМЯ.
Ошибка Heartbleed: как проверка забытых границ сломала Интернет
Ошибка Heartbleed — это критическая уязвимость пересчитывания буфера в нескольких версиях библиотеки OpenSSL, которая может выявить незашифрованную информацию из системной памяти сервера или клиента, на котором работает уязвимая версия OpenSSL. Поскольку библиотека используется для безопасного обмена данными через SSL/TLS и DTLS, атаки могут раскрывать очень важные данные, такие как учетные данные для входа в систему, закрытые ключи TLS и личную информацию. Баг был исправлен почти сразу после его раскрытия в апреле 2014 года, но до тех пор, пока не были исправлены сотни тысяч веб-серверов, использовавших уязвимую библиотеку, злоумышленники могли легко и незаметно извлечь конфиденциальную информацию. Давайте подробнее рассмотрим одну из самых серьезных и распространенных уязвимостей безопасности в истории Интернета и посмотрим, как всего одна ошибочная строка кода может нанести ущерб всему миру.
С чего все началось: внедрение расширения TLS Heartbeat
Для защищенных соединений, использующих TLS (безопасность транспортного уровня), сообщение пульса — это способ проверки доступности однорангового узла без повторного согласования соединения каждый раз. Эта функция была предложена в 2012 году в RFC 6520 и вскоре широко реализована в библиотеках SSL/TLS, включая библиотеку OpenSSL с открытым исходным кодом. К сожалению, реализация OpenSSL расширения пульса TLS, представленная Робином Сеггельманном, содержала небольшую, но фатальную ошибку в новой функции. Первой уязвимой версией была OpenSSL 1.0.1, выпущенная в марте 2012 года, с включенной по умолчанию поддержкой пульса. По иронии судьбы, эта версия вскоре была широко распространена на серверах по всему миру для повышения безопасности, поскольку в нее была добавлена поддержка TLS 1.1 и 1.2 для устранения таких уязвимостей, как BEAST.
Подробное описание уязвимости системы безопасности Heartbleed
Протокол пульсации TLS немного похож на эхо-команду. Чтобы проверить, активен ли узел соединения, вы отправляете произвольное тестовое сообщение, и если соединение активно, сообщение должно быть возвращено немедленно и точно. Фактическое сообщение пульса представляет собой запись SSL3, которая включает не только полезную нагрузку сообщения, но и его длину (и заполнение, но это не важно для уязвимости). Чтобы соединение оставалось активным, тестовая полезная нагрузка, возвращаемая узлом (обычно сервером), должна иметь точно такое же содержимое и длину, как и в запросе пульса. Именно здесь программное обеспечение OpenSSL не смогло реализовать одну из проверок, указанных в RFC 6520, раздел 4: 9.0003
Если payload_length полученного сообщения HeartbeatMessage слишком велико, полученное сообщение HeartbeatMessage ДОЛЖНО быть отброшено без уведомления. |
В расширении пульса, реализованном в OpenSSL с 1.0.1 по 1.0.1f, сервер получает сообщение пульса и возвращает запрошенную полезную нагрузку запрошенной длины. Однако код не проверяет, действительно ли полезная нагрузка имеет ту же длину, что и запрошенная в сообщении. Другими словами, сервер просто отправляет обратно блок данных от начала полезной нагрузки до запрошенной длины. Если сообщение пульса правильно сформировано, это не проблема, так как полезная нагрузка всегда имеет ту же длину, что и указанная. Но если запрошенная длина превышает размер полезной нагрузки, сервер возвращает все, что находится в памяти после локальной переменной полезной нагрузки, что приводит к утечке информации. Вот как появилось название Heartbleed — серверы, на которых работают уязвимые версии OpenSSL, могут «выводить» конфиденциальные данные в сообщениях Heartbeat.
Отправляя короткое контрольное сообщение с большой запрошенной длиной, злоумышленники могут считывать до 64 КБ необработанного содержимого памяти при каждом запросе. Для серверов, на которых работает OpenSSL, это пространство памяти может содержать незашифрованные учетные данные пользователя, файлы cookie сеанса, номера кредитных карт и (что крайне важно) закрытые ключи сертификатов.
Отправляя несколько злонамеренных запросов пульса, злоумышленники могут быстро накапливать огромные объемы ценных данных, включая секретные ключи, которые могут позволить несанкционированный доступ к системам, кражу личных данных и атаки «человек посередине» на якобы защищенных серверах.Уязвимость обратного кровотеченияКак и в большинстве обсуждений, связанных с Heartbleed, в этой статье в основном говорится об атаках на серверы, поскольку они могут затронуть тысячи пользователей и организаций. Однако уязвимость может быть использована в любой системе с уязвимой версией OpenSSL, поэтому скомпрометированный сервер может использовать ту же атаку для чтения данных памяти из уязвимого клиентского приложения. Эта уязвимость получила название Reverse Heartbleed, и в 2014 году она затронула несколько компьютерных приложений и около 50 миллионов устройств под управлением Android 4.1.1. |
Раскрытие и исправление
Ошибка была независимо обнаружена исследователями безопасности из Google и финской охранной фирмы Codenomicon (которые придумали название «Heartbleed» и создали веб-сайт, объясняющий ошибку). Об уязвимости было тайно сообщено команде OpenSSL, и она была исправлена в версии 1.0.1g, выпущенной 7 апреля 2014 года. Само исправление было таким же тривиальным, как и ошибка — просто вопрос добавления проверки значения и молчаливого игнорирования сообщения пульса, если заявленная и фактическая длины отличаются. Heartbleed был добавлен в Национальную базу данных уязвимостей как CVE-2014-0160 со уязвимостью, классифицированной как «Неправильное ограничение операций в пределах буфера памяти (CWE-119).)».
Также 7 апреля 2014 года была официально опубликована новость об уязвимости. Владельцам веб-сайтов и администраторам серверов было рекомендовано немедленно обновиться до OpenSSL 1.0.1g. Для расширения пульса не был доступен параметр конфигурации времени выполнения, поэтому было невозможно отключить только ошибочную функциональность без ручной перекомпиляции библиотеки OpenSSL с параметром компилятора -DOPENSSL_NO_HEARTBEATS
. Все учетные данные, ключи шифрования и SSL-сертификаты, используемые на уязвимых серверах, могли быть скомпрометированы, поэтому следующей рекомендацией было повторно выпустить все сертификаты безопасности для SSL/TLS с этих серверов и посоветовать пользователям изменить свои пароли. Наконец, настройка сервера для использования протоколов согласования ключей, обеспечивающих полную секретность пересылки, может защитить прошлые сообщения от расшифровки, даже если текущие закрытые ключи были скомпрометированы, обеспечивая дополнительный уровень защиты.
По состоянию на декабрь 2019 года поиск Shodan по запросу vuln:cve-2014-0160
по-прежнему показывал, что более 77 000 устройств по всему миру уязвимы для Heartbleed, включая более 18 000 серверов Apache httpd.
Воздействие ошибки Heartbleed
«Катастрофический» — правильное слово. По шкале от 1 до 10 это 11. – Брюс Шнайер |
Уязвимость затронула множество программ и прошивок, использующих OpenSSL. К ним относятся не только веб-серверы с открытым исходным кодом, такие как Apache и nginx, но также компьютерные приложения и некоторые сетевые устройства от Cisco, Juniper и Apple. Многие популярные веб-сайты также оказались уязвимыми, в том числе Yahoo! и игровые сервисы, такие как Steam. Два из трех веб-серверов в мире были уязвимы, и в последующие дни и недели миллионам пользователей было предложено изменить свои пароли для множества веб-сайтов и сервисов. Сообщалось также о некоторых утечках данных. Глобальная стоимость устранения уязвимости первоначально оценивалась в 500 миллионов долларов.
Уроки уязвимости Heartbleed
С технической точки зрения уязвимость представляла собой простое пересчитывание буфера, вызванное забытой проверкой границ — очень распространенный тип ошибки, который по-прежнему возглавляет рейтинг 25 Top 25 CWE в 2019 году. проблема была гораздо серьезнее: как такая тривиальная ошибка могла попасть в критически важное для безопасности программное обеспечение, а затем в миллионы систем по всему миру? Кризис Heartbleed высветил опасность глобальной зависимости от библиотек программного обеспечения с открытым исходным кодом, которые часто разрабатываются, тестируются и поддерживаются небольшими группами добровольцев с небольшой финансовой поддержкой или без нее. Как сказал Дэн Камински: «Мы строим самые важные технологии для мировой экономики на инфраструктуре с крайне недостаточным финансированием». В ответ на финансовую и личную нехватку OpenSSL и других широко используемых проектов с открытым исходным кодом Linux Foundation создала Инициативу базовой инфраструктуры (CII). Поддерживаемый лидерами технологической отрасли, CII предназначен для финансирования и поддержки проектов с открытым исходным кодом, которые имеют решающее значение для функционирования глобальных информационных систем, таких как Интернет.