Whatsapp можно взломать? Разбираемся с безопасностью в Вотсапе. Профессиональное расследование. Как работает шифрование в WhatsApp, iMessage и других

Что в WhatsApp была найдена проблема, которая в теории позволяет сотрудникам Facebook и другим посторонним лицам читать переписку пользователей. Хотя представители Facebook заявляют, что перехватить сообщения WhatsApp не может никто, исследователь Тобиас Бёлтер (Tobias Boelter) из калифорнийского университета в Беркли с ними не согласен.

Бёлтер рассказал журналистам Guardian, что проблема связана с имплементацией протокола для end-to-end шифрования, который использует мессенджер. Напомню, что end-to-end шифрование WhatsApp строится на протоколе Signal, созданным Open Whisper Systems. Мессенджер генерирует уникальные ключи шифрования, которые и защищают переписку пользователей. Но исследователь установил, что WhatsApp может принудительно сгенерировать новые ключи, к примеру, если пользователь долгое время не появлялся в онлайне или сменил устройство. И об этой особенности мессенджера ранее известно не было.

В итоге возникает странная ситуация: пользователь отправляет сообщение реципиенту, который долгое время находится оффлайне. Сообщение повисает как не отправленное, и за то время, что пользователь находится в оффлайне, WhatsApp успевает сменить ключ шифрования, о чем не знают ни отправитель, ни получатель. В итоге, получив повторно отправленное сообщение, реципиент вообще не узнает о случившемся, а отправитель сообщения получит уведомление о смене ключа шифрования лишь в том случае, если он заранее включил такую опцию в настойках безопасности. Более того, уведомление будет показано уже после повторной отправки сообщения.

По мнению Бёлтера – это серьёзная проблема. «Если правительственное учреждение потребует, чтобы WhatsApp раскрыл данные о переписке пользователей, по сути, доступ может быть предоставлен через смену ключей», - говорит исследователь.

Еще в апреле 2016 года специалист сообщил о найденной уязвимости представителям Facebook. Тогда исследователю ответили, что компания знает о проблеме, назвали эту особенность работы мессенджера «ожидаемым поведением» и сообщили, что исправлять баг (или лучше сказать бэкдор?) в ближайшее время не собираются.

«Имплементация протокола Signal, которую использует WhatsApp, позволяет включить опцию “Показывать уведомления безопасности” (Настройки -> Учетная запись -> Безопасность), которая уведомит вас о том, что код безопасности контакта сменился. Мы знаем, что в основном такое происходит, когда кто-то меняет телефон или переустанавливает WhatsApp. Потому что в большинстве стран мира люди часто меняют устройства и SIM-карты. В данных обстоятельствах мы хотим, чтобы сообщения доходили до получателей, а не терялись в пути.

WhatsApp не предоставляет правительствам “бэкдор” для своих систем и будет бороться с любыми правительственными запросами на создание бэкдоров», - прокомментировал Guardian представитель WhatsApp.

Стоит сказать, что мессенджер Signal, который тоже базируется на одноименном протоколе, не имеет такой проблемы. Если у реципиента сменился ключ шифрования, пока тот находился в оффлайне, отправка сообщения завершится неудачей, а отправитель получит уведомление о смене ключа. Автоматической повторной отправки сообщения Signal не предусматривает – это особенность собственной имплементации, используемой WhatsApp.

«Некоторые могут решить, что данная уязвимость позволяет перехватить только отдельные сообщения, а не все разговоры в целом. Это не так. Нужно учитывать, что сервер WhatsApp способен перенаправлять сообщения, не отображая при этом уведомления “сообщение получено реципиентом” (или двойную галочку), то есть пользователь может этого не заметить. Используя уязвимость, связанную с такой ретрансляцией, позже сервер WhatsApp может восстановить полную копию всего разговора, а не только отдельное сообщение», - объясняет Бёлтер.

Журналисты Guardian отмечают, что ИБ-эксперты и правозащитники уже назвали данную проблему «золотой жилой для силовых структур, огромным предательством доверия пользователей и угрозой свободе слова».

Шифрование для всех пользователей

