Heartbleed на пальцах / xkcd :: шифрование :: безопасность :: ssh :: heartbleed :: и не только сам :: перевел сам :: xkcd.ru :: geek (Прикольные гаджеты. Научный, инженерный и айтишный юмор) :: Смешные комиксы (веб-комиксы с юмором и их переводы)

xkcd Комиксы xkcd.ru перевел сам и не только сам geek heartbleed ssh безопасность шифрование 

Heartbleed на пальцах

СУТЬ УЯЗВИМОСТИ НЕАКтЕЕР: ШЛЯПА. Ьисаз за^оскл стрэдесф' «зкаха стпа в метро». Еус (а»*<н) хочет пост, ютъ ка сервер мастср-хло« «148350335: 4». 1заЬе1 ил« строгое :ро <емеи но е спяухы длоовзе». Пользователь Кагеп меняет свей пароль ка «ЛиГоБаСх» СЕРВЕР, ТЫ ЗДЕСЬ? ЕСЛИ ДА, СКАЖИ «КАРТОШКА* (8

Ты здесь, сервер? Это я, Маргарет.


Подробнее
СУТЬ УЯЗВИМОСТИ НЕАКтЕЕР: ШЛЯПА. Ьисаз за^оскл стрэдесф' «зкаха стпа в метро». Еус (а»*<н) хочет пост, ютъ ка сервер мастср-хло« «148350335: 4». 1заЬе1 ил« строгое :ро <емеи но е спяухы длоовзе». Пользователь Кагеп меняет свей пароль ка «ЛиГоБаСх» СЕРВЕР, ТЫ ЗДЕСЬ? ЕСЛИ ДА, СКАЖИ «КАРТОШКА* (8 БУКВ). СЕРВЕР, ТЫ ЗДЕСЬ? ЕСЛИ ДА, СКАЖИ «ПТИЦА* (5 БУКВ). ХМП~ I СЕРВЕР, ТЫ ЗДЕСЬ? ЕСЛИ ДА, СКАЖИ «ШЛЯПА* (500 БУКВ). КАРТОНКА
xkcd,Смешные комиксы,веб-комиксы с юмором и их переводы,xkcd.ru,перевел сам,и не только сам,geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор,heartbleed,ssh,безопасность,шифрование
Еще на тему
Развернуть
Способ не ломать мозги в попытке понят что происходит.
Очень интересное и информативное объяснение, спасибо.

