Как не дать браузерному PDF-просмотрщику стать дырой в безопасности

Если вы открываете PDF-файлы прямо в браузере — двойным кликом или просто перетаскивая файл в вкладку — вы скорее всего используете встроенный просмотрщик. Это удобно, но именно этот путь часто используют злоумышленники для внедрения вредоносного кода. Разберёмся, как это работает и что с этим делать, без паранойи и лишней теории.

Почему браузерный PDF-просмотрщик — это риск

PDF — это не просто «картинка документа». Формат поддерживает JavaScript, внедрение медиафайлов, формы, ссылки и даже обращение к внешним ресурсам. Когда вы открываете PDF в браузере, этот файл обрабатывается встроенным движком (PDF.js в Firefox, PDFium в Chrome), который по сути выполняет код из документа в изолированной среде — песочнице.

Песочница ограничивает доступ к файловой системе, но не блокирует всё. Уязвимости в самом движке позволяют:

  • выполнить код за пределами песочницы (escape from sandbox);
  • получить доступ к памяти браузера и красть данные сессий;
  • инициировать сетевые запросы от вашего имени;
  • эксплуатировать утечки памяти для обхода защитных механизмов.

Реальные примеры: CVE-2023-26369 в Adobe Acrobat через браузерный плагин, множественные уязвимости в PDFium, которые патчились в 2022–2024 годах. Это не теория — это рабочие векторы атак, которые реально эксплуатировались.

Что конкретно делает злоумышленник

Типичная цепочка атаки выглядит так:

  1. Злоумышленник создаёт PDF с встроенным JavaScript, который триггерит уязвимость в просмотрщике.
  2. Файл рассылается по почте, через мессенджеры или размещается на сайте под видом счёта, договора, квитанции.
  3. Жертва открывает файл в браузере — и в этот момент срабатывает эксплойт.
  4. Без всяких предупреждений и видимых признаков происходит загрузка и запуск вредоносного ПО.

Ключевой момент: пользователь ничего не замечает. Нет всплывающих окон, нет запросов на разрешение, нет предупреждений. Файл просто открывается — и к тому моменту уже поздно.

Варианты защиты: от простого к надёжному

1. Отключить встроенный просмотрщик в браузере

Самый простой и эффективный шаг — заставить браузер скачивать PDF, а не открывать его самостоятельно. Тогда встроенный движок не запускается автоматически.

В Chrome:

  1. Откройте chrome://settings/content/pdfDocuments
  2. Переключите тумблер в положение «Скачивать PDF-файлы вместо автоматического открытия в Chrome»

В Firefox:

  1. Откройте Настройки → Основные → Приложения (прокрутите вниз до раздела «Приложения»)
  2. Найдите строку «Portable Document Format (PDF)»
  3. Выберите «Сохранить файл» вместо «Открывать в Firefox»

Это не защищает на 100% — вы всё ещё можете открыть файл вручную — но убирает автоматический запуск кода при случайном клике.

2. Использовать отдельное приложение для просмотра PDF

Десктопный PDF-ридер, который не запускает JavaScript или отключает его по умолчанию, — это уже серьёзный уровень защиты. Большинство атак нацелены именно на браузерные движки, потому что они доступны каждому.

Что искать в десктопном ридере:

  • возможность отключить JavaScript в настройках;
  • отсутствие поддержки исполняемых форм (ActiveX, XFA);
  • регулярные обновления — разработчик оперативно выпускает патчи.

3. Открывать PDF в изолированной среде

Если вы получаете PDF-файлы из непроверенных источников — открывайте их в песочнице. Это может быть:

  • виртуальная машина без доступа к основной файловой системе;
  • Windows Sandbox (встроено в Pro-версии Windows 10/11);
  • отдельный браузер в контейнере (Firefox в Firejail на Linux).

Да, это требует привычки. Но для тех, кто работает с документами от незнакомых людей — это разумная практика.

4. Конвертировать PDF перед открытием

Относительно свежий подход: загрузить PDF в онлайн-конвертер, который преобразует его в «плоский» формат без JavaScript, форм и внедрённых объектов. После конвертации вы получаете фактически очищенную копию.

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

Сравнение подходов: что и когда использовать

