Службы информационной безопасности Пакистана столкнулись с изощрённой атакой, нацеленной на сотрудников Управления безопасных городов Пенджаба (PSCA) и Центра координации по предотвращению интернет-преступлений (PPIC3). Злоумышленники, выдавая себя за внутреннего консультанта, отправили письма, в которых упоминался вполне реальный правительственный проект "Безопасная тюрьма". В сообщении содержались два вредоносных вложения: документ Word с макросом и PDF-файл с имитацией ошибки Adobe Reader. Целью было проникновение в инфраструктуру и получение долговременного удалённого доступа. Обычные средства защиты могли не заметить атаку, поскольку для передачи данных использовались легитимные сервисы Microsoft и Discord.
Описание
Фишинговое письмо было оформлено как официальное обращение от имени консультанта с адреса agha.hassan@psca.gop.pk, который мог быть либо скомпрометирован, либо подделан. Письмо имело высокий приоритет и запрос на уведомление о прочтении, чтобы злоумышленники убедились, что жертва открыла сообщение. Векторы атаки оказались дублированы: документ Word и PDF вели на один и тот же вредоносный домен adobe-pdfreader.b-cdn.net, размещённый на платформе BunnyCDN. Такой приём позволяет обходить репутационные фильтры URL, ведь легитимные сети доставки контента редко попадают в чёрные списки.
Как рассказано в отчёте аналитиков, при открытии документа Word "CAD Reprot.doc" (название с очевидной опечаткой) пользователь видел размытое изображение и надпись: "Нажмите "Включить содержимое", если текст не отображается". Это классический приём социальной инженерии. Документ содержал макрос на языке VBA, но его исходный код был удалён - остался лишь так называемый p-код (псевдокод, исполняемый без текста). Такой метод, известный как VBA stomping, позволяет обойти статический антивирусный анализ. Когда жертва разрешала выполнение макросов, запускалась функция DownloadAndExfil. С помощью COM-объекта MSXML (библиотека для работы с XML) происходила загрузка исполняемого файла code.exe с вредоносного домена. После загрузки в временную папку система исполняла команду через cmd, которая запускала этот файл с параметрами для подключения к туннелю Visual Studio Code.
Второй вектор атаки реализовывался через PDF-файл "ANPR Reprot.pdf" (также с опечаткой). Файл содержал поддельное диалоговое окно Adobe Reader с сообщением об ошибке и красной кнопкой "Обновить PDF Reader". Нажатие на кнопку приводило к автоматической загрузке манифеста ClickOnce - технологии развёртывания приложений Microsoft .NET. Манифест Adobe.application, не имевший цифровой подписи, выдавал себя за продукт Adobe. Если бы пользователь согласился на установку, система загрузила бы следующий этап вредоносной программы - Adobe.exe, который, вероятно, должен был выполнить более серьёзные действия. Однако связанный с этим манифестом сайт на платформе Framer (611667-us.framer.website) оказался уже неактивен, поэтому полную цепочку проанализировать не удалось.
Наиболее примечательной особенностью атаки стало использование легитимных сервисов для скрытого управления. Загруженный файл code.exe оказался 64-разрядным исполняемым модулем, который после запуска инициировал подключение к туннелю Visual Studio Code от имени пользователя Microsoft. Это легитимная функция, предназначенная для удалённой разработки, но злоумышленники приспособили её для создания постоянного канала связи. Трафик такого туннеля выглядит как обычная работа с облачными сервисами Microsoft, поэтому сетевые системы обнаружения вторжений (IDS) не видят в нём угрозы. Для оповещения о заражении и передаче захваченных данных использовался веб-хук Discord - специальный URL, который автоматически отправляет сообщения в чат злоумышленников. Таким образом, после успешной компрометации на сервер Discord уходило уведомление с токеном туннеля, что позволяло атакующим немедленно получить доступ.
Последствия атаки могли быть крайне серьёзными. Получение удалённого доступа к инфраструктуре государственных органов безопасности означает возможность кражи конфиденциальной информации, наблюдения за системами видеонаблюдения, нарушения работы критических объектов. Использование сразу двух независимых способов доставки повышает шансы на успех: если жертва не открывает один файл, она может открыть другой. Кроме того, вредоносное ПО оказалось самодельным, не относящимся к известным семействам, что затрудняет его обнаружение традиционными сигнатурами. Анализ в изолированной среде (песочнице) показал 100-процентную вредоносность документа Word, а сам файл code.exe был распознан несколькими антивирусными движками, но всё же часть детектов оказалась невысокой.
Хотя точная дата инцидента не раскрывается, ясно, что атака была тщательно спланирована. Злоумышленники использовали характерные для целевых фишинговых кампаний приёмы: подбор правильного названия проекта, опечатки в именах файлов для имитации спешки или небрежности сотрудника, подделку бренда Adobe и применение легитимных облачных сервисов. Этот случай в очередной раз доказывает, что даже самые современные средства защиты могут не уловить угрозу, если она маскируется под обычную сетевую активность. Организациям стоит обратить внимание на обучение сотрудников распознаванию фишинга, а также на политики, запрещающие включение макросов в документах из непроверенных источников. В данном случае простая бдительность могла бы предотвратить заражение.
Индикаторы компрометации
IPv4
- 79.127.243.187
Domains
- adobe-pdfreader.b-cdn.net
URLs
- https://611667-us.framer.website/
- https://adobe-pdfreader.b-cdn.net/Adobe.application
- https://adobe-pdfreader.b-cdn.net/code.exe
- https://discord.com/api/webhooks/1494021689825038588/8ApOxVy1HcIZJi9iX6CJ-2VsJmAsG3rYJxDSbf_7_0kkw7Me5vOQ7XqEOHxQ2crSkREP
Emails
- agha.hassan@psca.gop.pk
MD5
- 2aee485528c545f092cf6dbcbd96dc60
- 72daea569f23f3dfeee207405d39ceb6
- 9e7c92cb72b5c23bf715772f87f64ec6
- ecfe3c552907e73a4f4b0e27f27be34c
SHA256
- 1d176cc287a3d7d5a2190121a47f923ae3e7b5d48582e23ff12912c3be6b6913
- 49f304eb2772bf194e21c90bf5f1783770020538c80c0ca71afc5f1adcd19e86
- 763ea284945c83e7649eb87938514ed782c01c03f6482347680485b50a283006
- cfc8d36731cb52f14bf6956106a88f0196eb24d889082739dc2ae51b3e425bee
- f3c4a34af566276e95960c156b38aea8a823aa394ed5c43178397be8440b56d4
- ff892c71475c71eccf3ab3f650d7aea30b61c9dc0c39a89b7f3f434469aa8d8b