Уязвимость в LibreOffice, позволяющая выполнить код при открытии вредоносных документов
3 августа 2019 года
В офисном пакете LibreOffice выявлена уязвимость ( CVE-2019-9848), которую можно использовать для выполнения произвольного кода при открытии документов, подготовленных злоумышленником.
Уязвимость вызвана тем, что компонент LibreLogo, предназначенный для обучения программированию и вставки векторных рисунков, транслирует свои операции в код на языке Python. Имея возможность выполнить инструкции LibreLogo злоумышленник может добиться выполнения любого кода на языке Python в контексте текущего сеанса пользователя, воспользовавшись предоставляемой в LibreLogo командой "run". Из Python при помощи функции system(), в свою очередь, можно вызвать произвольные системные команды.
LibreLogo является опциональным компонентом, но в LibreOffice по умолчанию предлагаются макросы, дающие возможность вызвать LibreLogo и не требующие при своём выполнении подтверждения выполнения операции и не отображающие предупреждение, даже при включении режима максимальной защиты макросов (выбор уровня "Very High"). Для атаки можно привязать такой макрос к обработчику события, срабатывающему, например, при наведении курсора мыши к определённой области или при активации фокуса ввода на документе (событие onFocus). В итоге, при открытии подготовленного атакующим документа можно добиться скрытого выполнения Python-кода, незаметно от пользователя. Например, в продемонстрированном примере эксплоита при открытии документа без предупреждения запускается системный калькулятор.
Уязвимость без лишней огласки была устранена в обновлении LibreOffice 6.2.5, выпущенном 1 июля, но как оказалось проблема была устранена не полностью (блокирован лишь вызов LibreLogo из макросов) и остаются неисправленными некоторые другие векторы для проведения атаки. Кроме того, проблема не решена в выпуске 6.1.6, рекомендованном для корпоративных пользователей. Полностью устранить уязвимость планируется в выпуске LibreOffice 6.3, ожидаемом на следующей неделе. До выпуска полноценного обновления пользователям рекомендуется явно отключить компонент LibreLogo, который по умолчанию доступен во многих поставках. Частично уязвимость устранена в
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.