Но все равно я не понимаю - т.е. были определенные команды для сервера, которые когда выполнялись, то вызывали такой поток доп. информации? Так ведь?
Примерно так. Проблема была в этих запросах "скажи" (т.н. "heartbeat-запросы"): сервер не проверял границы запрашиваемой памяти, поэтому можно было так изменить запрос, чтобы вытащить не только кусок памяти, содержащий ответ, но и еще кучу рандомной информации, которая лежит "дальше" в памяти.
Что, собственно, и сделала Меган в комиксе: "убедила" сервер в том, что в слове "шляпа" 500 букв.
я правильно понимаю, что строчка "Meg хочет 500 букв: ШЛЯПА" появляется в памяти только в тот момент, когда приходит этот запрос? Тогда откуда такое кол-во остаточной информации? Разве что это только та информация, которая там появляется в дилей между принятием этого запроса и записью его в память И попыткой прочитать его из памяти. Но в таком случае полезность этого жутко теряется.
Дело в том, что только 5 букв заполняются словом "шляпа", а остальные остаются нетронутыми от других запросов. А если без аналогий - вся ин-фия хранится в памяти, пока не будет перезаписана (или сервер выключен). Таким образом, запросив размер памяти больший, чем тот, в который помещен ответ, который сервер хочет вернуть пользователю, он возвращает значения, хранящиеся в соседних участках памяти. А там может быть чужая информация.
Вся информация в рамках процесса. При попытке выйти за границы процесса будет ататат.
Hellsy Hellsy 14.04.201420:00 ответить ссылка 0.3
Тем не менее, особенность работы с памятью в с/с++ в том, что по-умолчанию память, которая была использована для хранения данных в переменных, не очищается(т.е. не забивается нулями). Это можно делать явно в деструкторе, но в 99.99% случаев этим никто не страдает. В рамках одного процесса могли выполняться самые разные запросы ранее, в том числе и содержащие те самые ключи. Потому с некоторой долей вероятности действительно можно получить кусок памяти с весьма важной инфой. Учитывая, что уязвимость повторяемая, т.е. получать случайные куски памяти можно сколько угодно раз, получается жопа - когда-нибудь среди бесполезного мусора все равно попадется что-то ценное.
Ну, теоретически-то можно, но практически - вряд ли. Поскольку системная память на процесс выделяется все-таки блоками (см. M_MMAP_THRESHOLD), так что в начале процесс нагребает себе памяти в кучу, а потом, в среднем, использует то, что нагреб, изредка отдавая блоки или используя новые.
Все верно. Но ведь именно этот процесс в своей памяти держит ключи для расшифровки запросов. Серверные, закрытые которые! После получения такого ключа можно подменить сервер для определенного клиента, и заполучить его пароли и прочее, маскируясь под нормальный сервер без палева. Ну, если это говносайт, то пароль от него нафиг не нужен. А если клиент-банк?
Дык я с этим и не спорю. Уязвимость реально критическая. А то, что она два года просуществовала незамеченной - это вообще проходит по разряду "полный ебаный пиздец". С ней может сравниться только уязвимость в phpbb1.7 кажется, которая позволяла получить шелл на любой сервер, где стояла эта говноборда, а она у половины сайтов рунета стояла.
Джентльмен , ты я вижу интересуешься уязвимостями .... и ты же должен понимать ....
Что эта уязвимость существовала незамеченной дня 2 ,а потом люди успешно юзали её 2 года в своё благо ... а потом кто-то поделился инфой с каким-то хуйлом , и он слил всё к ебеням ....
Эта - гораздо хуже. Пхпбб обычно стоял на всяких говносерверах. ОпенССЛ использует подавляющее большинство банков. Почувствуйте разницу, как-бы.
Учти еще тот момент, что процедура обновления софта на продакшне банка - это ёбанный бюрократический пиздец, и может занять месяцы. В течение которых весь стоящий наружу банковский софт будет уязвим для атак.
Я полагаю, в критической ситуации банки обойдутся без формальностей.
Да, команда типа пинга. У тебя с сервером защищенное соединение. И тебе надо знать - оно живо или нет? Как сделать? Вот есть такая фича Hearbeat где была команда типа "спросить что живой" вида: Сервер, скажи слово ЯЖИВ (4буквы)
но по ошибке в этой фиче он отдавал столько букв, сколько реально запросили, и брал он их откуда-то типа из оперативки.
В общем да, но размер запроса ограничен 64К(т.е. все-таки не "сколько угодно"), если я не ошибаюсь. Хотя этого более чем достаточно.
В протоколе SSL идет проверка на разрыв соединений "heartbeat" (сердцебиение). Клиент опрашивает сервер на разрыв соединения и просит вернуть какую-то часть данных для этого. Сервер покорно возвращает, но при этом размер данных он не проверяет и можно запросить больше, чем надо. В этом случае сервер вернет эти данные, взяв их из оперативной памяти.

