воскресенье, 13 апреля 2014 г.

У компьютеров тоже могут быть проблемы с сердцем.

В своём блоге я стараюсь избегать тем с сильным техническим уклоном, чтобы любым потенциальным читателям могло быть интересно. Но сегодня я немного отклонюсь от этого правила, потому что в Интернете случилась беда, которая затронула каждого пользователя. Я знаю, что многие, кто читают этот блог, не интересуются техническими новостями, именно поэтому я решил простым языком написать, что случилось, и почему это касается каждого.
Я знаю, что от меня ждут интересных историй из Германии, и они будут обязательно. Я впредь постараюсь избегать давать конкретных дат выхода новых постов.
Я вас очень прошу прочитать этот пост и сообщить любым своим знакомым о потенциальной угрозе. Возможно, это спасёт деньги на вашей банковской карте или аккаунт в социальной сети от кражи.
Я знаю, что немного опоздал, но это не имеет значения.
Что случилось?
Когда вы просматриваете разные сайты, обычно вы используете протокол http. Но на некоторых сайтах, если вы были внимательными, ваша ссылка меняется на https://site.com. https - это защищённый http, который использует протокол SSL, который гарантирует конфиденциальность ваших данных. Чтобы это защищённое соединение работало нужна библиотека (код), которая это реализует. На сегодняшний день таких библиотек несколько, но самая популярная - OpenSSL. Это - некоммерческий проект, созданный на добровольных началах. Эту библиотеку используют бесплатно как мелкие конторы, так и большие корпорации, такие как Google или Facebook. 
7 апреля 2014 года была найдена критическая ошибка в коде этой библиотеки, позволяющая атакующему получить часть данных, хранящихся в оперативной памяти сервера: например, логин и пароль, секретный ключ (которым шифровались данные), данные банковских карт и многое другое. В этот же день вышло исправление этой ошибки. Эта уязвимость получила название Heartbleed, и это самая ужасная уязвимость из всех, что когда-либо были найдены на сегодняшний день. Ущерб от неё сравним с бюджетом маленького (а может и больше) государства. Основные особенности:
- применить очень просто (даже я без лишних усилий могу её использовать);
- уязвимость была в библиотеке 2 года;
- не оставляет никаких следов! А это значит, что нельзя достоверно сказать, что именно было украдено, а что нет, равно, как и нельзя установить личности тех, кто крал.
Всё очень плохо?
ДА! Это катастрофа. Про это будут трубить Интернет СМИ ещё не один месяц, масштаб этой проблемы настолько велик, что наверняка даже по ТВ об этом расскажут. Мало того, неизвестно, кто и как долго пользовался этой уязвимостью до момента публикации бага. В день публикации деталей ошибки пошла вторая волна - уязвимость начали использовать все подряд на серверах, где не установили обновление. Из-за особенностей разных сервисов, на некоторых уже украли огромное количество номеров кредитных карт вместе с cvv/expiration date. На Yahoo можно было читать письма других пользователей. Большинство личных кабинетов разных банков были уязвимы. Мало того, уже прошла неделя, а количество серверов, где никто не обновил библиотеку - очень велико.
По моим наблюдениям все компании поделились на 4 группы:
1. Которые исправили ошибку, уведомили всех пользователей письмом с просьбой сменить пароль.
2. Которые исправили ошибку и ничего не сообщили (таких большинство). У вас могут украсть аккаунт или того хуже (деньги) из-за халатности таких администраторов сервисов.
3. Которые забили. Без комментариев.
4. У которых не было уязвимости (например, магазин Amazon/Twitter/Paypal/Microsoft).
Ещё раз повторю, ваши логины и пароли, ваши банковские данные, ваши другие конфиденциальные данные на большинстве сайтов могли быть потенциально украдены. Ими могут воспользоваться чуть позже, когда всё уляжется, и вы даже не узнаете.
Что можно сделать?
В первую очередь перед заходом на сайт (особенно, если это важный для вас сайт, например, личный кабинет банка), проверьте его на https://lastpass.com/heartbleed/. На сегодняшний день, большинство популярных сайтов ошибку исправило. Если сайт уязвим - не вводите на нём никакие данные, а лучше вообще не заходить на него. Убедившись, что на сайте уязвимости нет, меняйте пароли. Если в личном кабинете сайта есть функция "очистить все cookie" или "сбросить все текущие сессии", воспользуйтесь ею. После смены пароля перелогиньтесь. Где можно, включайте двухэтапную аутентификацию. Включите оповещение о любых транзакциях вашего счета по смс, если такое возможно. Ежедневно следите за своим балансом на картах. Если вдруг появились странные транзакции, немедленно звоните в ваш банк, отменяйте транзакцию и закрывайте карту.
Если у вас пароль совпадает на важном сервисе (например, почта) и на некритичном - у меня для вас плохие новости. Меняйте как можно быстрее.
В настройках хрома поставьте эту галочку:
Особенно грустно любителям играть в онлайн-игры. Зачастую администраторы игровых серверов не заботятся ни о должном хранении логинов и паролей игроков, ни об обновлении софта. Так что не удивляйтесь, если на выходных на вашем эльфе 80-ого уровня пропадёт оружие за 100 вполне реальных долларов, а почему-то на свою почту вы не cможете зайти, так как пароль от игрового аккаунта и почты совпадал.
Что делать, если вы не можете запомнить много паролей?
Есть специальные программы - менеджеры паролей. Вы сохраняете все пароли в специальный файл - базу, для открытия которой вам нужен лишь один мастер-пароль. Этот файл обычно хранится у вас на компьютере, и вы можете его синхронизировать без проблем с другими компьютерами (например, через Dropbox [кстати, Dropbox тоже был уязвим!]). Обычно в этих программах есть много интересных фич: например, генератор паролей. Я пользуюсь KeePass, но есть и другие альтернативы. Очень удобно.
Так это что, во всём виноват один программист?
Нет, программист не виноват. Все люди делают ошибки, и программисты - не исключение. Мало того, человек писал код бесплатно, а не за деньги. Мне бы хотелось винить тех, кто пропустил этот код в релиз библиотеки, но это тоже неправильно. Опять же эти люди работали бесплатно. Кого на самом деле надо винить, так это большие компании за то, что пользовались этим бесплатным продуктом и не заказывали дорогостоящие аудиты безопасности этого кода (замечу, что любой код, который связан с кибербезопасностью, надо тестировать с огромной тщательностью).
Только сайты подвержены этой беде?
Нет, почтовые, VPN сервера в том числе и ещё много других.
Долго будут вспоминать этот баг?
Я думаю, что да. Даже через год не на всех серверах закроют эту уязвимость. Да и как можно забыть самый громкий в истории фейл в области безопасности?!
Спасибо, что нашли в себе силы дочитать до конца. Я желаю, что лично вас эта проблема не затронула.
До встречи!

4 комментария:

  1. Например, утечка данных карт при покупке билетов на сайте РЖД :)
    http://tjournal.ru/paper/rzd-cards

    ОтветитьУдалить
  2. Дима, твои побуждения достойны уважения, но на самом деле - никто не позаботиться об этой уязвимости. к примеру - я не хочу заморачиваться. сидючи под открытым WiFi - все мы рискуем открыть свои траффик для третьего лица. а ты говоришь про https....
    так скажи еще за .apk с функциями сжирания траффика в пользу всяких сервисов....
    а вообще - лучше расскажи за Германию, вот что будет интересно!!!

    ОтветитьУдалить
    Ответы
    1. Всё так, людям обычно пофиг, но ровно до того момента, пока они не обнаруживают, что деньги на карте куда-то пропали.
      Про Германию будет на днях :)

      Удалить
    2. и даже после пропажи денег они не станут задумываться так, как стоило бы )) я жду рассказов о Германии )), Дмитрий )

      Удалить