0-day уязвимость в Telegram используется для заражения пользователей

0-day уязвимость в Telegram используется для заражения пользователей

0-day уязвимость в Telegram используется для заражения пользователей

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

Уязвимость заключалась в использовании так называемой атаки right-to-left override (RLO). RLO — особый непечатный символ кодировки Unicode, который зеркально отражает направление расположенных далее знаков. Обычно он используется при работе с языками, в которых текст идет справа налево, например, с арабским языком или ивритом. Однако злоумышленники могут его использовать для того, чтобы вводить в заблуждение пользователей: RLO меняет порядок символов в названии файла, а значит, и его расширение. Таким образом жертвы скачивали вредоносное ПО под видом, например, изображения, и сами запускали его, даже не подозревая, что это исполняемый файл.

Эксперты «Лаборатории Касперского» определили несколько целей злоумышленников. Для достижения первой киберпреступники использовали уязвимость для доставки бэкдора. В результате хакеры получали удаленный доступ к компьютеру жертвы. В качестве командного протокола ПО использовало Telegram API. После установки бэкдор работал в скрытом режиме, ничем не обнаруживая себя. При этом он выполнял различные команды злоумышленников, включая дальнейшую установку шпионского ПО.

Вторая цель — уязвимость эксплуатировалась для распространения ПО для майнинга. Используя вычислительные возможности компьютера жертвы, преступники добывали различные криптовалюты, такие как Monero, Zcash, Fantomcoin и другие.

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

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

«Популярность мессенджеров сегодня невероятно высока. Поэтому разработчикам очень важно обеспечивать надежную защиту пользователей, чтобы те не стали легкой мишенью для преступников. Мы нашли сразу несколько сценариев использования уязвимости, через которую, помимо шпионского ПО, распространялись и майнеры, ставшие глобальным трендом, который мы наблюдаем в течение всего периода «криптовалютного бума». Не исключено, что были и другие, более таргетированные сценарии использования этой уязвимости», — отметил Алексей Фирш, антивирусный эксперт «Лаборатории Касперского».

В Linux нашли 19-летнюю дыру: атакующий может добраться до root

В Linux обнаружили новую уязвимость повышения привилегий, получившую имя CIFSwitch. При удачном раскладе обычный локальный пользователь может обмануть механизм CIFS-аутентификации, подсовывать ядру фальшивые запросы и в итоге получить root. Проблема затрагивает системы с уязвимыми связками kernel CIFS и cifs-utils, в первую очередь версии 6.14 и выше.

CIFS нужен Linux для работы с сетевыми шарами: монтировать удалённые папки, читать и писать файлы по сети. Если такая шара использует Kerberos-аутентификацию, ядро Linux обращается к пользовательскому приложению, а cifs-utils выступает посредником.

По словам исследователя Асима Вилади Оглу Манизады, который нашёл и назвал CIFSwitch, ядро запрашивает ключ типа cifs.spnego, после чего стандартная связка keyutils/request-key запускает cifs.upcall от root, чтобы получить или собрать материалы Kerberos/SPNEGO.

Беда в том, что CIFS-подсистема ядра не проверяла, что такие cifs.spnego-запросы действительно пришли от CIFS-клиента ядра. В результате непривилегированный пользователь мог сгенерировать поддельный запрос и запустить штатный процесс аутентификации.

А дальше привилегированный cifs.upcall доверяет полям, которые считает созданными ядром, хотя на деле ими управляет атакующий. Через эти поля можно форсировать переключение namespace, спровоцировать NSS-запрос до сброса привилегий, подгрузить вредоносный NSS-модуль и получить выполнение кода от root.

Манизада отмечает, что баг появился ещё в 2007 году, то есть прожил в экосистеме около 19 лет. При этом эксплуатация не универсальна: нужны подходящая версия ядра, уязвимый cifs-utils, доступные пространства имен пользователей и политики SELinux/AppArmor, которые не ломают атаку на взлёте.

Среди уязвимых систем, в дефолтных конфигурациях эксперт называет:

  • Linux Mint 21.3 / 22.3;
  • CentOS Stream 9;
  • Rocky Linux 9;
  • AlmaLinux 9;
  • Kali Linux 2021.4–2026.1;
  • SLES 15 SP7.

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

RSS: Новости на портале Anti-Malware.ru