WhatsApp, дочерняя компания Facebook, включила сквозное шифрование сообщений для всех пользователей своего мессенджера, сообщило издание Wired. Шифрование касается любых данных, будь то текстовые сообщения, изображения, видео, аудио или голосовые звонки, — и работает, в том числе, в групповых чатах.

WhatsApp — самый популярный мессенджер в мире, в котором появилось сквозное шифрование. В мессенджере Telegram Павла Дурова такая функция присутствовала изначально. Активная аудитория Telegram составляет около 100 млн пользователей, тогда как у WhatsApp — около 1 млрд. Единственный сервис, позволяющий обмениваться сообщениями, в котором количество пользователей превышает 1 млрд, это соцсеть Facebook, аудитория которой равна 1,5 млрд человек.

Сквозное шифрование

Сквозное шифрование (end-to-end encryption) подразумевает, что сообщение находится в зашифрованном виде на всем пути следования от отправителя к получателю. Ключ, с помощью которого сообщение можно расшифровать, находится только у адресата. Компания WhatsApp им не владеет, то есть она не сможет передать его властям, даже если они будут на этом настаивать.

Поэтапное внедрение технологии

Шифрование в WhatsApp появлялось поэтапно. В 2014 г. компания оснастила сквозным шифрованием приложение для Android. Таким образом, с 2014 г. пользователи уже обменивались зашифрованными сообщениями, но только в рамках одной платформы.

Сквозное шифрование стало доступно всем пользователям WhatsApp

Теперь же оно стало доступно владельцам устройств на платформах iOS, Windows Phone, Nokia S40, Nokia S60, BlackBerry OS и BlackBerry 10. Для того чтобы воспользоваться новой возможностью, необходимо установить последнюю версию приложения WhatsApp.

Проверка подлинности

Пользователям WhatsApp, установившим последнюю версию клиента, будет доступна опция проверки подлинности собеседника. Для этого нужно будет сравнить цифровой код на своем экране и код на экране собеседника либо позволить собеседнику с помощью камеры на мобильном устройстве считать QR-код с экрана инициирующего соединение пользователя. После этого в чате возникнет пометка, что соединение полностью зашифровано.

WhatsApp стал самым крупным мессенджером со сквозным шифрованием

Используемый протокол

Партером WhatsApp по внедрению новой возможности стала компания Open Whisper Systems, разработчик мобильного приложения Signal — любимого мессенджера Эдварда Сноудена (Edward Snowden), который в 2013 г. передал журналистам большое количество секретных документов, раскрывающих зачастую незаконную деятельность Агентства национальной безопасности США, в котором он работал системным администратором.

Шифрование в Signal — а теперь и в WhatsApp — базируется на протоколе Signal Protocol. Это асинхронный протокол с открытым исходным кодом. Он, в свою очередь, был создан на основе протокола Off-the-Record (OTR) Messaging Protocol. Одно из ключевых свойств OTR — и, как следствие, Signal Protocol, заключается в так называемой «прямой секретности» (forward secrecy), которая еще называется «совершенной прямой секретностью» (perfect forward secrecy).

В отличие, например, от популярного протокола шифрования электронной почты PGP, в котором сообщения шифруются снова и снова одним и тем же публичным ключом, в прямой секретности используются новые ключи для каждой сессии. Поэтому, если некто годами записывает зашифрованный трафик в надежде однажды декодировать его, в случае с прямой секретностью он обречен на провал.

В описании к мессенджеру WhatsApp указано, что он работает по принципу сквозного шифрования. Эта черта считается одним из главных достоинств программы. Но далеко не всем пользователям понятно, что стоит за таким названием. Для многих людей будет логичным вопрос: «Что это - сквозное шифрование WhatsApp?».

Особенности

В классических мессенджерах следующая схема переписки между пользователями: сообщение отправляется с первого устройства на сервера разработчика, а оттуда оно доставляется до адресата. В современных приложениях, к которым относится в Ватсап , она немного изменена.

