Поэтому, чтобы предотвратить возможный несанкционированный доступ к своим аккаунтам, необходимо периодически менять пароли от учетных записей, особенно хранящих банковские реквизиты и важные персональные данные. В теории такой прием должен свести к минимуму возможный «угон» конфиденциальных сведений о вас: доступ к вашему аккаунту у злоумышленника будет только до следующей смены пароля. Но на практике происходит обратное: уровень защиты учетной записи снижается, и вот почему:
1. Пользователю лень запоминать новый сложный пароль, поэтому он сознательно упрощает его (либо использует старый пароль с незначительным изменением). Если злоумышленникам известен его старый пароль, то, используя маски или вычислив алгоритм, по которому пользователь составляет пароли, они могут без особого труда подобрать новый. При таком отношении к правилам безопасности чем чаще мы вынуждены менять пароли, тем большей уязвимости подвержены.
2. Чтобы не потерять новый пароль, пользователь записывает его на стикере или в обычный текстовой файл, что сводит на нет все аспекты безопасности.
Эксперты в области информационной безопасности рекомендуют менять пароли (по крайней мере важные) каждые 30 дней. Кроме того, ни в коем случае нельзя пренебрегать письмами с рекомендацией смены пароля. Как правило, такие сообщения рассылаются при выявлении попытки несанкционированного доступа к серверам компании-отправителя. При этом важно учитывать, что похожие письма могут рассылать и злоумышленники, чтобы перехватить ваши учетные данные. Руководствуясь правилом «нулевого доверия»[57 - Zero Trust, https://www.kaspersky.ru/blog/zero-trust-security/28780/ (https://www.kaspersky.ru/blog/zero-trust-security/28780/).], не переходите по содержащейся в письме ссылке, а самостоятельно откройте в браузере сайт соответствующей компании и смените пароль в настройках аккаунта. Либо, если вы все же уверены в том, что полученное письмо не фишинговое, внимательно проверьте в строке браузера адрес сайта, на котором требуется сменить пароль. И, разумеется, никогда нельзя повторно использовать ранее применявшиеся пароли.
Ежемесячно запоминать свыше десятка новых сложных паролей – задача далеко не тривиальная. Поэтому, чтобы не упрощать пароли или не применять предсказуемые и/или однотипные алгоритмы, снижая таким образом уровень безопасности, можно воспользоваться специальным программным обеспечением – менеджером паролей (см. врезку).
Менеджеры паролей
Специальные приложения, называемые менеджерами паролей, позволяют хранить учетные данные (логин/пароль) к любому количеству сайтов и программ. Единственное, что вам требуется, это помнить и вводить главный пароль (мастер-пароль) при каждом использовании менеджера – при сохранении пароля (обычно в связке с логином) или его подстановке для аутентификации.
Примечание. Несколько лет назад сотрудниками журнала «Хакер» был проведен тест популярных менеджеров паролей на предмет безопасности[58 - https://xakep.ru/2014/09/08/password-manager-pentest/ (https://xakep.ru/2014/09/08/password-manager-pentest/).]. Все три типа атак (атака на главный пароль; атака на содержимое базы паролей; атака с подменой DLL-файлов) выдержал только один из исследованных менеджеров – KeePass (https://keepass.info (https://keepass.info/)).
Рекомендуется выбирать менеджер паролей с локальным (на устройстве пользователя), а не облачным хранением базы паролей. Это менее удобно, но чуть безопаснее, поскольку возможен перехват трафика или взлом сервера компании-разработчика программы (это не редкость, пример – компания LastPass[59 - https://threatpost.com/lastpass-network-breached-calls-for-master-password-reset/113324/ (https://threatpost.com/lastpass-network-breached-calls-for-master-password-reset/113324/).]). Главный пароль менеджеры вообще не сохраняют, это единственный неудобный набор символов, который вам нужно запомнить (или распечатать на бумаге и хранить в сейфе).
Примечание. Если вы подозреваете, что хакеры или спецслужбы могут вести против вас мощную целенаправленную атаку с использованием весьма больших ресурсов, менеджер паролей противопоказан: он хранит все ваши пароли в одном месте. В этом случае единственный приемлемый для вас вариант – сгенерировать стойкие пароли, записать их на бумаге и хранить в безопасном месте.
Так как современный пользователь интернета не только работает за компьютером, но запускает те же программы и сервисы на мобильных устройствах, менеджеры паролей оснащаются функцией синхронизации. Важно иметь в виду, что многие менеджеры предполагают синхронизацию через облако (например, сервис Google Drive). Это небезопасный вариант, так как база ваших данных может быть скомпрометирована хакерами или владельцами облачного хранилища. Для более надежной защиты рекомендуется использовать менеджеры с непосредственной синхронизацией между устройствами (в KeePass синхронизация возможна через пиринговый сервис Resilio Sync[60 - https://android.mobile-review.com/articles/50451/.]).
Кейс В 2021 г. стало известно о взломе компании Click Studios, разработавшей менеджер паролей Passwordstate, которым пользуется свыше 370 000 сотрудников 29 000 компаний по всему миру. Злоумышленники распространили среди пользователей программы поддельное обновление и заразили их устройства вредоносной программой Moserware. После запуска на компьютере жертвы Moserware передавала данные на серверы злоумышленников, где хранилища паролей могут быть расшифрованы с помощью специальных свободно доступных инструментов[61 - https://xakep.ru/2021/04/26/passwordstate/ (https://xakep.ru/2021/04/26/passwordstate/).].
Ранее менеджер паролей казался гораздо менее надежным инструментом, чем своя голова (плюс собственные алгоритмы). Но мир меняется: количество и масштаб утечек данных в эпоху больших данных только растут. И вчерашние методы могут быть совершенно неэффективны сегодня.
Информация для восстановления пароля должна быть сложна и тщательно защищена
Многие злоумышленники сегодня не пытаются угадать или взломать пароль, а эксплуатируют механизм восстановления забытого пароля и угадывают ответ на ваш «секретный вопрос». Это возможно, так как многие пользователи выбирают шаблонные вопросы вроде «девичья фамилия матери», «первый автомобиль» и «кличка животного». Эту и подобную информацию легко узнать, открыв ваши аккаунты в социальных сетях, заглянув на сайты частных объявлений или даже просто пообщавшись с вашими друзьями или родственниками, а может быть, даже и лично с вами, выдав себя за кого-либо и притупив вашу бдительность. Кроме того, хакер может учесть особенности, характерные для региона или национальности жертвы. Например, в англоязычной среде наиболее вероятным ответом на вопрос «Ваше любимое блюдо?» будет pizza или burger, а в Испании также можно легко подобрать второе имя отца.
Поэтому важно использовать (если допускает система) собственные вопросы, ответы на которые знаете только вы и на которые нельзя ответить односложно. Либо на стандартный вопрос типа «Как назывался ваш первый автомобиль?» вы можете ответить абракадаброй, известной только вам («горбатый из операции Ы» или «черный мерин»). Эта мера способна снизить опасность взлома вашего пароля. В то же время такие ответы сложнее запомнить, и вы можете забыть их и вовсе потерять доступ к аккаунту в случае необходимости восстановления. Тогда придется с помощью документов подтверждать личность в офисе компании – владельца сервиса, что может быть нежелательно при использовании анонимного профиля или даже практически невозможно, например когда сервис электронной почты не имеет офиса в стране, где живет пользователь.
КЕЙС Исследователи компании VPNMentor выяснили, что база данных мобильного коммуникационного приложения (и телефонного справочника) Dalil в Саудовской Аравии с профилями более чем 5 млн пользователей находится в открытом доступе в интернете. База содержит такие данные, как номер, IMEI и прочие данные мобильного телефона; IP-адрес; данные GPS о передвижениях владельца; его имя и фамилию, профессию и др. С помощью этих данных легко идентифицировать пользователя по аккаунтам в социальных сетях и определить его местонахождение. Кроме того, учитывая, что в Саудовской Аравии действуют одни из самых строгих в мире законов о цензуре, допускающие в том числе прослушивание телефонных звонков, правительство этой страны с помощью базы данных Dalil может легко идентифицировать пользователей по их телефонным номерам, а также определить, с кем они контактируют, и в дальнейшем преследовать по политическим мотивам[62 - https://www.vpnmentor.com/blog/dalil-data-breach/ (https://www.vpnmentor.com/blog/dalil-data-breach/).].
В настоящее время вместо ненадежных и довольно неудобных систем восстановления доступа с помощью секретных вопросов все чаще используется многофакторная аутентификация, которая во многих случаях надежнее и, безусловно, удобнее.
Если поддерживается многофакторная аутентификация – она должна быть включена
Хотя многофакторная аутентификация и не обеспечивает 100 %-ной защиты, она все же существенно повышает безопасность приложений и веб-сервисов, где используется. Подробнее об этом методе защиты мы поговорим в соответствующем разделе данной главы.
КЕЙС В 2020 г. хакерами было взломано 1800 учетных записей пользователей игровой платформы Roblox. Злоумышленники оставили в профилях сообщение «Попроси своих родителей голосовать за Трампа в этом году! #MAGA2020» и изменили аватары во взломанных профилях, «надев на них типичную для сторонников Дональда Трампа одежду: красные кепки и футболки с американским флагом и орланом. Пострадавшие не включили двухфакторную аутентификацию, у многих были очень простые или многократно используемые пароли. Позднее выяснилось, что хакеры в процессе взлома использовали paste-сайты[63 - Сайты, позволяющие пользователям обмениваться фрагментами простого текста, а также исходного кода, первым из которых был https://pastebin.com.https://www.echosec.net/blog/what-is-pastebin-and-why-do-hackers-love-it (https://pastebin.com.https//www.echosec.net/blog/what-is-pastebin-and-why-do-hackers-love-it).] с незашифрованными логинами/паролями пользователей Roblox[64 - https://xakep.ru/2020/07/03/pro-trump-hack/ (https://xakep.ru/2020/07/03/pro-trump-hack/).].
Вынос мусора
Тема удаления персональных данных выходит за рамки этой книги. Главное, что вам нужно знать: брошенные аккаунты могут скомпрометировать вас, поэтому не ленитесь удалять их. Можно самостоятельно удалить аккаунт с помощью его настроек или отправить соответствующий запрос владельцам (администраторам) сайта.
Помимо того, что, завладев брошенным аккаунтом, злоумышленник сможет отсылать от вашего имени спам вашим друзьям (и те могут поверить написанному, так как доверяют вам) и другим пользователям, он получит доступ к вашей персональной информации, указанной в учетной записи. Это могут быть как телефоны и адреса, так и платежная информация, если вы приобретали на этом сайте какие-либо услуги или товары. Используя обнаруженный там адрес электронной почты, злоумышленник может попытаться залогиниться на других сайтах с вашими аккаунтами или даже использовать его, чтобы перехватить информацию для восстановления и смены пароля без вашего ведома. Кроме того, узнав пароль от неиспользуемого аккаунта, преступник может взломать другие ваши аккаунты, особенно если вы создаете кодовые фразы по одной и той же схеме. Узнать сервисы, на которых зарегистрирован тот же ваш адрес электронной почты, можно, просканировав утекшие базы данных. Также можно отправить запрос о регистрации нового профиля на том или ином сайте с вашим адресом. Если адрес электронной почты уже зарегистрирован (используется), система оповестит об этом.
Выше перечислены общие принципы подхода к выбору паролей для устройств. Эти советы касаются прежде всего компьютеров и устройств интернета вещей, так как специфика использования мобильных гаджетов не предполагает ввода сложных кодовых фраз, это попросту неудобно. Мобильным устройствам и особенностям их защиты посвящена отдельная глава.
Многофакторная аутентификация
Специалисты по информационной безопасности давно пришли к выводу, что пароли не обеспечивают должного уровня защиты от несанкционированного доступа. Для защиты от фишинга и подбора паролей разрабатываются специальные алгоритмы многофакторной аутентификации. Вместе с привычной парольной защитой используется второй фактор аутентификации – обычно это одноразовый код, высылаемый через SMS-службы либо по электронной почте или генерируемый специальными приложениями, в том числе на сайтах типа Mos.ru. Такие коды действуют или определенное время, или до момента ввода пользователем (или отправки/генерации нового кода), поэтому их кража бесполезна. Но поскольку человеку трудно запоминать и придумывать одноразовые пароли, то требуются дополнительные технологии, чтобы многофакторная аутентификация работала корректно.
Примечание. На сайте https://twofactorauth.org (https://twofactorauth.org/) приведен список сайтов, поддерживающих двухфакторную аутентификацию.
С помощью SMS-сообщений
Как следует из названия, при многофакторной аутентификации пользователь проходит два или более этапа «опознания», например для авторизации в системе. На одном из этапов может быть, как обычно, введен пароль (первый и наиболее уязвимый фактор), а на втором – ПИН-код, высланный в SMS-сообщении на зарегистрированный пользователем номер телефона. В этом случае злоумышленнику недостаточно украсть пароль, ему также необходимо получить доступ к устройству, используемому владельцем для дополнительной аутентификации, например смартфону, либо перехватить трафик.
Примечание. ПИН-код может не только отправляться в SMS-сообщении, но и проговариваться роботом при голосовом вызове. Кроме того, ПИН-кодом могут служить последние несколько цифр в номере телефона, с которого пользователь автоматически получает вызов при аутентификации.
Данный способ хоть и повышает уровень защиты, но все-таки небезопасен, так как злоумышленник при наличии достаточного количества ресурсов может дублировать SIM-карту или перехватить сотовый трафик, а вместе с ним и ПИН-код (об этом мы поговорим в соответствующих главах). Кроме того, пользователю приходится указывать на различных сайтах номер своего телефона, тем самым подвергая риску свои персональные данные. Может произойти их утечка, кража, они могут быть собраны коммерческими или государственными организациями, к примеру, с целью их обработки, идентификации владельца или рассылки таргетированной рекламы. А если вы проходите аутентификацию и получаете коды на одном и том же устройстве (например, смартфоне), то в случае кражи устройства двухфакторный метод вообще теряет смысл.
Анонимность и многофакторная аутентификация
К примеру, если на сайте социальной сети вы пользуетесь псевдонимом, включение двухфакторной аутентификации для доступа к сайту вынудит вас раскрыть номер своего мобильного телефона, после чего с помощью оператора сотовой связи можно будет установить вашу личность и связать с ней ваш псевдоним. Если для вас важно сохранять анонимность на определенном сервисе, следует либо пользоваться анонимным мобильным номером (при доступе к которому опять же не светить свой IP-адрес), либо отказаться от многофакторной аутентификации вовсе, что опять же снижает уровень безопасности.
Очевидны неудобства такой системы для пользователя: SMS-сообщение или телефонный вызов он сможет получить, только если смартфон находится в зоне действия сотовой сети. Особенно серьезные трудности могут возникнуть, если пользователь отправится за границу и по организационным или финансовым причинам не сможет использовать ту же SIM-карту, что и в стране постоянного проживания. Так, некоторые сервисы вынуждают клиентов применять исключительно аутентификацию (вторую) с помощью SMS-сообщений, хотя для получения одноразовых кодов можно использовать, например, PUSH-уведомления. Ко всему прочему ПИН-коды могут приходить со значительной задержкой, что замедляет или даже делает невозможной аутентификацию пользователя. К примеру, такая ситуация сложилась на сайте «Госуслуги», после того как в период пандемии COVID-19 правительство РФ ввело в действие меры поддержки населения. На этом ресурсе на ввод ПИН-кода отводится ограниченное количество времени, после чего код становится недействителен. Из-за резкого наплыва посетителей коды отправлялись на устройства пользователей со значительной задержкой, и посетители ресурса не могли аутентифицироваться.
Впрочем, на такой случай крупные ресурсы вроде Google и Facebook предлагают список одноразовых ключей, которые можно распечатать и хранить в безопасном месте. Это не слишком удобно, а также снижает уровень защиты системы, если распечатку носить с собой.
Учитывая небезопасность аутентификации посредством SMS-технологии, Национальный институт стандартов и технологий США (NIST) запретил использовать данный способ в государственных структурах, объявив его «устаревшим»[65 - https://fortune.com/2016/07/26/nist-sms-two-factor/ (https://fortune.com/2016/07/26/nist-sms-two-factor/).]. По словам сотрудников института, хакеры могут при соучастии оператора сотовой связи перевыпустить SIM-карту либо взломать устаревший и уязвимый набор протоколов ОКС-7[66 - Система сигнализации № 7, или ОКС-7 (общий канал сигнализации № 7, англ. Common Channel Signaling) – набор сигнальных телефонных протоколов, используемых для настройки большинства телефонных станций (PSTN и PLMN) по всему миру на основе сетей с канальным разделением по времени. В основе ОКС-7 лежит использование аналоговых или цифровых каналов для передачи данных и соответствующей управляющей информации.], используемый операторами и телефонными компаниями по всему миру. Поэтому было решено запретить использование дополнительного фактора аутентификации с помощью SMS-сообщений и заменить ее более безопасными методами.
С помощью приложений-аутентификаторов
Дополнительный (одноразовый) код может генерироваться специальным приложением-аутентификатором (типа Google Authenticator или Microsoft Authentificator), не требующим подключения к интернету. Приложение генерирует на основе первичного ключа (обычно в виде QR-кода) одноразовый код с ограниченным сроком действия (30–60 секунд). По истечении времени создается новый код. Если злоумышленнику и удастся перехватить один или даже несколько кодов, невозможно предугадать, какой код будет следующим.
Более универсальное и комфортное решение – разработка Authy (https://authy.com (https://authy.com/)). Эта программа может не только генерировать одноразовые коды, но и умеет сохранять полученные сертификаты в облачном хранилище и позволяет копировать их на другие устройства (смартфоны, компьютеры, планшеты и даже «умные» часы). Если одно из устройств будет похищено, вы не потеряете контроль над аккаунтом. Аутентификация в приложении требует ввода ПИН-кода, а ключ, находящийся на скомпрометированном устройстве, можно отозвать[67 - https://www.kaspersky.ru/blog/multi-factor-authentication/8705/ (https://www.kaspersky.ru/blog/multi-factor-authentication/8705/).].
К недостаткам приложений-аутентификаторов можно отнести риск того, что если злоумышленник получит доступ к первичному ключу или взломает сервер, то, зная алгоритмы вычислений, он сможет генерировать пароли самостоятельно. К тому же не всегда можно быть уверенным, что данные из такого приложения не передаются на удаленный сервер, если девайс заражен вредоносным граббером, копирующим изображение на экране (проблема решается запуском аутентификатора на устройстве без доступа к интернету). И, как и в случае с SMS-сообщениями, если для аутентификации и генерации кодов используется одно и то же устройство, защита перестает быть двухфакторной.
Кроме того, если приложение-аутентификатор недоступно, многие сервисы предлагают альтернативные варианты передачи одноразового кода: звонок автоинформатора, отправку кода с помощью SMS-сообщения или даже электронной почты. В таком случае преимущества приложения-аутентификатора теряют весь смысл. Если приложение не работает, а код отправляется в SMS-сообщении, то злоумышленник может получить доступ к телефону жертвы, к примеру, клонировав SIM-карту.
КЕЙС В 2018–2020 гг. в Казани были отмечены многочисленные случаи мошенничества: у абонентов оператора сотовой связи «Мегафон» было похищено свыше 200 000 рублей. Преступления совершались с использованием виртуальных дубликатов SIM-карт и поддельной базовой станции. Проблема заключается в уязвимостях системы безопасности оператора; кроме того, услуга «Мобильные платежи» подключается без согласия абонента[68 - https://journal.tinkoff.ru/kibermoshennichestvo-zhaloby/ (https://journal.tinkoff.ru/kibermoshennichestvo-zhaloby/).],[69 - https://journal.tinkoff.ru/kibermoshennichestvo-sud/ (https://journal.tinkoff.ru/kibermoshennichestvo-sud/).],[70 - https://journal.tinkoff.ru/kibermoshennichestvo-poterpevshie-i-prestupniki/ (https://journal.tinkoff.ru/kibermoshennichestvo-poterpevshie-i-prestupniki/).].
С помощью мобильных приложений
Данный способ объединяет два предыдущих: вы не вводите одноразовый код, а подтверждаете вход с вашего мобильного устройства с установленным приложением службы, к которой вы получаете доступ. На устройстве хранится приватный ключ, который проверяется при каждом входе. Недостатки те же, что и у приложений-аутентификаторов.
С помощью аппаратных устройств
Токены безопасности
Для достижения максимального уровня защиты вместо программных инструментов аутентификации применяются аппаратные – специальные магнитные карты или USB-токены (похожи на flash-накопители без возможности записи данных пользователем). В этом случае помимо пароля преступнику необходим физический доступ к токену. Внутри такого токена находится специальный процессор, генерирующий криптографические ключи. Аутентификация осуществляется автоматически при подключении токена к устройству. Существуют версии токенов как для компьютеров, так и для мобильных устройств, например YubiKey (https://thekernel.com/ru/compare-yubikeys/ (https://thekernel.com/ru/compare-yubikeys/)).
В качестве примера можно рассмотреть систему аутентификации SecurID американской компании RSA. При запросе доступа к системе (сайту или устройству) пользователь вводит свой логин и 4-цифровой ПИН-код (который он помнит), а также токен-код, генерируемый аппаратным устройством (или программным токеном-приложением) и меняющийся каждую минуту (отображается на экране устройства и содержит 6 цифр). Введенная информация в зашифрованном виде передается на сервер, где сравнивается с записями в базе данных всех пользователей. При всей кажущейся безопасности система тем не менее подвержена атакам типа MiTM (Man in the middle – «человек посередине»): злоумышленник может заблокировать для пользователя доступ и подключиться к серверу, пока не будет сгенерирован следующий токен-пароль.
Другой ее недостаток в том, что аппаратные токены поддерживаются не всеми сервисами, а установка и настройка программного обеспечения может представлять сложность для неопытного пользователя. Кроме того, такие устройства недолговечны, часто теряются и неудобны из-за необходимости замены батареек, а в случае кражи токена пользователь должен незамедлительно заблокировать доступ в систему или сам токен (если такая услуга предусмотрена разработчиком), пока злоумышленник не успел воспользоваться им.