Подход Уровень защиты Удобство Кому подходит
Открывать PDF в браузере как есть Низкий Максимальное Только для файлов от проверенных источников
Отключить встроенный просмотрщик Средний Высокое Всем, кто хочет минимальную защиту без лишних действий
Десктопный ридер с отключённым JS Высокий Среднее Тем, кто регулярно работает с PDF
Открытие в песочнице / виртуалке Очень высокий Низкое При работе с файлами из непроверенных источников
Конвертация перед открытием Средне-высокий Среднее Когда содержимое важнее оформления

Что выбрать в зависимости от вашей ситуации

Вы получаете PDF только от знакомых людей и организаций — отключите встроенный просмотрщик в браузере. Это займёт минуту и уже закроет основной вектор автоматической атаки.

Вы работаете с документами от клиентов, подрядчиков, госорганов — поставьте десктопный ридер и отключите в нём JavaScript. Открывайте PDF там, а не в браузере.

Вы получаете файлы от неизвестных отправителей — используйте песочницу или конвертацию. Не открывайте такие файлы на основной системе вообще.

Вы в корпоративной среде — задайте вопрос ИТ-отделу, настроена ли групповая политика для PDF. В доменных средах можно принудительно запретить браузерный просмотр через GPO или MDM-профиль.

Частые ошибки, которые оставляют дыры

  • «Я же антивирус поставил». Антивирус ловит уже известные сигнатуры. Эксплойты нулевого дня для PDF-движков он пропустит — это вопрос времени, а не «если».
  • «Я смотрю, что открывается — если что, закрою». Эксплойт срабатывает в момент рендеринга страницы. К тому моменту, как вы увидите подозрительное поведение, код уже выполнен.
  • «Обновления браузера достаточно». Обновления закрывают известные уязвимости, но не все. Плюс между обнаружением дыры и выпуском патча проходят дни или недели.
  • «Я открываю PDF в телефоне — там безопасно». Мобильные просмотрщики тоже подвержены уязвимостям. Просто атаки на них менее распространены, потому что телефон — менее интересная цель для массовых атак.
  • «Файл маленький, подозрительного ничего нет». Эксплойт может занимать считанные килобайта. Размер файла ни о чём не говорит.

Практические рекомендации, которые реально работают

  1. Отключите встроенный PDF-просмотрщик во всех браузерах, которыми пользуетесь. Это базовая настройка, которую нужно сделать один раз.
  2. Поставьте отдельный PDF-ридер и настройте его: отключите JavaScript, отключите автоматическую загрузку внешних ресурсов, заблокируйте выполнение форм.
  3. Не открывайте PDF из писем — скачайте файл на диск и проверьте его отдельно. Фишинговые письма с вредоносными PDF — один из основных каналов доставки.
  4. Обновляйте браузер и ридер — включите автоматическое обновление. Большинство эксплойтов нацелены на уже пропатченные уязвимости.
  5. Если файл вызывает хоть малейшее подозрение — пропустите его через сервис вроде VirusTotal. Это не панацея, но даёт дополнительный слой проверки.
  6. Настройте браузер так, чтобы он спрашивал, что делать с PDF-файлами, вместо автоматического открытия. Это даёт вам контроль над моментом запуска.

Что ещё стоит знать о браузерных просмотрщиках

Chrome использует движок PDFium (открытый форк кода Foxit). Firefox — PDF.js от Mozilla. Оба проекта активно поддерживаются и патчи выходят регулярно. Но сложность PDF-формата такова, что уязвимости находятся постоянно — это не вопрос «если», а вопрос «когда».

Edge тоже построен на PDFium, поэтому все рекомендации для Chrome применимы и к нему. Safari использует собственный движок WebKit с встроенной поддержкой PDF — он считается менее уязвимым в силу меньшей распространённости атак, но полагаться только на это нельзя.

Итог: что делать прямо сейчас

Вот минимальный набор действий, который займёт у вас 10 минут и закроет основной вектор атаки:

  1. Откройте настройки браузера и отключите встроенный PDF-просмотрщик — файлы будут скачиваться на диск.
  2. Установите десктопный PDF-ридер, если у вас его ещё нет.
  3. В настройках ридера найдите и отключите поддержку JavaScript.
  4. Запомните: PDF из неизвестных источников — только через проверку или в изолированной среде.

Браузерный просмотрщик PDF — это удобная функция, которая по умолчанию создаёт риск. Отключить его — не паранойя, а разумная гигиена. Пять минут настроек сегодня могут сберечь от серьёзных проблем завтра.

Оцените статью
PEFile — Безопасность и технологии простым языком