Если вы открываете PDF-файлы прямо в браузере — двойным кликом или просто перетаскивая файл в вкладку — вы скорее всего используете встроенный просмотрщик. Это удобно, но именно этот путь часто используют злоумышленники для внедрения вредоносного кода. Разберёмся, как это работает и что с этим делать, без паранойи и лишней теории.
- Почему браузерный PDF-просмотрщик — это риск
- Что конкретно делает злоумышленник
- Варианты защиты: от простого к надёжному
- 1. Отключить встроенный просмотрщик в браузере
- 2. Использовать отдельное приложение для просмотра PDF
- 3. Открывать PDF в изолированной среде
- 4. Конвертировать PDF перед открытием
- Сравнение подходов: что и когда использовать
- Что выбрать в зависимости от вашей ситуации
- Частые ошибки, которые оставляют дыры
- Практические рекомендации, которые реально работают
- Что ещё стоит знать о браузерных просмотрщиках
- Итог: что делать прямо сейчас
Почему браузерный PDF-просмотрщик — это риск
PDF — это не просто «картинка документа». Формат поддерживает JavaScript, внедрение медиафайлов, формы, ссылки и даже обращение к внешним ресурсам. Когда вы открываете PDF в браузере, этот файл обрабатывается встроенным движком (PDF.js в Firefox, PDFium в Chrome), который по сути выполняет код из документа в изолированной среде — песочнице.
Песочница ограничивает доступ к файловой системе, но не блокирует всё. Уязвимости в самом движке позволяют:
- выполнить код за пределами песочницы (escape from sandbox);
- получить доступ к памяти браузера и красть данные сессий;
- инициировать сетевые запросы от вашего имени;
- эксплуатировать утечки памяти для обхода защитных механизмов.
Реальные примеры: CVE-2023-26369 в Adobe Acrobat через браузерный плагин, множественные уязвимости в PDFium, которые патчились в 2022–2024 годах. Это не теория — это рабочие векторы атак, которые реально эксплуатировались.
Что конкретно делает злоумышленник
Типичная цепочка атаки выглядит так:
- Злоумышленник создаёт PDF с встроенным JavaScript, который триггерит уязвимость в просмотрщике.
- Файл рассылается по почте, через мессенджеры или размещается на сайте под видом счёта, договора, квитанции.
- Жертва открывает файл в браузере — и в этот момент срабатывает эксплойт.
- Без всяких предупреждений и видимых признаков происходит загрузка и запуск вредоносного ПО.
Ключевой момент: пользователь ничего не замечает. Нет всплывающих окон, нет запросов на разрешение, нет предупреждений. Файл просто открывается — и к тому моменту уже поздно.
Варианты защиты: от простого к надёжному
1. Отключить встроенный просмотрщик в браузере
Самый простой и эффективный шаг — заставить браузер скачивать PDF, а не открывать его самостоятельно. Тогда встроенный движок не запускается автоматически.
В Chrome:
- Откройте
chrome://settings/content/pdfDocuments - Переключите тумблер в положение «Скачивать PDF-файлы вместо автоматического открытия в Chrome»
В Firefox:
- Откройте Настройки → Основные → Приложения (прокрутите вниз до раздела «Приложения»)
- Найдите строку «Portable Document Format (PDF)»
- Выберите «Сохранить файл» вместо «Открывать в 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 в телефоне — там безопасно». Мобильные просмотрщики тоже подвержены уязвимостям. Просто атаки на них менее распространены, потому что телефон — менее интересная цель для массовых атак.
- «Файл маленький, подозрительного ничего нет». Эксплойт может занимать считанные килобайта. Размер файла ни о чём не говорит.
Практические рекомендации, которые реально работают
- Отключите встроенный PDF-просмотрщик во всех браузерах, которыми пользуетесь. Это базовая настройка, которую нужно сделать один раз.
- Поставьте отдельный PDF-ридер и настройте его: отключите JavaScript, отключите автоматическую загрузку внешних ресурсов, заблокируйте выполнение форм.
- Не открывайте PDF из писем — скачайте файл на диск и проверьте его отдельно. Фишинговые письма с вредоносными PDF — один из основных каналов доставки.
- Обновляйте браузер и ридер — включите автоматическое обновление. Большинство эксплойтов нацелены на уже пропатченные уязвимости.
- Если файл вызывает хоть малейшее подозрение — пропустите его через сервис вроде VirusTotal. Это не панацея, но даёт дополнительный слой проверки.
- Настройте браузер так, чтобы он спрашивал, что делать с PDF-файлами, вместо автоматического открытия. Это даёт вам контроль над моментом запуска.
Что ещё стоит знать о браузерных просмотрщиках
Chrome использует движок PDFium (открытый форк кода Foxit). Firefox — PDF.js от Mozilla. Оба проекта активно поддерживаются и патчи выходят регулярно. Но сложность PDF-формата такова, что уязвимости находятся постоянно — это не вопрос «если», а вопрос «когда».
Edge тоже построен на PDFium, поэтому все рекомендации для Chrome применимы и к нему. Safari использует собственный движок WebKit с встроенной поддержкой PDF — он считается менее уязвимым в силу меньшей распространённости атак, но полагаться только на это нельзя.
Итог: что делать прямо сейчас
Вот минимальный набор действий, который займёт у вас 10 минут и закроет основной вектор атаки:
- Откройте настройки браузера и отключите встроенный PDF-просмотрщик — файлы будут скачиваться на диск.
- Установите десктопный PDF-ридер, если у вас его ещё нет.
- В настройках ридера найдите и отключите поддержку JavaScript.
- Запомните: PDF из неизвестных источников — только через проверку или в изолированной среде.
Браузерный просмотрщик PDF — это удобная функция, которая по умолчанию создаёт риск. Отключить его — не паранойя, а разумная гигиена. Пять минут настроек сегодня могут сберечь от серьёзных проблем завтра.