Теперь сообщение еще до отправки шифруется на смартфоне. На сервер оно приходит не в виде набранного текста, а в форме хаотичных для человека символов. Оттуда сообщение перенаправляется на смартфон или планшет адресата, где дешифруется. Ключом шифрования называется какая-то последовательность символов, определяющая «азбуку» шифра. Это некая форма алфавита. Но в случае Вацапа, ключ уникальный для каждого устройства. Вернее, их два: первый отвечает за преобразование текста при отправке, второй - при получении.

Взломать такую систему возможно только в случае знания этого ключа шифрования WhatsApp. А он записан непосредственно на устройстве пользователя. Такова современная защита в мессенджере.

Настройка сквозного шифрования

Разработчиками WhatsApp не предусмотрено отключение сквозного шифрования. Это упомянуто даже на официальном сайте приложения. Такое решение вполне логично, ведь для пользователей всегда была важна сохранность и безопасность личной информации. А если деактивировать эту функцию, то и защищенность уйдет.

Однако стоит упомянуть, что не все так категорично. Если вы ищете, как убрать сквозное шифрование в Вацапе, то такой способ есть. Достаточно установить на смартфон или планшет старую версию Ватсапа, где данная функция отсутствовала.

Но в таком случае никто не сможет гарантировать, что в ваши переписки не заберутся посторонние люди. При этом нужно учитывать, что для установки старой версий программы нужно будет отключить защиту на мобильном устройстве.

В случае с Android все просто, достаточно активировать режим «Установка с неизвестных источников» в меню настроек разработчика. А вот для iOS потребуется джейлбрейк - вариант взлома - который может привести к поломке iPhone или iPad.

Внимание: на официальной странице WhatsApp отсутствует раздел, где можно найти старые версии. Это значит, что придется загружать приложение со сторонних ресурсов, на которых могут содержаться вирусы.

Зачем шифровать сообщения и звонки?

А именно для этого и нужно шифрование. Этот механизм шифрует все передаваемые данные и даже если кто-то сможет их перехватить — не сможет их прочитать и использовать. О перехвате трафика я немного рассказывал в своей недавней . Шифрование защищает нас от MITM-атак, которую несложно организовать спецслужбам или другим органам просто обратившись к провайдеру. Но если передаваемые данные шифруются — даже если провайдер предоставит доступы — никто не сможет расшифровать данные не имея приватного ключа — вашего или собеседника. О чем и говорится на сайте поддержки Whatsapp:

Как работает шифрование в Whatsapp?

Это означает, что данные даже если и проходят через серверы самого Whatsapp — они там проходят в том же зашифрованном виде. Соответственно никто, кроме участников чата не сможет их прочесть.

Как включить шифрование Whatsapp?

Оно включено по умолчанию, достаточно обновить версию программы, до той, где фича уже включена.

После чего у вас появится такое сообщение в чате, где у обоих участников версия с шифрованием:

Если щёлкнуть по этому сообщению, появится пояснение и кнопка, через которую можно проверить шифрование. При этом понадобится просканировать QR коды на телефонах друг друга. Эта возможность позволяет лишь проверить, на включение и отключение шифрование оно никак не влияет. Более того, отключить его невозможно.

Как происходит шифрование данных в 6 популярных приложениях для обмена сообщениями. И стоит ли этому верить.

О появлении мессенджеров и вопросе конфиденциальности

В былые времена главным средством связи в интернете была электронная почта (достаточно вспомнить эпическую переписку Линуса Торвальдса и Эндрю Таненбаума, и не факт, что кто-то взломал почту одного из них, Линус сам опубликовал переписку в своей книге “Just for Fun”), ни о каком шифровании никто особо не задумывался.

Но это не мешало отдельным индивидуумам производить шифрование/расшифрование писем на локальном компе, зная при этом общий ключ. Но это не было широко распространено, мало кто был в этом заинтересован. Были же времена.

В первой половине 90-х в качестве средств общения большую популярность получили чаты (chat-room). Следует заметить, что их популярность была высокой даже до середины первого десятилетия 21-го века. Уверен, все читатели ресурса знают, а кто-то может помнит чаты, поэтому я не буду на них останавливаться.

ICQ

