Пользователей Telegram заражали через RLO-брешь

Исследователи «Лаборатории Касперского» в октябре 2017 года обнаружили, что в Windows-клиенте мессенджера Telegram эксплуатируется RLO-уязвимость. Злоумышленники использовали брешь для рассылки жертвам зараженных файлов. О выявленной проблеме эксперты уведомили разработчиков. На сегодняшний день уязвимость закрыта.

RLO (right-to-left override) — это специальный непечатный символ Unicode, который меняет порядок следующих за ним в строке знаков на обратный, в том числе в именах файлов проводника Windows. В таблице он представлен как U+202E и используется для языков, где слова пишутся справа налево, например арабского или иврита. После применения символ становится невидимым, чтобы не мешать восприятию текста.

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

К примеру, исполняемый вредоносный файл JavaScript имеет расширение js. Автор сначала маскирует название, используя что-нибудь безобидное (photo, picture, meme и т. д.), а потом заставляет Windows «переворачивать» оставшуюся часть имени файла при помощи RLO. Таким образом evil.js сначала превращается в photo_gnp.js, а потом в photo_sj.png. Вредонос при этом не становится картинкой — меняется только его отображение для пользователя, компьютер же читает его так: photo_[U+202E]gnp.js.

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

Злоумышленники, эксплуатирующие RLO-уязвимость в Telegram, преследовали несколько целей. Первая из них — получить удаленный контроль над чужим компьютером. В этом случае в качестве командного протокола загрузчик использовал Telegram API. Вредонос прописывал себя в автозапуск и каждые 2 секунды проверял наличие поступающих от управляющего бота команд, выполнение которых приводило к установке бэкдоров и логгеров.

Другой целью злоумышленников было распространение майнера CryptoNight (csrs.exe), который мог не только добывать Monero, но и отслеживать работающие процессы. При обнаружении среди них диспетчера задач (taskmgr.exe, processhacker.exe) программа временно отключалась, а потом перезапускалась.

Кроме того, преступники выкачивали у жертв локальный кэш Telegram, в котором содержались, как правило, личные документы пользователя: аудио- и видеозаписи, текстовые файлы, фотографии.

Исследователи считают, что уязвимость эксплуатировалась как минимум с марта 2017 года. Все зафиксированные случаи произошли в России. На почерк отечественных киберпреступников указывают и многие другие артефакты: например, команды, принимаемые программой — установщиком логгеров, написаны на русском языке.

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

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