Устаревшие обобщения в кибербезопасности: обычный текстовый файл стал оружием для кражи почтовых ящиков

information security

Аналитики информационной безопасности и программные продукты работают в условиях жестких ограничений по времени, ресурсам и пропускной способности. Им приходится постоянно сужать гигантский стог сена "потенциально интересных дел, которые стоит детально изучить сегодня". В этом неизбежном компромиссе между ресурсами и реальными обнаружениями специалисты нередко прибегают к широким обобщениям. Они отфильтровывают целые категории данных, которые по статистике редко используются в реальных атаках. Но со временем такие допущения обязательно приводят к ложноотрицательным результатам, когда настоящая атака проходит незамеченной. История знает немало примеров: вредоносный контент, размещенный на, казалось бы, безобидных URL из списка Alexa Top X, обычные CSV-файлы, использующие функции =cmd в Excel, списки "заведомо хороших" хэшей до того, как компрометация подписантов стала обычной практикой, изображения, эксплуатирующие уязвимые парсеры, а также малоизвестные форматы вроде XDP, PPS или EGG.

Описание

Недавно мир столкнулся с еще одним ярким подтверждением этого правила. Предположительно российский злоумышленник атаковал польскую организацию, используя исключительно вредоносный файл с расширением .txt. Целью атаки была кража электронных писем и адресных книг. Атакующий рассчитывал на то, что жертва просматривает сообщения в Roundcube - популярном веб-клиенте для работы с электронной почтой. Ключевую роль сыграла уязвимость, получившая идентификатор CVE-2023-47272. По всей видимости, её независимо обнаружил исследователь Рене Реме, а злоумышленник использовал её в качестве уязвимости нулевого дня в октябре 2023 года. Разработчики Roundcube исправили дефект в ноябре того же года.

Проблема заключалась в том, что панель предпросмотра сообщений некорректно обрабатывала встроенный JavaScript во "встроенном" текстовом вложении. Речь идёт о межсайтовом скриптинге (XSS). В сообществе специалистов по безопасности долгое время бытовало мнение, что XSS-атаки - это нечто малозначительное по сравнению с удаленным выполнением кода (RCE). Однако данный инцидент наглядно демонстрирует: обычный XSS может привести к полной выгрузке вашего почтового ящика и списка контактов на сервер злоумышленника. Эта кампания имеет много общего с атакой, которую в июне 2023 года подробно описывала команда CERT-UA.

Файл привлек внимание исследователей благодаря фильтру, который мониторил площадку VirusTotal на предмет переписки, подделанной под представителей аналитических центров, неправительственных организаций и государственных структур. Важно, что для данного метода охоты не имеет значения, была ли учётная запись отправителя скомпрометирована или просто подделана - количество срабатываний крайне мало. В этом конкретном случае письмо было отправлено якобы от имени "Центра анализа политики Кавказа" из Азербайджана. Сам текстовый файл содержал доступный для рендеринга HTML-код, что сразу показалось странным: обычно программы для просмотра текста не выполняют сложное содержимое.

После открытия файла в простом текстовом редакторе стала видна изначальная логика атаки. Сначала эксперты предположили, что HTML будет обработан неизвестным офисным приложением, но, изучив полезную нагрузку и заметив заголовки X-Roundcube-Request, они поняли: целью является именно Roundcube. Документ с результатами анализа опубликовала компания, занимающаяся расследованиями киберинцидентов. Если эксплойт срабатывал, в браузере жертвы выполнялся JavaScript-код, который оставался скрытым от пользователя.

При беглом взгляде заметно, что скрипт загружается через событие onerror при попытке отобразить изображение. Установка атрибута src=a гарантирует, что загрузка картинки провалится. Это позволяет обойти механизмы защиты, которые отслеживают загрузку внешнего контента, даже если запрос ведет на несуществующую страницу. Roundcube по умолчанию предупреждает пользователя о внешнем контенте, предотвращая автоматический вызов onerror при ошибке 404. Но злоумышленники, вероятно, учли это и действовали в обход.

Исследователи деобфусцировали ключевые участки кода и выложили их в открытый доступ. Первый запрос (download_url) содержит код для извлечения содержимого почтового ящика. Второй (sql_url) несёт на себе SQL-инъекции и команды для сбора информации о локальном окружении. После получения первого URL злоумышленник извлекает список папок почтового ящика. Из ответа сервера он выбирает строки, отфильтровывая пустые и корзину (Trash). Далее скрипт собирает идентификаторы писем, которые были отправлены после определённой даты - в данном случае после 3 октября 2023 года. Затем для каждого письма при помощи функции viewsource получается его исходный вид в формате RFC 822, то есть полное сообщение со всеми заголовками и вложениями. Наконец, атакующий экспортирует адресную книгу в формате VCF (vCard) и все собранные данные отправляет на сервер управления.

Дополнительно в старых версиях Roundcube существовала уязвимость, позволяющая внедрить код, который считывает значения полей формы. Злоумышленник создаёт невидимую форму с полями для имени пользователя и пароля, присваивает им нужные идентификаторы, через секунду извлекает значение пароля, кодирует его в Base64 и отправляет на сервер. Такая техника направлена на кражу учётных данных, который пользователь мог случайно ввести в доверчиво открывшейся странице. Атакующий также собирает информацию о версиях Roundcube и, в некоторых сценариях, предпринимает попытку SQL-инъекции, чтобы, возможно, получить доступ к базе данных.

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

Индикаторы компрометации

IPv4

  • 45.130.86.4

Domains

  • rcstat.com

Emails

  • victoriabittner@cpac.az

Комментарии: 0