В 1996-м году появилась ICQ. Она была разработана израильской компанией Mirabilis. Она не была первой и единственной системой мгновенного обмена сообщениями, но благодаря своим достоинствам стала самой популярной, например, в то время разработчики IM-приложений выбирали монетизацию путем их продажи, а ICQ была бесплатной. В то время о шифровании не было и речи.

Для передачи данных использовался проприетарный протокол OSCAR. Два года спустя, Mirabilis была куплена американской компанией AOL и до 2010-го года вместе с мессенджером принадлежала ей. А, в указанном году, права на ICQ были проданы Mail.Ru Group.

После появления ICQ, как грибы после дождя стали появляться конкурирующие системы мгновенного обмена сообщениями. За время жизни ICQ, появилось многочисленное количество, как официальных модификаций, так и неофициальных клиентов, примерами тому служат QIP, Miranda и многие другие. Среди конкурирующих программ, стремящихся потеснить ICQ в 1999-м году вышел MSN Messenger от Microsoft.

Последний стремился стать заменой ICQ-клиенту, используя его протокол, но не получилось, AOL пресекали попытки путем изменения протокола.

Ни о каком шифровании в официальном мессенджере ICQ на то время не могло быть и речи, поскольку в условиях использования оговаривалась возможность использования любых передаваемых между собеседниками данных третьей стороной (компанией AOL) в любых целях. В то же время, альтернативные клиенты могли реализовывать эту возможность.

Это был ХХ век.

О необходимости шифрования данных

Изначально необходимость шифрования появилась не для того, чтобы защитить свои секреты от “большого брата”, а, чтобы защититься от хакеров, перехвата и модификации данных. Пользователи передают не только: “Привет, как дела?” вместе с фотографиями котиков, но, порой, весьма ценную и секретную информацию: сканы личных документов, билеты на самолеты, исходные коды и/или дистрибутивы новых программ/игр/приложений и множество другой конфиденциальной информации.

И юзерам не хотелось бы, чтобы их данные кто-то мог беспрепятственно перехватить и прочитать (особенно жалко исходные коды).

Но подавляющее большинство пользователей по прежнему находились в младенческом неведении, думая: “мои данные никому не нужны” и предполагая, что находятся в безопасности. Но, тут, словно гром среди ясного неба (в 2013-м году) появился Эдвард Сноуден и всех сдал. Короче, он рассказал о том, что спец. службы следят за каждым сообщением, за каждым телефонным звонком, за каждой покупкой в интернет-магазине.

Юзеры, до этого чувствовавшие себя защищенными, оказались на ладони “большого брата”, который способен заглянуть в любые интимные дела. Отсюда началась гонка за шифрованием, точнее продолжилась с новым – удвоенным рвением.

О шифровании

Подавляющее большинство специалистов по информационной безопасности признают сквозное (end-to-end) шифрование наиболее стойким методом защиты информации. Поэтому разработчики систем IM реализуют его в своих продуктах. Кто-то уже реализовал, кто-то на пути к этому. Но со временем оно будет у всех, даже у гигантов индустрии, которые сами не прочь залезть в пользовательские данные.

При end-to-end шифровании ключи, используемые для шифровки и расшифровки информации, генерируются и сохраняются только на конечных узлах переписки, то есть, у ее участников. Серверная сторона не принимает никакого участия в создании ключей, а, следовательно, не имеет к ним доступа, в результате чего, видит только закодированные данные, передаваемые между участниками. Только последние могут раскодировать и прочитать информацию.

Как работает метод сквозного шифрования? Во время начала сеанса связи, на устройстве каждого собеседника генерируются по 2 ключа: открытый и закрытый. Последний используется для расшифровки данных, этот ключ не покидает пределы локального устройства.

Открытый ключ по открытому каналу связи передается собеседнику (одному или всем, в случае, если их несколько). С помощью открытого ключа собеседник может только зашифровать данные, а расшифровать их может только обладатель соответствующего закрытого ключа. Поэтому, не важно, кто перехватит открытый ключ. В результате этого, он сможет только передавать свои зашифрованные данные.

