Слоган статьи: пятничный 13го сбой на Telegram
В пятницу тринадцатого (октябрь 2017г.) мне нужно было зашифровать некоторые секретные данные и залить их на смартфон. Одной из удобных, используемой мной функции, является «буфер обмена» между ПК и гаджетом. Копирую с компьютера данные в Telegram в свой облачный и кэшируемый контакт, открываю себя в Telegram(е) на смартфоне и получаю данные для дальнейшего использования. Такая вот незатейливая опция, ускоряющая упрощающая жизнь. В этом месте и был обнаружен пятничный баг.
Немного из прошлого
Почему я пользуюсь вышеописанным «буфером обмена», а не другим подобным хард-н-хэви способом. Несколько лет назад разработчики транснациональной компании Яндекс открыли весьма удобную фишку вот с такой вот фразы «Сим-Сим откройся».
Нововведение касалось открытия запароленных архивов в web интерфейсе Яндекс почты. Для своего удобства прибегнул к такому маневру: создавал txt с секретными данными, архивировал с применением пароля документ и заливал его на сервер Яндекс почты. При необходимости мгновенного использования персональных данных вне зоны комфорта, например на чужой машине, открывал в браузере приватное окно, открывал почту, открывал архив, вводил пароль доступа, и документ открывается в новой вкладке браузера.
Поработав со своими данными, закрывал приват окно браузера. Сваливал. Удобство заключалось в следующем: не нужно скачивать архив на ПК, где возможно и вовсе архиватор отсутствует, а главное не остаются килобайты данных вне зоны комфорта. Такой подход не обеспечивал 100% защиту цифры (клавиатурные шпионы или эксплойты в системе), а кто и когда-нибудь обеспечивал?!
Окончательное решение при использовании онлайн подхода с псевдозащитой данных, остается за слабым, медлительным, но не предсказуемым поведением человека. Зэ голден мит из фаунд в безопасности/скорости/удобстве. На мой взгляд, такой фокус не проигрывал другим техническим решениям, например Tails(у) на флэшке с persistent storage. И вот спустя пару лет, разработчики Яндекс(а) свернули возможность открытия запароленных архивов в вэб интерфейсе, чтобы всё таки воспользоваться данными из архива необходимо скачивать его в «свое» хранилище. На заданный вопрос техподдержка компании добросовестно ответила отпиской: не пытайся согнуть ложку, это невозможно, ложки нет, это не ложка гнется мол, да, была такая возможность, сейчас нет, почему прикрыли? (из соображений безопасности, руководство сменилось или^(n-1)) и вернут ли такую функцию вновь? – не знаем. Ну нет – так нет. Конкуренция программных продуктов и возможностей в наше время огромная, без эмоций ухожу с транснационального сервиса к гражданину мира.
Следующим секретным полигоном, оказывающим приватные возможности, для использования персональных данных является Telegram. В начале статьи я описал алгоритм работы с данными через продукт братьев Дуровых, добавлю, что после съ... ухода с Яндекс(а) на Telegram, сам же стал использовать в с своих чародейских делах вместо запароленного архива – pgp/gpg шифрование. Справедливости ради сообщаю, что в Яндекс(е) была возможность быстрее удобней работать, чем в мессенджере, с закрытыми данными. В Telegram(е) обеспечить дополнительную информационную безопасность на подмогу приходит стороннее ПО. Для Windows – это gpg4win; Linux — Seahorse; Android – OpenKeychain.
Баг
При работе с персональными данными на Android(е), и последующей тропой через Telegram к цели, ни каких ошибок в encrypt/decrypt данных буфера обмена не было. А вот в пятницу тринадцатого случайно обнаружилась такая ошибка в мессенджере Telegram под OS Windows. При шифровании данных gpg4win (Kleopatra/GPA) в OS Windows, зашифрованное послание отправил в Telegram в свой контакт через буфер обмена copy/paste. На следующий день, бродяжничая в своем смартфоне (на android(е)), скопировал зашифрованный текст из Telegram(а) в ПО OpenKeychain, выбрал свой приватный ключ для расшифровки послания, но приложение тут же выплюнуло «no data to decrypt!». Without panic on Titanic, в чудеса я не верю, стал искать вероломную причину такого поведения гаджета, однако, спустя несколько сот ударов моего сердца, нашел её в другом месте – Telegram for Windows. По шагам воспроизвожу действия, которые в конечном итоге вызвали ошибку в decrypt the data.
- Работаю в OS Windows 7 64 bit. Пишу текст в GPA, который нужно зашифровать, применяю свой публичный ключ, получаю шифр.
- Copy/paste зашифрованное сообщение в блокнот.
- Сверяю шифр GPA vs Notepad. Различий 0 байт.
- Copy/paste зашифрованное сообщение в telegram v. 1.1.23. Визуально сверяю шифр, нет изменений.
- Нажимаю enter и отправляю зашифрованное послание в свой контакт в Telegram. Беглым взглядом сверяю шифр Telegram vs Notepad. Есть различия!
Софт Telegram(а) под OS Windows подменяет знаки: дефис на тире, если перед дефисом был пробел или после дефиса с новой строки идут знакиПодмена дефиса на тире (-----/---—;---—/-----). Должно быть так (-----/-----;-----/-----)
- Ручками правлю тире на дефисы:
Подменённое сообщение
-----BEGIN PGP MESSAGE---—
тело
—---END PGP MESSAGE-----
На исходное сообщение
-----BEGIN PGP MESSAGE-----
тело
-----END PGP MESSAGE----- - Повторно работаю в Android(е), но уже с исправленным шифром. Copy/paste Telegram/OpenKeychain. Последний просит ввести пароль от приватного ключа, ввожу код и бинго! Сообщение расшифровано.
- Пробую копировать в Telegram под Windows другой зашифрованный текст из Блокнота; GPA; Kleopatra — тщетно, подмена дефиса на тире кроется в самой десктопной версии мессенджера. Так как OpenPGP стандартизирован и шифрует так, а не иначе
(-----BEGIN PGP MESSAGE-----
Тело
-----END PGP MESSAGE-----)
для решения проблемы необходимо привлекать техотдел Telegram(а).
Мои действия
Собрал материал и обратился на родном русском языке в техподдержку Telegram(а) через почту, через web форму, через контакт в Telegram. Жду реакции – пока её нет. Ответов от конторы не получал и раньше, как один из примеров, жаловался маркетологам разработчикам на реализацию ползунка прокрутки истории на Android(е). Спрашивал, почему реализован ползунок на гаджете, ни как в десктопной версии Telegram? Напомню, что ползунок на гаджете имеет лишь визуальную функцию в отличие от десктопной версии, у которого прямое назначение «хватать и двигать». С другой стороны, надеюсь, что до разработчиков все же дойдет письмо, и они исправят, то, что я тут немножко покритиковал.
rkn.gov.ru и тот получил разъяснения на свою просьбу. Может быть выходные затянулись у команды Павла, а может отмахнулись, как иногда происходит у Яндекс(а) (привет Ya! Проблему с работой в поисковике Yandex protect на некоторых моделях гаджетов в Opera Mini не решается не решена более месяца). Хотелось бы, чтобы Telegram(щики) поправили баг с подменой знаков. Возможно, снова придется уходить на альтернативный софт к конкурентам, при известной проблеме — шифр править ручками обременительно. WhatsApp и другие подобные инструменты не тестировал на подобную ошибку, предоставляю это дело читателям данной статьи. Выждав пару дней и не получив ответ, решаю выложить публикацию на «Киберхабре».
P.S.: Публикую мою первую статью и мне понравилось.
P.P.S.: В следующей статье «Радио шпионаж, как устаревший действенный метод добычи информации» пойдет речь о самодельном устройстве и его пруф на грани закона.
Автор: dzod