Жизнь после Heartbleed: как обезопасить себя в интернете
Критическая ошибка в криптографическом пакете OpenSSL стала одной из самых серьёзных угроз безопасности за всю историю интернета. На протяжении двух лет через неё можно было выполнять скрытый и совершенно бесследный несанкционированный доступ к большей части узлов Всемирной паутины. Как защитить себя во враждебном сетевом окружении, где разом было утрачено доверие к SSL-сертификатам и защищённому протоколу HTTPS?
Из-за уязвимости Heartbleed под ударом оказались серверы популярных сайтов, компьютеры удалённых пользователей и сетевые устройства сложнее хаба. Компания Cisco
Даже после выхода патча многие узлы в сети останутся уязвимыми неопределённо долго. Авторизация на сайтах и в почте, использование онлайн-банкинга и интернет-магазинов — всё это теперь крайне рискованно. Пользователям следует перестать полагаться исключительно на репутацию брендов и начать самим предпринимать активные шаги. Вот краткий перечень того, как можно повысить свою безопасность:
- проверить домашний роутер по спискам уязвимого оборудования, обновить прошивку (если она вышла после седьмого апреля) или отключить удалённое администрирование;
- выполнять проверку наличия незакрытой уязвимости Heartbleed на всех сайтах, работающих по протоколу HTTPS, перед их посещением;
- сгенерировать стойкие пароли. Их не обязательно хранить или помнить: есть проверенный способ, о котором написано ниже;
- сменить все пароли (а также секретные вопросы для их восстановления);
- перейти (где это технически возможно) на двухфакторную авторизацию.
Теперь обо всех перечисленных этапах подробнее.
Когда стало известно об уязвимости Heratbleed, владельцы сайтов поспешили перейти на исправленную версию пакета OpenSSL и перевыпустили скомпрометировавший себя цифровой сертификат SSL. К сожалению, столь разумно пока среагировали лишь единицы.
Помимо слегка перегруженного сайта
(скриншот сайта filippo.io).
Косвенно убедиться в том, что на конкретном сайте проблема была устранена, можно по дате выдачи его сертификата. Он должен быть сгенерирован после седьмого апреля этого года — дня публикации патча. Сделать такую проверку
Более продвинутая методика тестирования сайта
Коснулась ли ошибка в OpenSSL именно вас, узнать практически невозможно. Её использование не оставляет никаких следов и выглядит совершенно легитимно для всех защитных программ. Поэтому на уровне пользователя в таких случаях срабатывает универсальное правило смены всех паролей доступа.
Здесь возникает новая дилемма: поскольку десятки новых паролей легко забыть, их либо придумывают попроще, либо где-то записывают. Часто это обыкновенная бумажка или текстовый файл.
Брелок — устройство, позволяющее потерять все ключи одновременно.
Более продвинутые пользователи используют менеджеры паролей. В этих программах все данные для авторизации на различных ресурсах хранятся в зашифрованном файловом контейнере, доступ к которому открывается после ввода мастер-пароля — единственного, который в такой схеме приходится помнить.
Главный недостаток метода заключается в том, что, забыв мастер-пароль или повредив базу, пользователь лишается доступа сразу ко всему. Аналогично, в случае удачной атаки на зашифрованный контейнер, такая программа позволяет скомпрометировать все ваши пароли сразу.
К тому же надёжность большинства менеджеров паролей довольно сомнительна. Они сами часто содержат ошибки в реализации криптографических схем или вовсе дублируют данные в открытом виде, забывая удалять их из оперативной памяти и временных файлов. Например, во время аудита программы LastPass 2.0.20 специалисты Sophos
Не хранить, а творить!
Между тем существует универсальный способ превратить легко запоминающийся и даже очевидный пароль в стойкий ко взлому. Основан он на свойствах хеш-функций и весьма удобен в повседневной практике.
Лёгкий пароль должен содержать какую-то очевидную переменную часть. Например, имя сайта. Помимо неё, надо добавить что-то уникальное и постоянное, называемое «солью». Пусть в нашем примере это будет число сорок два. Выбираем любую хеш-функцию (как вариант — MD5) и вычисляем её, подставляя в качестве исходных данных наш «солёный» пароль.
Таким образом примитивный пароль «vk.com42» превращается в стойкий «EE61518029FF5AF634C1A867B064D600», а «Twitter.com42» — преобразуется в «28D1FF535970D9927B099BB0897677CF». Именно эти последовательности из тридцати двух символов и следует использовать для доступа на сайты «ВКонтакте» и Twitter соответственно.
Запоминать их нет смысла, так как легко вспомнить сам метод получения. Нужный пароль отображается сразу после ввода комбинации [имя_сайта + соль] в любом хеш-калькуляторе и переносится через буфер обмена (который потом сразу очищается вручную).
Для Windows это может быть бесплатный
Примечание: Старайтесь использовать только цифры и символы латиницы. Буквы кириллицы имеют разные коды в национальных кодировках. Содержащие их пароли будут по-разному обрабатываться другими хеш-калькуляторами.
Дополнительно можно повысить стойкость таких паролей, внеся в них некоторые модификации. Например, удалить последний знак, поменять местами два первых, использовать одну хеш-функцию и сокращать результат до размера другой... Вариантов масса. Каким будете пользоваться именно вы, узнать практически невозможно.
Когда есть сомнения в надёжности самой схемы авторизации, считают, что атакующая сторона способна перехватить пароль. В таком случае его длина и сложность уже не играют важной роли, а требуется дополнительный уровень защиты.
Двухфакторная схема авторизации подразумевает, что, помимо пароля, легитимный пользователь предоставляет для входа в систему что-то ещё. Это может быть аппаратный ключ, биометрические данные или дополнительный пароль, отправляемый ему после ввода первого по другому каналу связи (например, в СМС).
Именно таким образом уже работает большинство платёжных систем. Есть надежда, что уязвимость Heartbleed простимулирует более широкое внедрение двухфакторных схем аутентификации, обратит внимание пользователей на современные методы защиты данных и поспособствует оздоровлению интернета в целом.