Сгенерировав по паре ключей, собеседники обмениваются открытыми ключами, после чего начинается защищенное общение.

Текст, видео, аудио, файлы после шифровки у отправителя попадают на сервер, где хранятся, пока получатель не будет в состоянии получить данные. После этого, в зависимости от стратегии компании – обладателя сервера, данные либо уничтожаются, либо сохраняются еще на какой-то срок.

Как мы видим: end-to-end шифрование – это хорошо. Для современных средств ИКТ шифрование / расшифровка не будет непосильной задачей, даже не будет сложной задачей. В то же время, если в разговоре участвуют несколько собеседников, тогда, отправляя сообщение, для каждого надо его зашифровать, поэтому от возрастания количества собеседников в равной степени возрастает нагрузка на девайс. Для этого разработчики оптимизируют средства организации групповых разговоров.

Сама идея end-to-end не нова. В 1991-м году Филом Зиммерманом было разработано программное обеспечение для шифрования сообщений и других данных PGP (Pretty Good Privacy). В последующие годы алгоритм и соответствующее ПО усовершенствовались и приобрели дополнительные механизмы.
В 1997-м году компания PGP Inc. предложила инициативу OpenPGP, а в 1999-м участниками движения свободного программного обеспечения на основе открытого стандарта была создана свободная реализация PGP – GnuPG.

Это все к тому, что, так как взлом PGP еще не был зафиксирован, на основе открытой реализации PGP (исходные коды ведь имеются) можно создавать механизмы шифрования, чем, скорее всего, и занимаются разработчики мессенджеров. Не писать ведь с нуля.

Шифрование в средствах IM

В 21-м веке появилось еще больше мессенджеров, мы обратим внимание только на самые популярные – выдержавшие конкурентную борьбу.

Но сначала, об ICQ. Как было сказано выше, в этом приложении данные передаются по протоку OSCAR (текстовые сообщения). В 2008-м году он стал открытым, но по прежнему не свободным. Открытие протокола сделало возможным проведение аудита независимыми исследователями, что является важным пунктом в общем доверии к безопасности сетевых приложений. Многие альтернативные клиенты, в том числе: Miranda, QiP уже довольно давно поддерживают шифрование на основе PGP.

Однако, только весной этого года аська вдобавок к тексту получила end-to-end шифрование по двум фронтам: аудио и видео. Как мы знаем, данный тип шифрования позволяет избежать чтения данных третьим лицом (Mail.ru), но в то же время мы помним: в условиях использования оговаривалась возможность использования любых передаваемых данных.

Skype. Самый используемый

Был создан в 2003-м году люксембургской компанией Skype Limited (преимущественно, эстонскими программистами). До сих пор очень популярный мессенджер, очевидно, по инерции. В 2011 компания Skype Limited была куплена Microsoft’ом. Ранее, последняя хотела купить ICQ, но не получилось, второй шанс с другим мессенджером она не упустила. Skype имеет порты под все распространенные девайсы и операционные системы.

Сначала в Skype использовался оригинальный проприетарный протокол, на который жаловались все спец. службы из-за невозможности взломать его. Но, после покупки Microsoft’ом, прежний протокол был признан устаревшим и заменен MSNP 24-й версии. Для внешних атак протокол является стойким, поскольку используется алгоритм шифрования AES-256. В то же время, если в разговоре участвует собеседник с обычного стационарного или мобильного телефона, тогда его данные не шифруются.

Однако, Microsoft идет спец. службам на уступки, предоставляя запрошенные данные. Следовательно, хотя данные передаются между участниками разговора в зашифрованном виде, на сервере их можно распаковать и прочесть.

После 2003-го года никто, по большому счету, несколько лет мессенджерами не занимался, это было не выгодно, Skype почти каждый год приносил убытки.

WhatsApp. Самый популярный мобильный мессенджер

Так продолжалось до 2009-го года, пока не появился WhatsApp. Первое и весьма продолжительное время (до начала текущего года), приложение было платным. Кроме того, шифрование отсутствовало. Для передачи данных используется открытый и свободный протокол XMPP, основанный на XML, он предполагает передачу не только текстовых сообщений, на так же аудио, видео, двоичных/текстовых файлов.

