Где переписываться, чтобы вас не прослушивали: последние мессенджеры с надёжным шифрованием
После европейских терактов в начале ноября, Совет Министров Европейского Союза принял решение, которое обязывает операторов мобильных сервисов WhatsApp, Signal и других создавать мастер-ключи для мониторинга чатов и сообщений с форматом шифрования E2E. Об этом говорится во внутреннем документе, датированном 6 ноября президентом Германии и направленном делегациям стран-членов в Совете, копию которого удалось получить австрийскому новостному изданию ORF.at.
Политики заговорили о запрете на безопасное шифрование этих мессенджеров под предлогом борьбы против «дальнейших шагов терроризма». Президент Франции Эммануэль Макрон обсудил это с канцлером Австрии, а само решение уже согласовано настолько, что его можно будет принять в видеоконференции министров внутренних дел и юстиции в начале декабря без дальнейшего обсуждения.
Впрочем, речь в этом документе идёт далеко не о полном запрете сквозного шифрования, как заявляли журналисты и пользователи социальных сетей, а только о доступе к сообщениям в отдельных случаях, но эти случаи описаны не очень точно. Предельно ясно, что утекший в сеть черновой вариант предложения пока что не имеет никакой юридической силы. Несмотря на это, в нем в первую очередь излагается политическая позиция стран-членов Европейского Союза.
Неудивительно, что ряд экспертов и простых пользователей социальных сетей высказали свое недовольство в отношение предлагаемых изменениях. По словам представителя федерального министерства внутренних дел Германии, «в текущем проекте нет предлагаемых решений или требований по ослаблению систем шифрования». Проект скорее предназначен для того, чтобы стать первым шагом к повышению уровня доверия, более широкому обсуждению этой проблемы и тесному сотрудничеству между политиками, бизнесом и наукой. В некотором плане это вопрос достижения баланса между защитой секретов компании и личных данных и потребностями органов безопасности.
Запретят ли шифрование формата E2EE, и знает ли Евросоюз, что он делает?
Казалось бы, вроде все предельно понятно: пообещать неприкосновенность переписок, а потом разрешить силовикам читать их и запретить “несогласные” мессенджеры на территории Европейского Союза. Но что же говорят независимые эксперты? Европейский исследователь Лукаш Олейник, занимающийся кибербезопасностью, считает, что предлагаемый проект начинается с утверждения полной поддержки ЕС «разработки, внедрения и использования надежного шифрования» — что было бы очень странно, если бы речь шла о полном запрете E2EE.
Кроме того, в проекте обсуждаются «проблемы» общественной безопасности, которые могут исходить от преступников, имеющих легкий доступ к тем же технологиям, которые используются обеспечения безопасности инфраструктуры операторов. Предполагается, что преступники не могут использовать формат шифрования E2EE, чтобы получить доступ к данным пользователей. Даже при наличии дыр в системе это должно быть чрезвычайно сложным или практически невозможным. Интересно то, что в резолюции содержится призыв к обсуждению того, как обеспечить сохранение полномочий компетентных органов безопасности и уголовного правосудия — при обеспечении полного уважения надлежащей правовой процедуры и прав и свобод ЕС (в частности, право на уважение частной жизни и коммуникации, а также право на защиту личных данных).
Получается, что гипотетический закон ждет широкое публичное обсуждение и множество дискуссий среди политиков, активистов, правозащитных активистов и экспертов из области информационной безопасности.
А в каком защищенном мессенджере общаться сейчас?
Думаю, большая часть из читателей уже давно перешла из крупных социальных сетей в Telegram, оставив ВКонтакте для переписок с бывшими одноклассниками или просмотра мемов, а WhatsApp используется для общения с родственниками и получения открыток на праздники, о которых вы даже не знали. Но помимо привычной нам “Телеги” есть еще несколько неплохих, а, главное, безопасных мессенджеров, которыми можно и нужно пользоваться.
Для начала повторим основные требования к “безопасному” мессенджеру:
Рейтинг защищенных мессенджеров 2021
Вам когда-нибудь приходилось шептать другому человеку что-то на ухо, чтобы больше никто не услышал? Скорее всего, это в своей жизни делал каждый. В наши дни многие люди проводят больше времени в переписках в интернете, чем в общении лицом к лицу. Вам когда-нибудь случается говорить, писать или отправлять что-то, что другие не должны услышать, прочитать или увидеть? Если да, то в таком случае лучше всего пользоваться мессенджером с шифрованием.
В этой статье рассказывается о том, зачем нужен защищённый мессенджер. Мы рассмотрим последние версии нескольких защищённых мессенджеров и сервисов, а также важные характеристики при их выборе. У каждого из таких приложений есть достоинства и недостатки, каждое предлагает разный подход к обеспечению безопасности данных.
Зачем нужен защищённый мессенджер
Когда вы с кем-то переписываетесь в интернете, казалось бы, только вы и собеседник участвуете в общении. Однако, как показывают примеры прошлого, существует немало лиц, которое пытаются шпионить за общением людей в интернете. Это может быть корпоративное наблюдение или правительственные организации, которые следят не конкретно за вами, а за всеми подряд.
Если вы не пользуетесь защищённым мессенджером, одна или сразу все категории описанных выше лиц могут легко перехватить ваши данные, если захотят.
Сейчас всё стало ещё хуже, поскольку множество людей работают и учатся из дома из-за пандемии коронавируса. Внутри компаний безопасность обычно выше, чем дома у их сотрудников. Это означает, что рабочая переписка подвергается более серьёзной угрозе, нежели раньше.
По этой причине сейчас наблюдается расцвет новых мессенджеров, которые обещают конфиденциальность, защиту, анонимность или всё сразу. Однако, по той или иной причине, эти обещания чаще всего не выполняются. Некоторые защищают сообщения только во время передачи, оставляя их доступными для чтения сотрудниками самого сервиса. Другие принадлежат компаниям с плохой репутацией в плане защиты конфиденциальности. Некоторые были взломаны АНБ или другими службами разведки разных стран. Однако, ещё не всё потеряно.
Лучшие защищённые мессенджеры с шифрованием
В этой статье описаны протестированные за последние годы мессенджеры. Они считаются лучшими для безопасного обмена сообщениями.
Signal — самое безопасное приложение для обмена сообщениями
Signal является одним из двух мессенджеров, которые выиграли от проблем с конфиденциальностью WhatsApp в начале нынешнего года. Рекомендация пользоваться им от Илона Маска привлекла немало новых клиентов. С тех пор Signal продолжает получать повышенное внимание.
Signal считается самым безопасным мессенджером. Поначалу созданный компанией Open Whisper Systems, он обладает настолько хорошим протоколом шифрования Signal Protocol, что многие другие сервисы, включая гигантов вроде WhatsApp, пользуются протоколами на его основе. Signal применяет сквозное шифрование, у него открытый исходный код, и он полностью бесплатный. Можно создавать исчезающие сообщения, сервис успешно проходил сторонний аудит и публикует отчёты прозрачности.
Мало того, этот сервис рекомендуют одни из наиболее известных людей в мире информационной безопасности, такие как Брюс Шнайер и Эдвард Сноуден.
Однако, есть у Signal и недостатки. Главной проблемой может считаться необходимость ввести номер телефона при регистрации. Это привязывает все действия внутри приложения к вашей персоне, что многим может не понравиться.
Впрочем, есть способы обойти это требования. Или можно пользоваться другими мессенджерами из данного списка.
Плюсы:
Минусы:
Wickr Me — мессенджер с самоудаляемыми сообщениями
Wickr является ещё одним отличным вариантом для безопасного общения. Линейка продуктов Wickr состоит из бесплатных и платных версий для частных лиц и организаций. В данном случае мы говорим о бесплатной частной версии Wickr Me.
Примечание: компания работает над расширением ассортимента своих продуктов. Сейчас предлагается Wickr Pro, вариант для персонального применения или небольших групп с разными платными тарифами. Ещё есть Wickr Enterprise, масштабируемая изощрённая платформа для совместной работы. Существует Wickr RAM для применения в военных целях.
Wickr Me использует тот же код, что и коммерческие предложения этого производителя. Здесь отсутствуют лишь некоторые функциональные возможности. Wickr Me и Signal являются лучшими по безопасности, но у них есть несколько функциональных различий, которые могут стать ключевыми при выборе.
12 защищённых мессенджеров для безопасного общения
Как показывают мировые события, безопасность общения и защита личных данных в любой момент может коснуться каждого. Мессенджеры — одни из наиболее используемых приложений. Именно в них мы делимся самой частной и закрытой информацией. В этой статье я собрал 12 мессенджеров, которые заботятся о защите вашей личности, информации и безопасности общения.
Briar (Android)
Briar был создан для безопасного общения активистов, журналистов и всех остальных, с кого могут спросить за «базар». В отличие от аналогов (например, Telegram), у Briar нет центрального сервера. Вся переписка синхронизируется напрямую между устройствами пользователей.
В случае отсутствия соединения с интернетом Briar может использовать Bluetooth или Wi-Fi. А при наличии сети синхронизация работает на базе Tor. Исходники открыты.
Telegram (Windows, Mac, Android, iOS, веб)
Telegram от товарища Дурова — один из самых популярных мессенджеров на данный момент. И для многих он является синонимом приватности и анонимности. Однако не следует забывать, что возможности защиты ваших данных немного отличаются между платформами. А об анонимности речь вообще не идёт, хотя многие думают, что в Telegram она есть.
В Telegram можно делиться любым привычным контентом, создавать чаты (до 200 000 человек) и каналы. Не стоит забывать про ботов. Есть поддержка голосовых и видео звонков.
По умолчанию переписка не зашифрована, что позволяет синхронизировать общение между клиентами. Для активации end-to-end шифрования нужно использовать специальные секретные чаты.
Ключи шифрования и вся информация по умолчанию хранится на серверах компании. Секретные чаты являются исключением.
Исходный код клиентов открыт, а исходный код серверной части закрыт. Есть возможность использования API для собственных разработок.
Signal (Windows, macOS, Android, iOS)
В продвижении приватных мессенджеров, и в частности Signal, очень помог неуловимый Сноуден. Если он им пользуется и его до сих пор не поймали, значит, можно пользоваться и нам.
Signal создан на основе TextSecure и RedPhone. Здесь можно общаться тет-а-тет и создавать групповые чаты. Никакие данные никогда не передаются на сервера компании. End-to-end шифрование между устройствами включено по умолчанию. Можно совершать голосовые и видео звонки.
Весь исходный код открыт.
Wire (Windows, macOS, Android, iOS, веб)
В мессенджере доступны групповые чаты, видео и аудио звонки, конференции, и всё это с end-to-end шифрованием. Из дополнительных возможностей стоит выделить: возможность поделиться экраном, создание гостевых комнат (для общения с людьми извне), управление командными параметрами, синхронизация между устройствами.
Исходники клиентов и серверной части открыты.
Threema (Android, iOS, веб)
Threema разрабатывали с учётом безопасности данных пользователя. По умолчанию включено end-to-end шифрование, и ваша информация никогда не попадает на сервера компании.
В приложении можно делиться своим местоположением и использовать синхронизацию контактов. Есть голосовые и видео звонки.
Все исходные коды открыты.
Ricochet (Windows, macOS)
Ricochet считается экспериментальным проектом. Его суть заключается в том, что нельзя никому давать ни какие сведения о себе. То есть цель не только в безопасности ваших данных, но и анонимности.
Вы можете начать общение с кем угодно, не раскрывая свою личность и IP-адрес. Никто никогда не сможет узнать, с кем и когда вы переписывались. Серверная часть отсутствует, а соединение происходит с помощью P2P на базе сети Tor.
Ваш логин является секретным адресом сервера. Исходный код мессенджера открыт.
aTalk (Android)
По сравнению с остальными мессенджерами в этой статье, aTalk не такой уж и защищённый. Приложение работает на базе Jabber/XMPP, если вы ещё помните, что это такое. А соединение защищено end-to-end шифрованием с использованием протоколов OMEMO или OTR.
В остальном — это обычный мессенджер.
Session (Windows, macOS, Anroid, iOS)
Session — защищённый и анонимный мессенджер. Для регистрации не требуется указывать почту или номер телефона. Вместо этого вам назначается Session ID.
Серверов у компании нет. Вся работа происходит благодаря пользовательским серверам по всему миру. Вся информация передаётся в обезличенном виде, и никто не может получить к ней доступ или узнать, кому она принадлежит.
End-to-end шифрование, сокрытие IP, групповые чаты, открытые исходники.
Adamant Messenger (Windows, macOS, Android, iOS, веб)
Для работы Adamant Messenger использует блокчейн. Если быть совсем точным, то мессенджер работает на базе Ethereum. В комплекте идёт криптокошелёк для покупки и продажи валюты.
Общение зашифровано end-to-end с помощью таких алгоритмов, как Diffie-Hellman Curve25519, Salsa20, Poly1305, и подписано SHA-256 + Ed25519 EdDSA. Данные никогда не передаются на сервер.
Safe Text (Android, iOS, веб)
Safe Text разрабатывался с целью защиты данных и анонимности своих пользователей. Никто не может узнать, кто, с кем и когда переписывался.
Есть возможность удаления сообщений после отправки на устройствах получателя с поддержкой автоудаления. А снятие скриншотов запрещено приложением.
Status (Android, iOS)
Status работает на базе Ethereum. В приложении есть криптокошелёк и браузер с поддержкой децентрализации. Передача данных осуществляется на основе P2P-соединения между пользователями.
Olvid (Android, iOS)
Никакие данные пользователей Olvid не отправляются на сервер, а для использования приложения не нужно предоставлять личные данные.
Данные передаются через «безопасные каналы». К сожалению, из их описания на сайте мало что понятно.
10 альтернатив Telegram — защищённые мессенджеры на все случаи жизни
Когда речь заходит о защищённых мессенджерах, на ум большинству людей приходит Telegram. На самом деле есть много альтернатив творению Дурова, которыми можно пользоваться как для решения рабочих процессов, так и для обычного общения. Сегодня решил вам показать 10 альтернатив Telegram, о которых вы могли даже не слышать.
VIPole Secure Messenger
Защищённый мессенджер, который начинён всеми возможными инструментами для секретного общения. Тут тебе и менеджер паролей, и изменение голоса при звонках, end-to-end шифрование, контроль подключений, хранение всех данных на своём сервере или даже на устройстве, маскировка IP-адреса, своя клавиатура, автоблокировка, контроль удаления истории переписки, запрет скриншотов и многое-многое другое.
Пользоваться можно бесплатно, но за дополнительную плату в виде подписки вы получаете расширенные возможности. Чем дороже тариф, тем больше кастомизации и дополнительных «фишек» (как в индивидуальном плане, так и в групповом). Тарифы можете посмотреть ниже — на скриншоте.
Wickr
Это один из первых мессенджеров, которые появились после хайпа со Сноуденом. Полностью анонимный, не оставляет никаких следов ни на устройстве, ни на серверах, потому что использует AES 256, ECDH 521, RSA 4096 TLD шифрование (если это вам о чём-то говорит). Сделать скриншот или скопировать какое-то сообщение тоже нельзя. При регистрации вы не используете ни номер телефона, ни почту, а придумываете свой ID и пароль.
У Wickr тоже есть вариант для корпораций. В общем, есть три варианта: Wickr Me, Wickr Pro и Wickr Enterprise. Первый вариант предполагает бесплатное использование до 10 юзеров. Второй и третий вариант — для больших групп с правами админа. По 5 и 10 долларов в месяц, соответственно, придётся платить.
Keybase
Назвать Keybase мессенджером было бы не совсем корректно. Это, скорее, платформа с базой данных открытых ключей, которая позволяет быстро найти человека в разных сервисах, и отправить ему зашифрованное сообщение.
Находит человека в twitter, reddit, facebook, github и hacker news. «Фишка» в том, что для того чтобы отправить человеку сообщение, вам не нужно знать его телефон или e-mail. Отправленное сообщение попадает человеку в личные сообщения. Кроссплатформенный Keybase совершенно бесплатен и приятно порадует кодеров, так как тут всё «дышит» именно этим ремеслом.
В Wire вы можете уловить «нотки» Skype, и это не просто так. Этот мессенджер был разработан людьми, которые делали и популярный видеочат. Если говорить про дизайн, то мессенджер выглядит как хороший глянцевый журнал. Несмотря на всю эту лабуду, имеется сквозное шифрование сообщений всех типов, звонков и так далее.
Приятный бонус — возможность использования как индивидуально, так и внутри компании. Есть вариант использования веб-версии. Из особенностей: разработали технологию сжатия звука SILK, которая переводит звук в специально разработанный формат Opus. Это повышает качество звука даже в условиях плохого интернета.
Threema
В отличие от других тут нет бесплатной версии. Вам придётся заплатить минимум 200 рублей, чтобы начать пользоваться. Но зато не нужно покупать подписку, создавать групповые чаты и общаться там. Есть веб-версия.
Особенностью Threema является его 100% приватность. Даже при регистрации вы не сможете зарегистрироваться при помощи номера телефона, почты или соцсетей. Вам придётся создать два ключа (один публичный, другой приватный). Паролей тоже можно создать несколько, и добавить кодовое слово. При добавлении контакта советуют использовать QR-код.
Dialog messenger
Отечественное решение для внутрикорпоративного общения. Впрочем, не обязательно для общения внутри компании, можно и для индивидуального. Имеет весь набор нужных инструментов. Среди них: групповые чаты, видеосообщения, демонстрация экрана, каналы для быстрого оповещения сотрудников о тех или иных объявлениях. Всё это, естественно, шифруется. При помощи платформы можно собрать свой собственный мессенджер по предпочтениям.
Чадо BlackBerry умело в секретные чаты ещё задолго до ваших Telegram. Все нужные функции мессенджеров имеются и в BBM. Закрытые (секретные) чаты не показывают имя собеседника, не разрешают делать скриншот, самоликвидируются через заданное время.
Несмотря на то что мессенджер фирменный, он кроссплатформенный. Приятный бонус: возможность создавать BBMoji — эмоджи на основе вашего лица.
Signal
Почти все знают, что этот мессенджер — фаворит Эдварда Сноудена. Дизайн приложения и то, как оно реализовано, очень похоже на Telegram. Но при этом у Signal есть одно существенное преимущество — видеозвонки, которых у Telegram до сих пор не имеется. Есть и расширение для Хрома. Ну и кроссплатформенность, конечно.
CoyIM
Люди, которые делали в своё время TorMessenger и которые прекратили его почему-то поддерживать, советуют на замену использовать этот мессенджер. Только подумайте, это люди, которые сделали самый секьюрный браузер — Tor.
Передача данных основана на протоколе XMPP, точнее на его расширении OMEMO (если вам это о чём-то говорит). Из неудобств: нет андроид-версии приложения; все остальные версии на другие платформы качаются напрямую, а не через магазин приложений. Впрочем, это может показаться для кого-то защищённее.
ChatSecure
Ещё один чат, который работает на XMPP. Если в предыдущем случае приложение можно было скачать хоть как-то, тут есть только версия для iOS.
Telegram, Signal, Wickr Me: выбираем самый безопасный мессенджер и разбираемся, существует ли он
Нас часто спрашивают, насколько хорошо те или иные популярные мессенджеры хранят тайны своих пользователей — переписку и пересылаемые файлы, существуют ли риски взлома самих сервисов, да и вообще, есть ли он — идеальный безопасный мессенджер? Команда департамента аудита и консалтинга Group-IB провела сравнительный анализ защищенности трех основных мессенджеров, которых чаще других называют в списке наиболее защищенных. В этой обзорной статье мы представим результаты независимого исследования и дадим свой ответ, какой мессенджер безопаснее.
О каких мессенджерах пойдет речь?
Сразу оговоримся, что отбор мессенджеров для нашего обзора производился на основе анализа существующих открытых исследований защищенности мессенджеров, их популярности в России и их позиционирования на рынке.
По итогам оценки и изучения мнений экспертов отрасли наша команда выбрала три мессенджера, ориентированные на защиту данных пользователей:
Мессенджеры устанавливались на смартфоны с iOS версии 13.3.1 и Android версии 7.1.2, при этом на смартфонах заранее были получены права суперпользователя (jailbreak для iOS и root-доступ для Android).
Как сравнивали мессенджеры?
Теперь вкратце расскажем о методике проведенного анализа защищенности. На рисунке ниже отображена схема формирования оценки по каждому мессенджеру.
Для проведения анализа мы выбрали три основные категории:
В категориях «Архитектура» и «Основная функциональность» оценка складывалась на основе результатов технических (инструментальных) проверок, которые проводились по стандарту OWASP Mobile Security Testing Guide.
В категории «Архитектура» после проведения инструментальных проверок мы получили оценку:
В категории «Основная функциональность» оценивалась корректность работы следующих функций мессенджеров:
Таким образом, максимальная итоговая оценка мессенджера может составить 332 балла и складывается в следующем отношении:
Если вам интересно узнать больше — полную информацию о методологии проведенного анализа защищенности можно найти здесь.
Сразу оговоримся, что в границы нашего исследования не вошли:
И что получилось?
Пришло время поделиться результатами исследования: как видно на диаграмме ниже, наибольшее количество баллов набрал Wickr Me — 304 из 332 возможных:
В таблице отражено, как складывалась оценка каждого мессенджера:
Давайте рассмотрим лидеров в каждой категории и найденные недостатки, после чего немного детальнее рассмотрим каждый из них.
Открытость сообществу
Лидеры в этой категории — Signal и Telegram — набрали одинаковое значение, 10 баллов. Репозитории мессенджеров содержат исходный код приложения и протоколы, доступные для исследования всем желающим. Однако мессенджеры держат закрытой серверную часть приложения, поэтому не получили максимальную оценку.
Wickr Me набрал меньше баллов, так как мессенджер не раскрывает исходный код.
Архитектура
В этой категории есть общий для мессенджеров недостаток — возможность обхода биометрической аутентификации. Эксплуатируя этот недостаток, можно получить доступ к данным пользователя мессенджера.
Лидером в категории «Архитектура» является Wickr Me, который содержит меньше выявленных недостатков, чем у конкурентов.
Signal и Telegram набрали меньше баллов, так как «небезопасно» хранят чувствительные данные мессенджера и профиля пользователя на клиентской стороне.
Из плюсов следует отметить, что все мессенджеры поддерживают E2EE-шифрование передаваемых данных, поэтому оценка Certificate pinning не проводилась.
Основная функциональность
Эту категорию можно расширять до бесконечности, но у нашей команды не было цели исследовать все реализованные фичи, и мы остановились на изучении основной функциональности мессенджеров и их безопасности:
Лидерами данной категории стали Wickr Me и Telegram, набрав максимальное количество баллов.
Версия мессенджера Signal под платформу Android содержит недостаток обработки исключений, который приводит к остановке приложения (то есть мессенджер сразу закрывается), поэтому Signal набрал меньше баллов в этой категории.
Информация о найденных недостатках
Мы описали общие результаты исследования, а теперь перейдем к более технической части. Ниже описаны некоторые детали выявленных недостатков мессенджеров.
Напомним, что все выявленные недостатки были обнаружены на устройствах с root-доступом (или к устройству применен jailbreak).
Первый недостаток, характерный для всех трех мессенджеров (для обеих платформ) — это возможность обхода описанной выше биометрической аутентификации. Дальше мы рассмотрим этот недостаток для каждой платформы.
Возможность обхода биометрической аутентификации
Современные смартфоны поддерживают несколько механизмов аутентификации, и один из возможных — это биометрическая аутентификация при помощи Touch ID или Face ID. При включенной функции биометрической аутентификации устройство сканирует отпечаток пальца (или лицо) и сравнивает с эталонным, заранее занесенным в систему.
У всех приложений, в том числе мессенджеров из нашего списка, для платформы iOS биометрическая аутентификация пользователя осуществляется при помощи Local Authentication Framework с использованием функции evaluatePolicy класса LAContext. Рассмотрим работу биометрической аутентификации немного подробнее.
Как выглядит биометрическая аутентификация для пользователя?
При нажатии на логотип мессенджера отображается диалоговое окно аутентификации, которое запрашивает у пользователя подтверждение действия, например, изменение настроек, покупку и т.д. с помощью биометрической аутентификации (Touch ID/Face ID).
В зависимости от того, как закончился процесс биометрической аутентификации, функция evaluatePolicy возвращает значение («true» или «false»), которое используется далее для управления приложением (например, открывается мессенджер или нет).
В чем заключается недостаток?
У всех исследуемых мессенджеров недостаток реализации биометрической аутентификации состоит в том, что пользователь аутентифицируется лишь на основе результата функции evaluatePolicy («true» или «false») и мессенджер не использует системные механизмы авторизации при доступе к значениям из защищенного хранилища Keychain. Более подробно о локальной аутентификации можно узнать в Mobile Security Testing Guide: здесь и здесь.
Как устранить недостаток?
Один из способов устранить описанный недостаток — создать в защищенном хранилище Keychain запись, которая будет содержать некоторый секрет (например, упомянутый ранее аутентификационный токен). При сохранении записи в Keychain необходимо задать соответствующие атрибуты, например, kSecAccessControlTouchIDAny или kSecAccessControlTouchIDCurrentSet.
Далее, чтобы получить значение этой записи, нужно будет обязательно успешно пройти локальную аутентификацию (в зависимости от заданных настроек доступа в Keychain — с помощью Touch ID/Face ID или ввода парольной фразы). Использование Keychain с необходимыми атрибутами сохраняемых в нем объектов позволит снизить возможность получения доступа к данным мессенджера.
Android
Описанный выше недостаток характерен и для мессенджеров платформы Android, поэтому мы рассмотрим работу биометрической аутентификации немного подробнее.
В приложении для платформы Android биометрическая аутентификация пользователя осуществляется с использованием классов FingerprintManager (не используется с Android 9), BiometricPrompt, BiometricManager.
Процесс биометрической аутентификации для пользователя на платформе Android выглядит абсолютно так же, как и на iOS.
В чем заключается недостаток?
Недостаток реализации биометрической аутентификации исследуемых мессенджеров для платформы Android аналогичен недостатку для iOS — не используются возможности операционной системы и устройства: мессенджеры не запрашивают системную авторизацию пользователя через KeyStore. Таким образом, потенциальный злоумышленник может подменять результат выполнения процедуры аутентификации для ее обхода.
Как устранить недостаток?
Для устранения данного недостатка в приложении рекомендуется использовать симметричные/асимметричные криптографические ключи (класс KeyGenerator), при инициализации которых вызывать функцию setUserAuthenticationRequired (true). Вызов данной функции позволяет получить доступ к значениям соответствующих криптографических ключей только после успешного прохождения процесса локальной аутентификации. Ключи при этом используются для шифрования некоторого секрета, например, аутентификационного токена в приложении.
Хранение чувствительной информации в локальном хранилище
Еще один обнаруженный недостаток — небезопасное хранение чувствительных данных в локальном хранилище — характерен для двух из трех мессенджеров.
Ниже мы привели примеры небезопасного хранения чувствительной информации в локальном хранилище, которые встречаются у некоторых мессенджеров платформы iOS:
Для устранения данного недостатка рекомендуется пересмотреть архитектуру и способы хранения чувствительных данных мессенджера.
Еще раз напомним, что вышеуказанные чувствительные данные мессенджера недоступны без использования root-доступа (или jailbreak) на устройстве.
Некорректная обработка исключений
Данная уязвимость относится только к платформе Android и мессенджеру Signal.
При исследовании основной функциональности мессенджеров осуществлялась отправка файлов разных форматов. В результате был найден один сценарий, при котором отправка файла вызывала остановку в работе мессенджера со следующей ошибкой: «Signal has stopped».
Исследование лог-файлов мессенджера показало, что у мессенджера есть необрабатываемое исключение. Информация об ошибке на внешние серверы не отправляется.
Как устранить недостаток?
Чтобы избавиться от данного недостатка, нужно реализовать проверку формата файла, который пользователь выбирает для отправки.
Ответы разработчиков
Обо всех описанных выше недостатках наша команда сообщила разработчикам мессенджеров. На момент публикации мы получили ответ от двух из трех мессенджеров (Signal и Telegram), третий на наши вопросы так и не ответил.
Разработчики поблагодарили нашу команду за предоставленную информацию и сообщили, что не считают выявленные недостатки уязвимостью, поскольку исследуемые версии мессенджеров используют для защиты данных мессенджера штатные механизмы защиты информации операционной системы. Используемые механизмы не позволяют эксплуатировать выявленные недостатки, а использование на устройстве root-доступа (или jailbreak) остается на усмотрение пользователя.
Тем не менее, мессенджеры могут реализовать проверку наличия root-прав на устройстве и уведомлять об этом пользователя устройства для снижения риска потенциальной компрометации данных.
Вывод
Мы провели сравнительный анализ защищенности трех мессенджеров, позиционирующих себя как безопасные, и выяснили, что все мессенджеры имеют ряд общих недостатков, а у Signal и Telegram также выявлены недостатки реализации хранения чувствительной информации в локальном хранилище.
Несмотря на то, что эксплуатация вышеуказанных недостатков возможна только при наличии физического доступа к смартфону, по оценке нашей команды, все эти недостатки снижают уровень защищенности данных пользователя.
По итогам всех проверок лидером нашего исследования стал мессенджер Wickr Me, который набрал 304 балла и у которого выявлено меньше всего недостатков.
Вывод прост: абсолютно безопасных мессенджеров нет, но мы надеемся, что благодаря этому исследованию вы сможете сохранить конфиденциальность и повысить безопасность своего общения, зная обо всех подводных камнях выбранного вами сервиса.


























