Кража NTLM через PDF

в 12:34, , рубрики: hacker, hackzard, hash, itsec, Malware, PDF, security, windows, информационная безопасность, разработка под windows

Кража NTLM через PDF - 1
Прошло всего несколько дней после того, как было объявлено, что злоумышленники могут использовать уязвимость в MS Outlook, используя OLE, чтобы украсть NTLM-хэш пользователей Windows.

Исследовательская группа Check Point обнаружила, что утечка дайджеста NTLM возможна и с помощью файлов PDF. Атака возможна без какого-либо взаимодействия с пользователем — достаточно просто открыть файл.

По мнению исследователей Check Point, вместо того, чтобы использовать уязвимость в файлах Microsoft Word или обработку RTF-файлов Outlook, злоумышленники используют функцию, позволяющую встраивать удаленные документы и файлы в PDF.

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

Предпосылки

PDF-файл состоит в основном из объектов, вместе с структурой документа, структурой файлов и потоками контента. Существует восемь основных типов объектов:

  • Булевы значения
  • Целые и действительные числа
  • Строки
  • Имена
  • Массивы
  • Потоки
  • Нулевой объект
  • Словари

Словарь — это таблица, содержащая пары объектов, называемых элементами. Первый элемент каждой записи — это ключ, а второй элемент — значение. Ключ должен быть именем, а значением может быть любым видом объекта, включая даже другой словарь.

Страницы документа представлены объектами словаря, называемыми объектами страницы. Объекты страницы состоят из нескольких обязательных и необязательных записей.

Proof of Concept

Запись /AA является необязательной, определяющем действия, которые должны выполняться при открытии страницы (запись /O) или закрытой (запись/C).

Запись /O (/C) содержит словарь действий. Словарь действий состоит из 3 обязательных записей: /S, /F и /D:

  • /S: Описывает тип действия, которое необходимо выполнить. Действие GoTo изменяет представление на указанное место в документе. Типы действий: GoToR, (Go To Remote) и GoToE (Go To Embedded) — оба уязвимые — переходят в другие PDF-файлы.
  • /F: присутствует в GoToR и GoToE и имеет разные значения для каждого из них. В обоих случаях она описывает расположение другого PDF-файла. Тип — спецификация файла.
  • /D: Описывает местоположение, которое необходимо найти внутри документа.

Внедрив вредоносную запись (используя поля, описанные выше + данные SMB-сервера, с помощью «/F»), злоумышленник может заставить жертву открыть созданный PDF-файл, который затем автоматически отправит хэш-файлы NTLM, имя хоста и данные о домене жертвы на, подконтрольный злоумышленнику, удаленный сервер.

Кража NTLM через PDF - 2

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

Кража NTLM через PDF - 3

NTLM дайджест утекает через SMB-трафик и отправляется на удаленный сервер злоумышленника, который может быть дополнительно использован для SMB-Relay атак.

Кража NTLM через PDF - 4

Уязвимые продукты и смягчение последствий атак

Наше расследование привело нас к выводу, что все пользователи PDF файлов в ОС Windows уязвимы и будут раскрывать свои учетные данные NTLM при эксплуатации данной уязвимости.

Раскрытие

Проблема была раскрыта Adobe, которая ответила, как показано ниже, без обозначения CVE или исправлений данной уязвимости:
«Спасибо, что обозначили данный случай. В конце прошлого года Microsoft выпустила дополнительную бюллетень безопасности [0], которая предоставляет клиентам возможность отключить аутентификацию SSO NTLM в качестве метода авторизации для публичных ресурсов. Благодаря этому обновлению, доступному для клиентов, мы не планируем вносить изменения в Acrobat ».

[0] Ссылка

На момент написания данной статьи мы не получили ответа от Foxit.

Автор: hackzard

Источник

Поделиться

* - обязательные к заполнению поля