http://www.computerra.ru/98046/heartbleed-simple/
8 апреля в популярной криптографической библиотеке OpenSSL, использующейся многими веб-сервисами для шифрования передаваемого трафика была обнаружена критическая уязвимость, позволяющая злоумышленникам получать доступ к чужим логинам и паролям от этих самых сервисов.
А теперь ещё раз и более человеческим языком. Начиная с марта 2012 года, когда обновлялся этот компонент, отвечающий за сохранность ваших данных на различных сайтах (включая Skrill), в нём присутствовала дыра, через которую любой компетентный хакер, прознавший о её существовании раньше остальных, мог без шума и пыли тырить конфиденциальные данные типа логинов и паролей от подверженных уязвимости сервисов типа Facebook, Twitter, Gmail, Skrill и множества других (включая популярный VPN-сервис HideMyAss).
Так вот, во вторник (8 апреля) информация о баге была широко освещена в СМИ, когда большинство подсуетившихся уже успели накатить патч и залатать брешь, потому как обнаружили её заметно раньше (один из сотрудников Гугла, кстати) и сообщили разработчикам OpenSSL.
Короче говоря, суть этого поста - предупредить о потенциальной опасности увода аккаунтов на различных сервисах (особенно это касается платёжных систем: Skrill, Neteller) и посоветовать заменить пароли везде, где только можно. И дело тут вот в чём.
Несмотря на то, что те же Skrill поспешно пропатчили свою систему и отбрехались, мол, в Багдаде всё спокойно, стоит сказать: если сегодня дыру залатали - это совсем не значит, что вчера (когда она была ещё открытой) у вас не утащили пароль. Смекаете, да? В общем, бережёного бог бережёт. (источник pokeroff.ru)
дыра и ныне там)
да нет, на тот же линупс быстро вышел апдейт, выпиливающий данную фичу вообще, там вроде надо только 1 библиотеку откатить
А я вот понял, спасибо.
xkcd без этой картинки в комментариях - это как оглаф, в котором никого не выебали.
Прекрасно сказано!
Вообще интересно. Не знал.
ShitFace ShitFace 14.04.201418:48 ответить ссылка 2.1
в слове «шляпа» 500 букв, что неясного?
Точнее в слове шляпа столько букв, сколько я сказал.
Вот для таких, как ты, ватники по безопасности интернета накатили патч :D
Все пошли пробовать?
Уже пофиксили везде давно. Ну, нормальные люди.
Фикс фиксом, а умельцы нашли "обратный Heartbleed". Пруф http://blog.meldium.com/home/2014/4/10/testing-for-reverse-heartbleed
А можно тоже "на пальцах"?
Ну, типа, собирать-то инфу можно в две стороны. Так что любой сервер с https может потенциально собирать всякую инфу с клиента.
Жмых говно
Ага. Зато народ в крупных, пронизанных и связанных бюрократией банках, верещит от ужаса. Там ведь нельзя просто взять и накатить апдейт, не пройдя 9 кругов бюрократического ада.
Ну не знаю, процентов 80% крупных банков пофиксили баг в течение пары часов.
Угу. Еще 10 - в течении пары дней. Остальные - в разные промежутки времени, вплоть до тех, кто до сих пор не пофиксил. А даже 1% крупных банков - это много, это очень много.
плюсую за перевод!
Сначала прочитал «Meg» как «мёд», а не Меган, и долбанулся.
Надеюсь быдлокодер, допустивший этот баг, сейчас выглядит примерно вот так:
ОН ДРОПНУЛ БАЗУ и не делал бекапы
по-твоему любой баг - причина, чтобы автора называть быдлокодером?
кроме того OpenSSL open-source продукт, и пол-интернета пользуются им совершенно не заморачиваясь насчет доната
..но как только там нашли баг - люди, тащащие его практически бесплатно оказались мудилами и быдлокодерами, логичнос
Сделать дыру в протоколе, который подключают дополнительно для повышения защищенности передачи данных. М-да, это надо суметь. А что если ему АНБ приплатило за "случайную" ошибку?
> Сделать дыру в протоколе, который подключают дополнительно для повышения защищенности передачи данных
ну охуеть теперь, то что он предназначен для повышения защищенности говорит о том, что там не может быть ошибок и уязвимостей?
> М-да, это надо суметь
Поддержка этой библиотеки - хобби, им за это практически никто не платит, так что fuck off
> А что если ему АНБ приплатило за "случайную" ошибку?
Новый тренд - к любому багу присобачивать АНБ?
Новости читаешь? АНБ знало о баге и активно его юзало.
предположительно. они же не идиоты это признавать, я так понимаю.
Они и документы Сноудена не признают.
так факты есть, а не сплетни?
На сколько известно мне из хабра, там какой-то умный доктор наук в области матана и прочего, связанного с криптографией. Только вот тот доктор - не совсем девелопер и поэтому допустил такую глупую ошибку, как он
как он говорит*
Я уж думал, коммент в Кличко-стайл...
Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты
ЭФФЕКТ т О&НОЬЛЕНИЯ ПРИМЕРЫ кнопок МЯГКОЕ 0£Н0ЬЛЕНИЕ КНОПКА С 6. <эмд>и ОТПРАВЛЯЕТСЯ ЗАПРОС НА ОБНОВЛЕНИЕ С ПОМОЩЬЮ тАУА5С*|рт ОБЫЧНОЕ О&НОЬЛЕНИЕ ПЕРЕЗАГРУЖАЕТСЯ СТРАНИЦА ЖЕСТКОЕ о&ноьление ОЫ-Г5, СП?1-{); ЗШ ПЕРЕЗАГРУЖАЕТСЯ СТРАНИЦА И КЕШИРОВАННЫЕ ФАЙЛЫ МЕГА ЖЕСТКОЕ 0&Н0&ЛЕНИЕ СТ??1'0-ИУРЕК-
подробнее»

