ArrayKit

Очистка PDF от активного содержимого

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

Очистка PDF от активного содержимого

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

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

Посмотреть, что документ рассказывает о вас

Об инструменте Очистка PDF

PDF — это не только страница, но и небольшая программа. В нём может лежать скрипт, срабатывающий в момент открытия документа, действие, запускающее на машине другую программу, кнопка, отправляющая заполненную форму на адрес по выбору автора, целиком исполняемый файл во вложении и слой XML-формы со своими скриптами. Здесь обходятся все места, где может стоять действие: действие при открытии, триггеры документа, страницы, аннотации и поля формы, закладки, дерево скриптов уровня документа, — и цепочки прослеживаются до конца, поэтому безобидный первый шаг с запуском программы в очереди за ним всё равно попадается. Каждая находка говорит, где она живёт, на что указывает и нужен ли ей клик. Выберите, что убрать, а перезаписанная копия прочитывается из собственных байтов и проверяется снова.

Возможности

  • Десять категорий с оценкой высокой, средней и низкой; высокая и средняя отмечены с самого начала
  • Каждая находка показывает, где стоит, на что нацелена и запускается ли без клика
  • Цепочки действий прослеживаются насквозь, поэтому за невинным первым шагом ничто не спрячется
  • Встроенные файлы с именами программ перечисляются отдельно от обычных вложений
  • Проход по сырым байтам файла по ключевым словам, раскрывающий имена, замаскированные экранированием #xx
  • Очищенная копия загружается и проверяется заново и помечается чистой только тогда, когда ничего не осталось
  • Несколько PDF за раз, со скачиванием по одному или все вместе архивом ZIP
  • Предупреждения о том, что меняет каждое удаление, например форма перестанет считать

Как использовать Очистка PDF

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

Пример

Ввод

invoice_urgent.pdf — unexpected, from a sender nobody recognises

Результат

6 findings: 2 scripts that run on opening, 1 launch action, 1 attachment named invoice.pdf.exe, 1 web link, document information · after sanitizing, the re-scan is clean

Оба скрипта срабатывали в момент открытия документа, без единого клика.

Частые ошибки и устранение неполадок

  • После очистки форма перестала считать суммы. — Её итоги вычислялись скриптом, а скрипты ушли. Запустите снова со снятой отметкой с JavaScript, если арифметика действительно нужна, — помня, что это та самая категория, через которую чаще всего проводят атаку.
  • Зашифрованный PDF проверили, но так и не очистили. — Файл под паролем нельзя перезаписать, пока он не открыт. Сначала снимите пароль «Расшифровать PDF», затем принесите результат обратно сюда.
  • Таблица ключевых слов перечисляет имена, которых нет в находках. — Они отвечают на разные вопросы. Проход по ключевым словам считает имена в сырых байтах, включая те, что лежат в объектах, на которые ничто не ссылается; находки — только то, до чего документ действительно дотягивается.
  • Теперь форма показывает страницу «Please wait…» и больше ничего. — Вся форма жила в слое XFA, а обычные страницы были лишь этой заглушкой. Сохраните слой XFA, если форму нужно заполнить, — и будьте с ним осторожны, потому что он тоже несёт скрипты.

Часто задаваемые вопросы

Что считается активным содержимым в PDF?
Всё, что что-то делает, а не показывает: скрипты, триггеры при открытии, закрытии, сохранении или печати, действия, запускающие программу или отправляющие форму, ссылки, открывающие другой файл, встроенные файлы, слой формы XFA, а также мультимедиа и трёхмерные объекты.
Может ли PDF действительно что-то запустить в момент открытия?
Попытаться может. Действие при открытии и триггеры документа и страницы срабатывают вообще без клика, и именно поэтому они считаются здесь отдельно. Подчинится ли читалка, зависит от её настроек, но инструкция в файле есть в любом случае.
Сломает ли удаление JavaScript форму в документе?
Может сломать. Скрипты считают итоги, форматируют даты и числа и проверяют введённое, поэтому всё это перестанет работать. Сами поля и уже заполненное не тронуты, и этот компромисс расписан до того, как вы согласитесь.
Как убедиться, что очищенная копия действительно чиста?
Потому что это не принимается на веру. Перезаписанные байты загружаются заново как свежий документ и проверяются с нуля, и чистым помечается только файл, в котором вторая проверка ничего не нашла. Цифры, которые вы видите, — результат этого второго чтения.
Почему вложение с именем .exe считается иначе, чем остальные вложения?
Потому что его открытие запускает код, чего не делает ни таблица, ни картинка. Всё, что заканчивается исполняемым расширением — .exe, .js, .bat, .ps1, .vbs и ещё пара десятков, — получает высокую оценку вместо средней и перечисляется отдельно.
Меняет ли очистка вид страниц?
Нет. Содержимое страниц не трогается, поэтому текст, графика и вёрстка переходят без изменений. Исчезает поведение: проигрыватели мультимедиа и ссылки, которым больше нечего делать, убираются, а метаданные уходят только по вашей просьбе.

Связанные инструменты

Другие инструменты: Безопасность

Все инструменты: Безопасность (27) · Все инструменты