Работа над безопасностью мессенджера началась в 2012-м году шифрованием текстовых сообщений. Но только весной текущего года было внедрено end-to-end шифрование не только текста, но и голосовых и видео сообщений. Соответственно, после этого серверная сторона потеряла возможность читать пользовательскую информацию.

Благодаря своей бешеной популярности, в 2014-м году сервис WhatsApp был приобретен Facebook’ом. Отчего произошли изменения в плане оплаты.

Viber. Самый популярный мессенджер в России

Затем, в 2010-м году, появился Viber – средство IM и VoIP-телефонии. Но только весной этого года передача любых данных стала зашифрованной. Безусловно, разработчики реализовали сквозное шифрование.

iMessage. Полная безопасность под вопросом

Разработан в 2011-м году. Первый этап шифрования выглядит стойким: сообщение шифруется комбинацией 1280-битного открытого RSA ключа и 128-битным алгоритмом AES. А, подпись осуществляется на основе алгоритма ECDSA (Elliptic Curve Digital Signature Algorithm). Собеседники меняются ключами для создания шифровок. На первый взгляд, все круто.

Как заявляют разработчики, в последних версиях мессенджера используется сквозное шифрование, невозможность сотрудников компании прочитать сообщения находится под вопросом. Как было сказано в разделе “О шифровании”: при отправке данные в зашифрованном виде сохраняются на сервере компании, владеющей этим сервером.

На первый взгляд, ситуация стандартная, но приватный ключ пользователя, остающийся на устройстве, имеет связь с пользовательским паролем. Последний, в свою очередь, имеется у Apple. Каким еще образом происходит восстановление паролей при потере устройства? Из этого вытекает возможность восстановления ключа и расшифровки сообщений.

Telegram. Легендарное шифрование MTProto

Появился в 2013-м году, благодаря тандему братьев Дуровых. Один из последних неустанно распространяет сведения о сверх безопасность своего детища. Поэтому по поводу безопасности Telegram поднято много дебатов. Абсолютная безопасность весьма спорный вопрос.

Перед отправкой данных с помощью транспортного протокола (http, tcp, udp), их шифрованием занимается протокол MTProto – совместная разработка братьев. Он состоит из трех независимых компонентов: компонент высокого уровня, криптографический слой, компонент доставки. Первый – определяет метод, с помощью которого запросы и ответы API конвертируются в двоичный код.

Второй – определяет метод, который шифрует сообщения перед отправкой, и последний – служит для определения способа передачи сообщений (тип транспортного протокола). Во время подготовки пакета, сверху сообщения добавляется внешний заголовок, он представляет собой 64-битный идентификатор ключа, который уникально определяет ключи авторизации пользователя и сервера.

Вместе они представляют 256-битный ключ и столько же разрядный вектор инициализации. Последний используется для шифрования сообщения посредством алгоритма AES-256. В шифруемое сообщение включаются: сессия, ID сообщения, порядковый номер сообщения, соль сервера. Эти данные, в свою очередь, оказывают влияние на ключ сообщения.

Таким образом, осуществляется шифрование сообщения. У Telegram есть возможность использовать сквозное шифрование или позволить серверу видеть данные. Во-первых, второй режим служит, чтобы не привлекать лишнего внимания спец. служб, он включен по умолчанию.

Первый – защищенный режим именуется секретным чатом (Secret room) и работает по всем законам end-to-end шифрования. Пользователь сам по желанию может включить этот режим.

Тем не менее, в обоих случаях, определенное время сообщения хранятся на сервере. В первом случае, их невозможно прочесть, а во втором – можно. Продолжительностью этого времени управляет пользователь.

Итоги

На сегодняшний день в плане безопасности, все многообразие современных мессенджеров мы можем представить двумя категориями: мессенджеры, реализующие полное end-to-end шифрование и вторая категория, это системы для обмена сообщениями, которые только пытаются быть похожими на первую категорию, хотя они шифруют отправляемые данные, на сервере эти данные можно легко прочесть.




Top