xkcd Смешные комиксы,веб-комиксы с юмором и их переводы it-юмор geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор перевел сам песочница

ЭФФЕКТ т О&НОЬЛЕНИЯ ПРИМЕРЫ кнопок МЯГКОЕ 0£Н0ЬЛЕНИЕ КНОПКА С 6. <эмд>и ОТПРАВЛЯЕТСЯ ЗАПРОС НА ОБНОВЛЕНИЕ С ПОМОЩЬЮ тАУА5С*|рт ОБЫЧНОЕ О&НОЬЛЕНИЕ ПЕРЕЗАГРУЖАЕТСЯ СТРАНИЦА ЖЕСТКОЕ о&ноьление ОЫ-Г5, СП?1-{); ЗШ ПЕРЕЗАГРУЖАЕТСЯ СТРАНИЦА И КЕШИРОВАННЫЕ ФАЙЛЫ МЕГА ЖЕСТКОЕ 0&Н0&ЛЕНИЕ СТ??1'0-ИУРЕК-
УСТАНАВЛИВАТЬ ПРОГРАММЫ СТАЛО ТАК БЫСТРО И ПРОСТО. ЧТО МЕШАЕТ ВООБЩЕ УБРАТЬ УСТАНОВКУ И СДЕЛАТЬ ТЕЛЕФОН, В КОТОРОМ ВСЕ ПРИЛОЖЕНИЯ УЖЕ «УСТАНОВЛЕНЫ», А САМИ ПРОСТО СКАЧИВАЮТСЯ И ЗАПУСКАЮТСЯ НА ЛЕТУ? Я СЧИТАЛ СЕБЯ ГЕНИЕМ, ПОКА НЕ ХОЗНАЛ, ЧТО ИЗОБРЕЛ ВЕБ-СТРАНИЦЫ.
подробнее»

xkcd Смешные комиксы,веб-комиксы с юмором и их переводы xkcd.ru сам перевел и не только сам телефон веб geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор

УСТАНАВЛИВАТЬ ПРОГРАММЫ СТАЛО ТАК БЫСТРО И ПРОСТО. ЧТО МЕШАЕТ ВООБЩЕ УБРАТЬ УСТАНОВКУ И СДЕЛАТЬ ТЕЛЕФОН, В КОТОРОМ ВСЕ ПРИЛОЖЕНИЯ УЖЕ «УСТАНОВЛЕНЫ», А САМИ ПРОСТО СКАЧИВАЮТСЯ И ЗАПУСКАЮТСЯ НА ЛЕТУ? Я СЧИТАЛ СЕБЯ ГЕНИЕМ, ПОКА НЕ ХОЗНАЛ, ЧТО ИЗОБРЕЛ ВЕБ-СТРАНИЦЫ.
НУ И ПОГОДКА ВЫДАЛАСЬ, ДА? И НЕ ГОВОРИ! СЛОЙ СТРУЙНЫХ течений спят ) ДА... I 18-ЧАСОВОЙ ПРОГНОЗ 6ГЗ ОБЕШДЕГ 9Ь0 МИЛЛИБАР КО ВТОРНИКУ. КАК ДУМАЕШЬ, ПОДТВЕРДИТСЯ? что? I ТЯЖЕЛО ПРИХОДИТСЯ МЕТЕОГИКАМ.
подробнее»

xkcd Смешные комиксы,веб-комиксы с юмором и их переводы xkcd.ru перевел сам и не только сам профессиональный юмор погода geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор прогноз погоды

НУ И ПОГОДКА ВЫДАЛАСЬ, ДА? И НЕ ГОВОРИ! СЛОЙ СТРУЙНЫХ течений спят ) ДА... I 18-ЧАСОВОЙ ПРОГНОЗ 6ГЗ ОБЕШДЕГ 9Ь0 МИЛЛИБАР КО ВТОРНИКУ. КАК ДУМАЕШЬ, ПОДТВЕРДИТСЯ? что? I ТЯЖЕЛО ПРИХОДИТСЯ МЕТЕОГИКАМ.
НЕАШ1ЕЕР, ДОЛЖНО БЫТЬ, ХУДШАЯ ДЫРА В БЕЗОПАСНОСТИ ЗА ВСЮ ИСТОРИЮ. ЭТО ТОЛЬКО ПОКА. ТО ЛИ ЕЦЕ БУДЕТ. НУ ПРАВДА, ВЕДЬ ЭТОТ БАГ - НЕ ПРОСТО ОШИБКА ШИФРОВАНИЯ. \ ОН ПОЗВОЛЯЕТ ПОСЕТИТЕЛЯМ ВЕБ-САЙТОВ ПОЛУЧАТЬ С СЕРВЕРА ПРОИЗВОЛЬНОЕ СОДЕРЖИМОЕ ПАМЯТИ. ) это не: только ключи. ЭГО ВЕСЬ ТРАФИК. ПИС
подробнее»

xkcd Смешные комиксы,веб-комиксы с юмором и их переводы xkcd.ru перевел сам и не только сам geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор heartbleed ssh безопасность шифрование

НЕАШ1ЕЕР, ДОЛЖНО БЫТЬ, ХУДШАЯ ДЫРА В БЕЗОПАСНОСТИ ЗА ВСЮ ИСТОРИЮ. ЭТО ТОЛЬКО ПОКА. ТО ЛИ ЕЦЕ БУДЕТ. НУ ПРАВДА, ВЕДЬ ЭТОТ БАГ - НЕ ПРОСТО ОШИБКА ШИФРОВАНИЯ. \ ОН ПОЗВОЛЯЕТ ПОСЕТИТЕЛЯМ ВЕБ-САЙТОВ ПОЛУЧАТЬ С СЕРВЕРА ПРОИЗВОЛЬНОЕ СОДЕРЖИМОЕ ПАМЯТИ. ) это не: только ключи. ЭГО ВЕСЬ ТРАФИК. ПИС
АЛИСА ОТПРАВЛЯЕТ БОБУ СООБЩЕНИЕ С ПРЕДЛОЖЕНИЕМ ГДЕ-НИБУДЬ ВСТРЕТИТЬСЯ. I АГА. НО ЕВА ТОЖЕ ЕГО ЧИТАЕТ И ИДЕТ НА МЕСТО ВСТРЕЧИ. | ПОКА ВСЕ ПОНЯТНО. БОБ ОПАЗДЫВАЕТ, И АЛИСА ВСТРЕЧАЕТСЯ С ЕВОЙ. Я ПРИДУМАЛ, КАК ЗАСТАВИТЬ КОМПЬЮТЕРЩИКОВ СЛУШАТЬ ЛЮБУЮ СКУЧНУЮ ИСТОРИЮ.
подробнее»

xkcd Смешные комиксы,веб-комиксы с юмором и их переводы xkcd.ru перевел сам и не только сам профессиональный юмор geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор безопасность шифрование

АЛИСА ОТПРАВЛЯЕТ БОБУ СООБЩЕНИЕ С ПРЕДЛОЖЕНИЕМ ГДЕ-НИБУДЬ ВСТРЕТИТЬСЯ. I АГА. НО ЕВА ТОЖЕ ЕГО ЧИТАЕТ И ИДЕТ НА МЕСТО ВСТРЕЧИ. | ПОКА ВСЕ ПОНЯТНО. БОБ ОПАЗДЫВАЕТ, И АЛИСА ВСТРЕЧАЕТСЯ С ЕВОЙ. Я ПРИДУМАЛ, КАК ЗАСТАВИТЬ КОМПЬЮТЕРЩИКОВ СЛУШАТЬ ЛЮБУЮ СКУЧНУЮ ИСТОРИЮ.